[PATCHv3 06/14] mfd: rk808: replace 'struct i2c_client' with 'struct device'

From: Sebastian Reichel
Date: Fri Sep 09 2022 - 13:56:07 EST


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.

Signed-off-by: Sebastian Reichel <sebastian.reichel@xxxxxxxxxxxxx>
---
drivers/mfd/rk808.c | 6 +++---
include/linux/mfd/rk808.h | 2 +-
2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/drivers/mfd/rk808.c b/drivers/mfd/rk808.c
index 8b18a9d9cb74..518c6deec4b1 100644
--- a/drivers/mfd/rk808.c
+++ b/drivers/mfd/rk808.c
@@ -556,7 +556,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;
}
@@ -579,7 +579,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;
}
@@ -700,7 +700,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);
diff --git a/include/linux/mfd/rk808.h b/include/linux/mfd/rk808.h
index 58602032e642..9937b068fa82 100644
--- a/include/linux/mfd/rk808.h
+++ b/include/linux/mfd/rk808.h
@@ -696,7 +696,7 @@ enum {
};

struct rk808 {
- struct i2c_client *i2c;
+ struct device *dev;
struct regmap_irq_chip_data *irq_data;
struct regmap *regmap;
long variant;
--
2.35.1