Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752394AbdLPIVj (ORCPT ); Sat, 16 Dec 2017 03:21:39 -0500 Received: from mail-it0-f68.google.com ([209.85.214.68]:43493 "EHLO mail-it0-f68.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752122AbdLPIVi (ORCPT ); Sat, 16 Dec 2017 03:21:38 -0500 X-Google-Smtp-Source: ACJfBotOtwZOutKzPdAufrvHQC1YyPhjZee/rqDQ9DXLPiEzmUannx7H2rG2hkwGCD5Kp1zN6ThvIQ== From: Benson Leung To: jeffy.chen@rock-chips.com, lee.jones@linaro.org, linux-kernel@vger.kernel.org Cc: bleung@chromium.org, bleung@google.com Subject: [PATCH] mfd: cros_ec_dev - Use devm_mfd_add_devices Date: Sat, 16 Dec 2017 00:21:31 -0800 Message-Id: <20171216082131.2581-1-bleung@chromium.org> X-Mailer: git-send-email 2.15.1.504.g5279b80103-goog Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1570 Lines: 43 From: Jeffy Chen Currently we are calling mfd_add_devices to add devices without matched mfd_remove_devices to remove them. That would cause warning when re-binding cros_ec_dev: [ 123.536192] sysfs: cannot create duplicate filename '/bus/platform/devices/cros- ec-accel.0' [ 123.536210] ------------[ cut here ]------------ [ 123.536223] WARNING: CPU: 3 PID: 156 at fs/sysfs/dir.c:31 sysfs_warn_dup+0x68/0x 84 [ 123.536226] Modules linked in: [ 123.536236] CPU: 3 PID: 156 Comm: bash Not tainted 4.13.0-rc3-next-20170731 #216 [ 123.536238] Hardware name: Google Kevin (DT) [ 123.536242] task: ffffffc0f28bab80 task.stack: ffffffc0f1b30000 [ 123.536247] PC is at sysfs_warn_dup+0x68/0x84 [ 123.536251] LR is at sysfs_warn_dup+0x68/0x84 Signed-off-by: Jeffy Chen [bleung: resending this patch after the move to mfd from platform/chrome] Signed-off-by: Benson Leung --- drivers/mfd/cros_ec_dev.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/mfd/cros_ec_dev.c b/drivers/mfd/cros_ec_dev.c index e4fafdd96e5e..0597a2dca024 100644 --- a/drivers/mfd/cros_ec_dev.c +++ b/drivers/mfd/cros_ec_dev.c @@ -377,8 +377,8 @@ static void cros_ec_sensors_register(struct cros_ec_dev *ec) id++; } - ret = mfd_add_devices(ec->dev, 0, sensor_cells, id, - NULL, 0, NULL); + ret = devm_mfd_add_devices(ec->dev, 0, sensor_cells, id, + NULL, 0, NULL); if (ret) dev_err(ec->dev, "failed to add EC sensors\n"); -- 2.15.1.504.g5279b80103-goog