diff mbox

mfd: wm8994: use PLATFORM_DEVID_AUTO for regulator devs creation to avoid conflicts

Message ID 1419918320-12693-1-git-send-email-ideal.song@samsung.com (mailing list archive)
State New, archived
Headers show

Commit Message

Inha Song Dec. 30, 2014, 5:45 a.m. UTC
After commit: 6e3f62f0793e ("mfd: core: Fix platform-device id generation")
We must set the id base when register a duplicate name of mfd_cell.
but, if we use PLATFORM_DEVID_AUTO flag, cell ids are automatically
allocated and managed without cell id setting.

Signed-off-by: Inha Song <ideal.song@samsung.com>
---
 drivers/mfd/wm8994-core.c | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

Comments

Mark Brown Dec. 30, 2014, 11:28 a.m. UTC | #1
On Tue, Dec 30, 2014 at 02:45:20PM +0900, Inha Song wrote:
> After commit: 6e3f62f0793e ("mfd: core: Fix platform-device id generation")
> We must set the id base when register a duplicate name of mfd_cell.
> but, if we use PLATFORM_DEVID_AUTO flag, cell ids are automatically
> allocated and managed without cell id setting.

The driver relies on getting those specific IDs in order to work out
which LDO it's working with, automatically generated numbers may be the
same now but can you guarantee that in future?
Inha Song Dec. 30, 2014, 11:46 a.m. UTC | #2
Hi Mark,
Thanks for your reply.

Sure, Understand. I missed that part.

I will just fix id base to 0 from -1.
If not, duplicate filename error was reported like this.
- sysfs: cannot create duplicate filename '/devices/.../wm8994-ldo'

Best Regards,
Inha Song.

On Tue, 30 Dec 2014 11:28:21 +0000
Mark Brown <broonie@kernel.org> wrote:

> On Tue, Dec 30, 2014 at 02:45:20PM +0900, Inha Song wrote:
> > After commit: 6e3f62f0793e ("mfd: core: Fix platform-device id generation")
> > We must set the id base when register a duplicate name of mfd_cell.
> > but, if we use PLATFORM_DEVID_AUTO flag, cell ids are automatically
> > allocated and managed without cell id setting.
> 
> The driver relies on getting those specific IDs in order to work out
> which LDO it's working with, automatically generated numbers may be the
> same now but can you guarantee that in future?
diff mbox

Patch

diff --git a/drivers/mfd/wm8994-core.c b/drivers/mfd/wm8994-core.c
index e6fab94..0505e45 100644
--- a/drivers/mfd/wm8994-core.c
+++ b/drivers/mfd/wm8994-core.c
@@ -36,12 +36,10 @@ 
 static const struct mfd_cell wm8994_regulator_devs[] = {
 	{
 		.name = "wm8994-ldo",
-		.id = 1,
 		.pm_runtime_no_callbacks = true,
 	},
 	{
 		.name = "wm8994-ldo",
-		.id = 2,
 		.pm_runtime_no_callbacks = true,
 	},
 };
@@ -344,7 +342,7 @@  static int wm8994_device_init(struct wm8994 *wm8994, int irq)
 	dev_set_drvdata(wm8994->dev, wm8994);
 
 	/* Add the on-chip regulators first for bootstrapping */
-	ret = mfd_add_devices(wm8994->dev, -1,
+	ret = mfd_add_devices(wm8994->dev, PLATFORM_DEVID_AUTO,
 			      wm8994_regulator_devs,
 			      ARRAY_SIZE(wm8994_regulator_devs),
 			      NULL, 0, NULL);