]> git.dujemihanovic.xyz Git - linux.git/commitdiff
mfd: 88pm88x: differences with respect to the PMIC RFC series
authorKarel Balej <balejk@matfyz.cz>
Wed, 27 Dec 2023 19:40:08 +0000 (20:40 +0100)
committerDuje Mihanović <duje.mihanovic@skole.hr>
Sat, 20 Jan 2024 19:52:01 +0000 (20:52 +0100)
Signed-off-by: Karel Balej <balejk@matfyz.cz>
drivers/mfd/88pm88x.c
include/linux/mfd/88pm88x.h

index 5db6c65b667d471b369730190a5c9854708cddbd..3424d88a58f6be10b4b65d4847902ef5b63629ef 100644 (file)
@@ -57,16 +57,16 @@ static struct reg_sequence pm886_presets[] = {
        REG_SEQ0(PM88X_REG_BK_OSC_CTRL3, 0xc0),
 };
 
-static struct resource onkey_resources[] = {
+static struct resource pm88x_onkey_resources[] = {
        DEFINE_RES_IRQ_NAMED(PM88X_IRQ_ONKEY, "88pm88x-onkey"),
 };
 
-static struct mfd_cell pm88x_devs[] = {
+static struct mfd_cell pm886_devs[] = {
        {
                .name = "88pm88x-onkey",
-               .num_resources = ARRAY_SIZE(onkey_resources),
-               .resources = onkey_resources,
-               .id = -1,
+               .of_compatible = "marvell,88pm88x-onkey",
+               .num_resources = ARRAY_SIZE(pm88x_onkey_resources),
+               .resources = pm88x_onkey_resources,
        },
 };
 
@@ -74,6 +74,8 @@ static struct pm88x_data pm886_a1_data = {
        .whoami = PM886_A1_WHOAMI,
        .presets = pm886_presets,
        .num_presets = ARRAY_SIZE(pm886_presets),
+       .devs = pm886_devs,
+       .num_devs = ARRAY_SIZE(pm886_devs),
 };
 
 static const struct regmap_config pm88x_i2c_regmap = {
@@ -157,7 +159,7 @@ static int pm88x_probe(struct i2c_client *client)
        if (ret)
                return ret;
 
-       ret = devm_mfd_add_devices(&client->dev, 0, pm88x_devs, ARRAY_SIZE(pm88x_devs),
+       ret = devm_mfd_add_devices(&client->dev, 0, chip->data->devs, chip->data->num_devs,
                        NULL, 0, regmap_irq_get_domain(chip->irq_data));
        if (ret) {
                dev_err(&client->dev, "Failed to add devices: %d\n", ret);
index a34c57447827749e557c312834394390380e30ac..9a335f6b9c07969464bb95447e70c04b73265ee3 100644 (file)
@@ -49,6 +49,8 @@ struct pm88x_data {
        unsigned int whoami;
        struct reg_sequence *presets;
        unsigned int num_presets;
+       struct mfd_cell *devs;
+       unsigned int num_devs;
 };
 
 struct pm88x_chip {