2023-09-03 13:19:28

by Biju Das

[permalink] [raw]
Subject: [PATCH 0/2] Match data improvements for bq256xx driver

This patch series aims to add match data improvements for bq256xx driver.

This patch series is only compile tested.

Biju Das (2):
power: supply: bq256xx: Use i2c_get_match_data()
power: supply: bq256xx: Some cleanups

drivers/power/supply/bq256xx_charger.c | 50 +++++++++++++-------------
1 file changed, 25 insertions(+), 25 deletions(-)

--
2.25.1


2023-09-03 13:42:33

by Biju Das

[permalink] [raw]
Subject: [PATCH 2/2] power: supply: bq256xx: Some cleanups

Some cleanups:
* Remove trailing comma in the terminator entry for OF/ID/ACPI table.
* Drop a space from terminator entry for OF table.

Signed-off-by: Biju Das <[email protected]>
---
drivers/power/supply/bq256xx_charger.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/power/supply/bq256xx_charger.c b/drivers/power/supply/bq256xx_charger.c
index fda4286323ee..474201815a27 100644
--- a/drivers/power/supply/bq256xx_charger.c
+++ b/drivers/power/supply/bq256xx_charger.c
@@ -1778,7 +1778,7 @@ static const struct i2c_device_id bq256xx_i2c_ids[] = {
{ "bq25611d", (kernel_ulong_t)&bq256xx_chip_info_tbl[BQ25611D] },
{ "bq25618", (kernel_ulong_t)&bq256xx_chip_info_tbl[BQ25618] },
{ "bq25619", (kernel_ulong_t)&bq256xx_chip_info_tbl[BQ25619] },
- {},
+ {}
};
MODULE_DEVICE_TABLE(i2c, bq256xx_i2c_ids);

@@ -1790,7 +1790,7 @@ static const struct of_device_id bq256xx_of_match[] = {
{ .compatible = "ti,bq25611d", .data = &bq256xx_chip_info_tbl[BQ25611D] },
{ .compatible = "ti,bq25618", .data = &bq256xx_chip_info_tbl[BQ25618] },
{ .compatible = "ti,bq25619", .data = &bq256xx_chip_info_tbl[BQ25619] },
- { },
+ {}
};
MODULE_DEVICE_TABLE(of, bq256xx_of_match);

@@ -1802,7 +1802,7 @@ static const struct acpi_device_id bq256xx_acpi_match[] = {
{ "bq25611d", (kernel_ulong_t)&bq256xx_chip_info_tbl[BQ25611D] },
{ "bq25618", (kernel_ulong_t)&bq256xx_chip_info_tbl[BQ25618] },
{ "bq25619", (kernel_ulong_t)&bq256xx_chip_info_tbl[BQ25619] },
- {},
+ {}
};
MODULE_DEVICE_TABLE(acpi, bq256xx_acpi_match);

--
2.25.1

2023-09-04 08:09:50

by Biju Das

[permalink] [raw]
Subject: [PATCH 1/2] power: supply: bq256xx: Use i2c_get_match_data()

Use i2c_get_match_data() for OF/ID/ACPI match instead of ID lookup by
replacing OF/ACPI/ID match data from enum bq256xx_id to
struct bq256xx_chip_info.

Signed-off-by: Biju Das <[email protected]>
---
drivers/power/supply/bq256xx_charger.c | 44 +++++++++++++-------------
1 file changed, 22 insertions(+), 22 deletions(-)

diff --git a/drivers/power/supply/bq256xx_charger.c b/drivers/power/supply/bq256xx_charger.c
index 82d3cd5ee2f9..fda4286323ee 100644
--- a/drivers/power/supply/bq256xx_charger.c
+++ b/drivers/power/supply/bq256xx_charger.c
@@ -1702,7 +1702,7 @@ static int bq256xx_probe(struct i2c_client *client)

bq->client = client;
bq->dev = dev;
- bq->chip_info = &bq256xx_chip_info_tbl[id->driver_data];
+ bq->chip_info = i2c_get_match_data(client);

mutex_init(&bq->lock);

@@ -1771,37 +1771,37 @@ static int bq256xx_probe(struct i2c_client *client)
}

static const struct i2c_device_id bq256xx_i2c_ids[] = {
- { "bq25600", BQ25600 },
- { "bq25600d", BQ25600D },
- { "bq25601", BQ25601 },
- { "bq25601d", BQ25601D },
- { "bq25611d", BQ25611D },
- { "bq25618", BQ25618 },
- { "bq25619", BQ25619 },
+ { "bq25600", (kernel_ulong_t)&bq256xx_chip_info_tbl[BQ25600] },
+ { "bq25600d", (kernel_ulong_t)&bq256xx_chip_info_tbl[BQ25600D] },
+ { "bq25601", (kernel_ulong_t)&bq256xx_chip_info_tbl[BQ25601] },
+ { "bq25601d", (kernel_ulong_t)&bq256xx_chip_info_tbl[BQ25601D] },
+ { "bq25611d", (kernel_ulong_t)&bq256xx_chip_info_tbl[BQ25611D] },
+ { "bq25618", (kernel_ulong_t)&bq256xx_chip_info_tbl[BQ25618] },
+ { "bq25619", (kernel_ulong_t)&bq256xx_chip_info_tbl[BQ25619] },
{},
};
MODULE_DEVICE_TABLE(i2c, bq256xx_i2c_ids);

static const struct of_device_id bq256xx_of_match[] = {
- { .compatible = "ti,bq25600", .data = (void *)BQ25600 },
- { .compatible = "ti,bq25600d", .data = (void *)BQ25600D },
- { .compatible = "ti,bq25601", .data = (void *)BQ25601 },
- { .compatible = "ti,bq25601d", .data = (void *)BQ25601D },
- { .compatible = "ti,bq25611d", .data = (void *)BQ25611D },
- { .compatible = "ti,bq25618", .data = (void *)BQ25618 },
- { .compatible = "ti,bq25619", .data = (void *)BQ25619 },
+ { .compatible = "ti,bq25600", .data = &bq256xx_chip_info_tbl[BQ25600] },
+ { .compatible = "ti,bq25600d", .data = &bq256xx_chip_info_tbl[BQ25600D] },
+ { .compatible = "ti,bq25601", .data = &bq256xx_chip_info_tbl[BQ25601] },
+ { .compatible = "ti,bq25601d", .data = &bq256xx_chip_info_tbl[BQ25601D] },
+ { .compatible = "ti,bq25611d", .data = &bq256xx_chip_info_tbl[BQ25611D] },
+ { .compatible = "ti,bq25618", .data = &bq256xx_chip_info_tbl[BQ25618] },
+ { .compatible = "ti,bq25619", .data = &bq256xx_chip_info_tbl[BQ25619] },
{ },
};
MODULE_DEVICE_TABLE(of, bq256xx_of_match);

static const struct acpi_device_id bq256xx_acpi_match[] = {
- { "bq25600", BQ25600 },
- { "bq25600d", BQ25600D },
- { "bq25601", BQ25601 },
- { "bq25601d", BQ25601D },
- { "bq25611d", BQ25611D },
- { "bq25618", BQ25618 },
- { "bq25619", BQ25619 },
+ { "bq25600", (kernel_ulong_t)&bq256xx_chip_info_tbl[BQ25600] },
+ { "bq25600d", (kernel_ulong_t)&bq256xx_chip_info_tbl[BQ25600D] },
+ { "bq25601", (kernel_ulong_t)&bq256xx_chip_info_tbl[BQ25601] },
+ { "bq25601d", (kernel_ulong_t)&bq256xx_chip_info_tbl[BQ25601D] },
+ { "bq25611d", (kernel_ulong_t)&bq256xx_chip_info_tbl[BQ25611D] },
+ { "bq25618", (kernel_ulong_t)&bq256xx_chip_info_tbl[BQ25618] },
+ { "bq25619", (kernel_ulong_t)&bq256xx_chip_info_tbl[BQ25619] },
{},
};
MODULE_DEVICE_TABLE(acpi, bq256xx_acpi_match);
--
2.25.1

2023-09-13 01:31:47

by Sebastian Reichel

[permalink] [raw]
Subject: Re: [PATCH 0/2] Match data improvements for bq256xx driver


On Sat, 02 Sep 2023 21:25:03 +0100, Biju Das wrote:
> This patch series aims to add match data improvements for bq256xx driver.
>
> This patch series is only compile tested.
>
> Biju Das (2):
> power: supply: bq256xx: Use i2c_get_match_data()
> power: supply: bq256xx: Some cleanups
>
> [...]

Applied, thanks!

[1/2] power: supply: bq256xx: Use i2c_get_match_data()
commit: f28992902b17245af042913d6cfd6a1cc100bcaf
[2/2] power: supply: bq256xx: Some cleanups
commit: 02e673e59c3d374924422f74fb229ae4ee6715fc

Best regards,
--
Sebastian Reichel <[email protected]>