Message ID | 20230716154442.93908-3-biju.das.jz@bp.renesas.com (mailing list archive) |
---|---|
State | Changes Requested, archived |
Headers | show |
Series | Use i2c_get_match_data() | expand |
On 7/16/23 17:44, Biju Das wrote: > The device_get_match_data(), is to get match data for firmware interfaces > such as just OF/ACPI. This driver has I2C matching table as well. Use > i2c_get_match_data() to get match data for I2C, ACPI and DT-based > matching. > > Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com> Reviewed-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
Hi Biju, On Sun, Jul 16, 2023 at 5:44 PM Biju Das <biju.das.jz@bp.renesas.com> wrote: > The device_get_match_data(), is to get match data for firmware interfaces > such as just OF/ACPI. This driver has I2C matching table as well. Use > i2c_get_match_data() to get match data for I2C, ACPI and DT-based > matching. > > Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com> Thanks for your patch! Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be> > --- a/drivers/clk/clk-versaclock7.c > +++ b/drivers/clk/clk-versaclock7.c > @@ -1109,7 +1109,9 @@ static int vc7_probe(struct i2c_client *client) > > i2c_set_clientdata(client, vc7); > vc7->client = client; > - vc7->chip_info = device_get_match_data(&client->dev); > + vc7->chip_info = i2c_get_match_data(client); > + if (!vc7->chip_info) > + return -ENODEV; Can this actually fail? All tables have data pointers. Gr{oetje,eeting}s, Geert
Hi Geert, Thanks for the feedback. > Subject: Re: [PATCH 2/2] clk: vc7: Use i2c_get_match_data() instead of > device_get_match_data() > > Hi Biju, > > On Sun, Jul 16, 2023 at 5:44 PM Biju Das <biju.das.jz@bp.renesas.com> > wrote: > > The device_get_match_data(), is to get match data for firmware > > interfaces such as just OF/ACPI. This driver has I2C matching table as > > well. Use > > i2c_get_match_data() to get match data for I2C, ACPI and DT-based > > matching. > > > > Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com> > > Thanks for your patch! > > Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be> > > > --- a/drivers/clk/clk-versaclock7.c > > +++ b/drivers/clk/clk-versaclock7.c > > @@ -1109,7 +1109,9 @@ static int vc7_probe(struct i2c_client *client) > > > > i2c_set_clientdata(client, vc7); > > vc7->client = client; > > - vc7->chip_info = device_get_match_data(&client->dev); > > + vc7->chip_info = i2c_get_match_data(client); > > + if (!vc7->chip_info) > > + return -ENODEV; > > Can this actually fail? All tables have data pointers. It is not needed. I just want to avoid people sending patches as this function can return NULL, so add a check. Please let me know, whether I should remove this? I am happy to send V2 taking out this check. Cheers, Biju
diff --git a/drivers/clk/clk-versaclock7.c b/drivers/clk/clk-versaclock7.c index 9babb7913c1c..be91aeada81c 100644 --- a/drivers/clk/clk-versaclock7.c +++ b/drivers/clk/clk-versaclock7.c @@ -1109,7 +1109,9 @@ static int vc7_probe(struct i2c_client *client) i2c_set_clientdata(client, vc7); vc7->client = client; - vc7->chip_info = device_get_match_data(&client->dev); + vc7->chip_info = i2c_get_match_data(client); + if (!vc7->chip_info) + return -ENODEV; vc7->pin_xin = devm_clk_get(&client->dev, "xin"); if (PTR_ERR(vc7->pin_xin) == -EPROBE_DEFER) {
The device_get_match_data(), is to get match data for firmware interfaces such as just OF/ACPI. This driver has I2C matching table as well. Use i2c_get_match_data() to get match data for I2C, ACPI and DT-based matching. Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com> --- Note: This patch is based on the work done for rtc-isl1208 and is compile tested. --- drivers/clk/clk-versaclock7.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-)