mfd: rk808: Replace 'struct i2c_client' with 'struct device'
authorSebastian Reichel <sebastian.reichel@collabora.com>
Thu, 4 May 2023 17:36:08 +0000 (19:36 +0200)
committerLee Jones <lee@kernel.org>
Mon, 15 May 2023 15:18:27 +0000 (16:18 +0100)
Put 'struct device' pointer into the MFD platform_data instead
of the 'struct i2c_client' pointer. This simplifies the code
and prepares the MFD for SPI support.

Tested-by: Diederik de Haas <didi.debian@cknow.org> # Rock64, Quartz64 Model A + B
Tested-by: Vincent Legoll <vincent.legoll@gmail.com> # Pine64 QuartzPro64
Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com>
Link: https://lore.kernel.org/r/20230504173618.142075-5-sebastian.reichel@collabora.com
Signed-off-by: Lee Jones <lee@kernel.org>
drivers/mfd/rk808.c
include/linux/mfd/rk808.h

index f42e09e..ce52307 100644 (file)
@@ -577,7 +577,7 @@ static int rk808_power_off(struct sys_off_data *data)
        }
        ret = regmap_update_bits(rk808->regmap, reg, bit, bit);
        if (ret)
-               dev_err(&rk808->i2c->dev, "Failed to shutdown device!\n");
+               dev_err(rk808->dev, "Failed to shutdown device!\n");
 
        return NOTIFY_DONE;
 }
@@ -600,7 +600,7 @@ static int rk808_restart(struct sys_off_data *data)
        }
        ret = regmap_update_bits(rk808->regmap, reg, bit, bit);
        if (ret)
-               dev_err(&rk808->i2c->dev, "Failed to restart device!\n");
+               dev_err(rk808->dev, "Failed to restart device!\n");
 
        return NOTIFY_DONE;
 }
@@ -720,7 +720,7 @@ static int rk808_probe(struct i2c_client *client)
                return -EINVAL;
        }
 
-       rk808->i2c = client;
+       rk808->dev = &client->dev;
        i2c_set_clientdata(client, rk808);
 
        rk808->regmap = devm_regmap_init_i2c(client, rk808->regmap_cfg);
index 9af1f31..a89ddd9 100644 (file)
@@ -787,7 +787,7 @@ enum {
 };
 
 struct rk808 {
-       struct i2c_client               *i2c;
+       struct device                   *dev;
        struct regmap_irq_chip_data     *irq_data;
        struct regmap                   *regmap;
        long                            variant;