clk: vc5: Fix .driver_data content in i2c_device_id
authorMarek Vasut <marek.vasut+renesas@mailbox.org>
Sun, 7 May 2023 13:39:04 +0000 (15:39 +0200)
committerStephen Boyd <sboyd@kernel.org>
Wed, 10 May 2023 21:22:39 +0000 (14:22 -0700)
The .driver_data content in i2c_device_id table must match the
.data content in of_device_id table, else device_get_match_data()
would return bogus value on i2c_device_id match. Align the two
tables.

The i2c_device_id table is now converted from of_device_id using
's@.compatible = "idt,\([^"]\+"\), .data = \(.*\)@"\1, .driver_data = (kernel_ulong_t)\2@'

Fixes: 9adddb01ce5f ("clk: vc5: Add structure to describe particular chip features")
Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
Link: https://lore.kernel.org/r/20230507133906.15061-1-marek.vasut+renesas@mailbox.org
Reviewed-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: Stephen Boyd <sboyd@kernel.org>
drivers/clk/clk-versaclock5.c

index fa71a57..5452471 100644 (file)
@@ -1271,14 +1271,14 @@ static const struct vc5_chip_info idt_5p49v6975_info = {
 };
 
 static const struct i2c_device_id vc5_id[] = {
-       { "5p49v5923", .driver_data = IDT_VC5_5P49V5923 },
-       { "5p49v5925", .driver_data = IDT_VC5_5P49V5925 },
-       { "5p49v5933", .driver_data = IDT_VC5_5P49V5933 },
-       { "5p49v5935", .driver_data = IDT_VC5_5P49V5935 },
-       { "5p49v60", .driver_data = IDT_VC6_5P49V60 },
-       { "5p49v6901", .driver_data = IDT_VC6_5P49V6901 },
-       { "5p49v6965", .driver_data = IDT_VC6_5P49V6965 },
-       { "5p49v6975", .driver_data = IDT_VC6_5P49V6975 },
+       { "5p49v5923", .driver_data = (kernel_ulong_t)&idt_5p49v5923_info },
+       { "5p49v5925", .driver_data = (kernel_ulong_t)&idt_5p49v5925_info },
+       { "5p49v5933", .driver_data = (kernel_ulong_t)&idt_5p49v5933_info },
+       { "5p49v5935", .driver_data = (kernel_ulong_t)&idt_5p49v5935_info },
+       { "5p49v60", .driver_data = (kernel_ulong_t)&idt_5p49v60_info },
+       { "5p49v6901", .driver_data = (kernel_ulong_t)&idt_5p49v6901_info },
+       { "5p49v6965", .driver_data = (kernel_ulong_t)&idt_5p49v6965_info },
+       { "5p49v6975", .driver_data = (kernel_ulong_t)&idt_5p49v6975_info },
        { }
 };
 MODULE_DEVICE_TABLE(i2c, vc5_id);