Hi Biju, On Sun, Jul 16, 2023 at 5:44 PM Biju Das <biju.das.jz@xxxxxxxxxxxxxx> 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@xxxxxxxxxxxxxx> Reviewed-by: Geert Uytterhoeven <geert+renesas@xxxxxxxxx> > --- a/drivers/clk/clk-versaclock5.c > +++ b/drivers/clk/clk-versaclock5.c > @@ -956,7 +956,9 @@ static int vc5_probe(struct i2c_client *client) > > i2c_set_clientdata(client, vc5); > vc5->client = client; > - vc5->chip_info = device_get_match_data(&client->dev); > + vc5->chip_info = i2c_get_match_data(client); > + if (!vc5->chip_info) > + return -ENODEV; Can this actually happen? All tables have data pointers. > vc5->pin_xin = devm_clk_get(&client->dev, "xin"); > if (PTR_ERR(vc5->pin_xin) == -EPROBE_DEFER) Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds