From eec34f2a0820c8e478a357c018a45297f30b702e Mon Sep 17 00:00:00 2001 From: Sascha Hauer Date: Fri, 16 May 2014 09:39:35 +0200 Subject: [PATCH] ARM: i.MX: iim: register iim device With devicetree devicenames start with numbers. Parameters on these devices are not accessible since variables can't start with numbers. Register a logical 'iim' device which makes the permanent_write_enable and explicit_sense_enable parameters accessible again. Signed-off-by: Sascha Hauer --- arch/arm/mach-imx/iim.c | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/arch/arm/mach-imx/iim.c b/arch/arm/mach-imx/iim.c index 98fd0311c..01cb97e40 100644 --- a/arch/arm/mach-imx/iim.c +++ b/arch/arm/mach-imx/iim.c @@ -46,6 +46,7 @@ struct iim_bank { struct iim_priv { struct cdev cdev; + struct device_d dev; void __iomem *base; void __iomem *bankbase; struct iim_bank *bank[IIM_NUM_BANKS]; @@ -288,6 +289,13 @@ static int imx_iim_probe(struct device_d *dev) iim = xzalloc(sizeof(*iim)); + strcpy(iim->dev.name, "iim"); + iim->dev.parent = dev; + iim->dev.id = DEVICE_ID_SINGLE; + ret = register_device(&iim->dev); + if (ret) + return ret; + iim->base = dev_request_mem_region(dev, 0); if (!iim->base) return -EBUSY; @@ -301,10 +309,10 @@ static int imx_iim_probe(struct device_d *dev) imx_iim_init_dt(dev, iim); if (IS_ENABLED(CONFIG_IMX_IIM_FUSE_BLOW)) - dev_add_param_bool(dev, "permanent_write_enable", + dev_add_param_bool(&iim->dev, "permanent_write_enable", NULL, NULL, &iim_write_enable, NULL); - dev_add_param_bool(dev, "explicit_sense_enable", + dev_add_param_bool(&iim->dev, "explicit_sense_enable", NULL, NULL, &iim_sense_enable, NULL); return 0;