power: supply: sbs-battery: Make similar OF and ID table
authorBiju Das <biju.das.jz@bp.renesas.com>
Thu, 31 Aug 2023 17:12:35 +0000 (18:12 +0100)
committerSebastian Reichel <sebastian.reichel@collabora.com>
Tue, 12 Sep 2023 16:25:35 +0000 (18:25 +0200)
Make similar OF and ID table to extend support for ID match
using i2c_match_data(). Currently it works only for OF match
tables as the field is wrong for ID match.

Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com>
Link: https://lore.kernel.org/r/20230831171235.58477-1-biju.das.jz@bp.renesas.com
Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com>
drivers/power/supply/sbs-battery.c

index cdfc8466d129b7481ad5735203d3f2e4273ec633..a6c204c08232a5fe999ff230194279f03834a100 100644 (file)
@@ -1135,7 +1135,7 @@ static int sbs_probe(struct i2c_client *client)
        if (!chip)
                return -ENOMEM;
 
-       chip->flags = (u32)(uintptr_t)device_get_match_data(&client->dev);
+       chip->flags = (uintptr_t)i2c_get_match_data(client);
        chip->client = client;
        psy_cfg.of_node = client->dev.of_node;
        psy_cfg.drv_data = chip;
@@ -1253,9 +1253,9 @@ static SIMPLE_DEV_PM_OPS(sbs_pm_ops, sbs_suspend, NULL);
 #endif
 
 static const struct i2c_device_id sbs_id[] = {
-       { "bq20z65", 0 },
-       { "bq20z75", 0 },
-       { "sbs-battery", 1 },
+       { "bq20z65", SBS_FLAGS_TI_BQ20ZX5 },
+       { "bq20z75", SBS_FLAGS_TI_BQ20ZX5 },
+       { "sbs-battery", 0 },
        {}
 };
 MODULE_DEVICE_TABLE(i2c, sbs_id);