2022-03-25 19:00:50

by Stephen Kitt

[permalink] [raw]
Subject: [PATCH] ipmi: use simple i2c probe function

The i2c probe functions here don't use the id information provided in
their second argument, so the single-parameter i2c probe function
("probe_new") can be used instead.

This avoids scanning the identifier tables during probes.

Signed-off-by: Stephen Kitt <[email protected]>
---
drivers/char/ipmi/ipmb_dev_int.c | 5 ++---
drivers/char/ipmi/ipmi_ipmb.c | 5 ++---
drivers/char/ipmi/ipmi_ssif.c | 4 ++--
3 files changed, 6 insertions(+), 8 deletions(-)

diff --git a/drivers/char/ipmi/ipmb_dev_int.c b/drivers/char/ipmi/ipmb_dev_int.c
index 49b8f22fdcf0..db40037eb347 100644
--- a/drivers/char/ipmi/ipmb_dev_int.c
+++ b/drivers/char/ipmi/ipmb_dev_int.c
@@ -299,8 +299,7 @@ static int ipmb_slave_cb(struct i2c_client *client,
return 0;
}

-static int ipmb_probe(struct i2c_client *client,
- const struct i2c_device_id *id)
+static int ipmb_probe(struct i2c_client *client)
{
struct ipmb_dev *ipmb_dev;
int ret;
@@ -369,7 +368,7 @@ static struct i2c_driver ipmb_driver = {
.name = "ipmb-dev",
.acpi_match_table = ACPI_PTR(acpi_ipmb_id),
},
- .probe = ipmb_probe,
+ .probe_new = ipmb_probe,
.remove = ipmb_remove,
.id_table = ipmb_id,
};
diff --git a/drivers/char/ipmi/ipmi_ipmb.c b/drivers/char/ipmi/ipmi_ipmb.c
index ba0c2d2c6bbe..845387d17efb 100644
--- a/drivers/char/ipmi/ipmi_ipmb.c
+++ b/drivers/char/ipmi/ipmi_ipmb.c
@@ -436,8 +436,7 @@ static int ipmi_ipmb_remove(struct i2c_client *client)
return 0;
}

-static int ipmi_ipmb_probe(struct i2c_client *client,
- const struct i2c_device_id *id)
+static int ipmi_ipmb_probe(struct i2c_client *client)
{
struct device *dev = &client->dev;
struct ipmi_ipmb_dev *iidev;
@@ -528,7 +527,7 @@ static struct i2c_driver ipmi_ipmb_driver = {
.name = DEVICE_NAME,
.of_match_table = of_ipmi_ipmb_match,
},
- .probe = ipmi_ipmb_probe,
+ .probe_new = ipmi_ipmb_probe,
.remove = ipmi_ipmb_remove,
.id_table = ipmi_ipmb_id,
};
diff --git a/drivers/char/ipmi/ipmi_ssif.c b/drivers/char/ipmi/ipmi_ssif.c
index 48aab77abebf..9fa8755bbb6a 100644
--- a/drivers/char/ipmi/ipmi_ssif.c
+++ b/drivers/char/ipmi/ipmi_ssif.c
@@ -1619,7 +1619,7 @@ static int ssif_check_and_remove(struct i2c_client *client,
return 0;
}

-static int ssif_probe(struct i2c_client *client, const struct i2c_device_id *id)
+static int ssif_probe(struct i2c_client *client)
{
unsigned char msg[3];
unsigned char *resp;
@@ -2037,7 +2037,7 @@ static struct i2c_driver ssif_i2c_driver = {
.driver = {
.name = DEVICE_NAME
},
- .probe = ssif_probe,
+ .probe_new = ssif_probe,
.remove = ssif_remove,
.alert = ssif_alert,
.id_table = ssif_id,
--
2.27.0


2022-03-30 17:55:27

by Wolfram Sang

[permalink] [raw]
Subject: Re: [PATCH] ipmi: use simple i2c probe function

On Thu, Mar 24, 2022 at 06:11:59PM +0100, Stephen Kitt wrote:
> The i2c probe functions here don't use the id information provided in
> their second argument, so the single-parameter i2c probe function
> ("probe_new") can be used instead.
>
> This avoids scanning the identifier tables during probes.
>
> Signed-off-by: Stephen Kitt <[email protected]>

Looks good and builds fine:

Reviewed-by: Wolfram Sang <[email protected]>


Attachments:
(No filename) (456.00 B)
signature.asc (849.00 B)
Download all attachments

2022-03-31 04:20:55

by Corey Minyard

[permalink] [raw]
Subject: Re: [PATCH] ipmi: use simple i2c probe function

On Wed, Mar 30, 2022 at 11:29:12AM +0200, Wolfram Sang wrote:
> On Thu, Mar 24, 2022 at 06:11:59PM +0100, Stephen Kitt wrote:
> > The i2c probe functions here don't use the id information provided in
> > their second argument, so the single-parameter i2c probe function
> > ("probe_new") can be used instead.
> >
> > This avoids scanning the identifier tables during probes.
> >
> > Signed-off-by: Stephen Kitt <[email protected]>
>
> Looks good and builds fine:
>
> Reviewed-by: Wolfram Sang <[email protected]>
>


Thanks, I have this queued and I've added the review.

I'm just waiting for the merge window to close before I put it into the
next tree.

-corey