[PATCH v3] power: supply: sbs-battery: Make similar OF and ID table

From: Biju Das
Date: Thu Aug 31 2023 - 13:12:46 EST


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@xxxxxxxxxxxxxx>
---
v2->v3:
* Dropped unnecessary u32 casting.
v1->v2:
* Dropped patch#2 as Zero is a expected match value for this driver
and the driver does not check for a NULL return value from
*_get_match_data() anyway.
---
drivers/power/supply/sbs-battery.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/drivers/power/supply/sbs-battery.c b/drivers/power/supply/sbs-battery.c
index cdfc8466d129..a6c204c08232 100644
--- a/drivers/power/supply/sbs-battery.c
+++ b/drivers/power/supply/sbs-battery.c
@@ -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);
--
2.25.1