[PATCH v7 10/10] mfd: cros_ec: Use mfd_add_hotplug_devices() helper

From: Enric Balletbo i Serra
Date: Mon Sep 02 2019 - 05:53:41 EST


Use mfd_add_hotplug_devices() helper to register the subdevices. The
helper allows us to reduce the boiler plate and also registers the
subdevices in the same way as used in other functions used in this
files.

Signed-off-by: Enric Balletbo i Serra <enric.balletbo@xxxxxxxxxxxxx>
Reviewed-by: Gwendal Grignou <gwendal@xxxxxxxxxxxx>
Tested-by: Gwendal Grignou <gwendal@xxxxxxxxxxxx>
Acked-for-MFD-by: Lee Jones <lee.jones@xxxxxxxxxx>
---

Changes in v7: None
Changes in v6:
- Improve patch description stating the reason of the change (Lee Jones)

Changes in v5: None
Changes in v4: None
Changes in v3:
- Add a new patch to use mfd_add_hoplug_devices to register subdevices

Changes in v2: None

drivers/mfd/cros_ec_dev.c | 18 ++++++------------
1 file changed, 6 insertions(+), 12 deletions(-)

diff --git a/drivers/mfd/cros_ec_dev.c b/drivers/mfd/cros_ec_dev.c
index 90eb02c56b77..6e6dfd6c1871 100644
--- a/drivers/mfd/cros_ec_dev.c
+++ b/drivers/mfd/cros_ec_dev.c
@@ -329,10 +329,8 @@ static void cros_ec_accel_legacy_register(struct cros_ec_dev *ec)
* Register 2 accelerometers, we will fail in the IIO driver if there
* are no sensors.
*/
- ret = mfd_add_devices(ec->dev, PLATFORM_DEVID_AUTO,
- cros_ec_accel_legacy_cells,
- ARRAY_SIZE(cros_ec_accel_legacy_cells),
- NULL, 0, NULL);
+ ret = mfd_add_hotplug_devices(ec->dev, cros_ec_accel_legacy_cells,
+ ARRAY_SIZE(cros_ec_accel_legacy_cells));
if (ret)
dev_err(ec_dev->dev, "failed to add EC sensors\n");
}
@@ -419,10 +417,8 @@ static int ec_device_probe(struct platform_device *pdev)
* The following subdevices cannot be detected by sending the
* EC_FEATURE_GET_CMD to the Embedded Controller device.
*/
- retval = mfd_add_devices(ec->dev, PLATFORM_DEVID_AUTO,
- cros_ec_platform_cells,
- ARRAY_SIZE(cros_ec_platform_cells),
- NULL, 0, NULL);
+ retval = mfd_add_hotplug_devices(ec->dev, cros_ec_platform_cells,
+ ARRAY_SIZE(cros_ec_platform_cells));
if (retval)
dev_warn(ec->dev,
"failed to add cros-ec platform devices: %d\n",
@@ -431,10 +427,8 @@ static int ec_device_probe(struct platform_device *pdev)
/* Check whether this EC instance has a VBC NVRAM */
node = ec->ec_dev->dev->of_node;
if (of_property_read_bool(node, "google,has-vbc-nvram")) {
- retval = mfd_add_devices(ec->dev, PLATFORM_DEVID_AUTO,
- cros_ec_vbc_cells,
- ARRAY_SIZE(cros_ec_vbc_cells),
- NULL, 0, NULL);
+ retval = mfd_add_hotplug_devices(ec->dev, cros_ec_vbc_cells,
+ ARRAY_SIZE(cros_ec_vbc_cells));
if (retval)
dev_warn(ec->dev, "failed to add VBC devices: %d\n",
retval);
--
2.20.1