With device tree the device name starts with a number, so
the device parameters are not accessible on the shell. Register
a separate device for the ocotp to make the permanent_write_enable
variable accessible again.

Signed-off-by: Sascha Hauer <[email protected]>
---
 arch/arm/mach-mxs/ocotp.c | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/arch/arm/mach-mxs/ocotp.c b/arch/arm/mach-mxs/ocotp.c
index 2029b90..0075845 100644
--- a/arch/arm/mach-mxs/ocotp.c
+++ b/arch/arm/mach-mxs/ocotp.c
@@ -43,6 +43,7 @@
 #define OCOTP_WORD_OFFSET              0x20
 
 struct ocotp_priv {
+       struct device_d dev;
        struct cdev cdev;
        void __iomem *base;
        unsigned int write_enable;
@@ -194,13 +195,19 @@ static int mxs_ocotp_probe(struct device_d *dev)
        priv->cdev.size = cpu_is_mx23() ? 128 : 160;
        priv->cdev.name = DRIVERNAME;
 
+       strcpy(priv->dev.name, "ocotp");
+       priv->dev.parent = dev;
+       err = register_device(&priv->dev);
+       if (err)
+               return err;
+
        err = devfs_create(&priv->cdev);
        if (err < 0)
                return err;
 
        if (IS_ENABLED(CONFIG_MXS_OCOTP_WRITABLE)) {
                mxs_ocotp_ops.write = mxs_ocotp_cdev_write;
-               dev_add_param_bool(dev, "permanent_write_enable",
+               dev_add_param_bool(&priv->dev, "permanent_write_enable",
                        NULL, NULL, &priv->write_enable, NULL);
        }
 
-- 
2.1.4


_______________________________________________
barebox mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/barebox

Reply via email to