Instantiate the CrOS EC throttler if it is enabled in the kernel configuration. Signed-off-by: Matthias Kaehlcke <mka@xxxxxxxxxxxx> Reviewed-by: Brian Norris <briannorris@xxxxxxxxxxxx> --- Changes in v5: - added 'Reviewed-by: Brian Norris <briannorris@xxxxxxxxxxxx>' tag Changes in v4: - register throttler in cros_ec_dev.c instead of cros_ec.c Changes in v3: - patch added to series --- drivers/mfd/cros_ec_dev.c | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/drivers/mfd/cros_ec_dev.c b/drivers/mfd/cros_ec_dev.c index eafd06f62a3a..9e56c2793075 100644 --- a/drivers/mfd/cros_ec_dev.c +++ b/drivers/mfd/cros_ec_dev.c @@ -383,6 +383,22 @@ static void cros_ec_sensors_register(struct cros_ec_dev *ec) kfree(msg); } +static const struct mfd_cell ec_throttler_cells[] = { + { .name = "cros-ec-throttler" } +}; + +static void cros_ec_throttler_register(struct cros_ec_dev *ec) +{ + int ret; + + ret = mfd_add_devices(ec->dev, 0, ec_throttler_cells, + ARRAY_SIZE(ec_throttler_cells), + NULL, 0, NULL); + if (ret) + dev_err(ec->dev, + "failed to add cros-ec-throttler device: %d\n", ret); +} + static int ec_device_probe(struct platform_device *pdev) { int retval = -ENOMEM; @@ -422,6 +438,9 @@ static int ec_device_probe(struct platform_device *pdev) if (cros_ec_check_features(ec, EC_FEATURE_MOTION_SENSE)) cros_ec_sensors_register(ec); + if (IS_ENABLED(CONFIG_CROS_EC_THROTTLER)) + cros_ec_throttler_register(ec); + /* Take control of the lightbar from the EC. */ lb_manual_suspend_ctrl(ec, 1); -- 2.18.0.203.gfac676dfb9-goog -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html