On 05/21/2015 09:44 AM, Srinivas Kandagatla wrote: > diff --git a/drivers/nvmem/Kconfig b/drivers/nvmem/Kconfig > index f157b6d..e665e23 100644 > --- a/drivers/nvmem/Kconfig > +++ b/drivers/nvmem/Kconfig > @@ -8,3 +8,18 @@ menuconfig NVMEM > from both the Linux Kernel and the userspace. > > If unsure, say no. > + > +if NVMEM > + > +config QCOM_QFPROM > + tristate "QCOM QFPROM Support" > + depends on ARCH_QCOM || COMPILE_TEST? > + select REGMAP_MMIO > + help > + Say y here to enable QFPROM support. The QFPROM provides access > + functions for QFPROM data to rest of the drivers via nvmem interface. > + > + This driver can also be built as a module. If so, the module > + will be called nvmem-qfprom. > + > +endif > diff --git a/drivers/nvmem/Makefile b/drivers/nvmem/Makefile > index f694cfc..caea611 100644 > --- a/drivers/nvmem/Makefile > +++ b/drivers/nvmem/Makefile > @@ -5,3 +5,7 @@ > obj-$(CONFIG_NVMEM) += nvmem_core.o > nvmem_core-y := core.o > nvmem_core-y += nvmem-mmio.o > + > +# Devices > +obj-$(CONFIG_QCOM_QFPROM) += nvmem_qfprom.o > +nvmem_qfprom-y := qfprom.o Why not just obj-$(CONFIG_QCOM_QFPROM) += nvmem_qfprom.o ? > diff --git a/drivers/nvmem/qfprom.c b/drivers/nvmem/qfprom.c > new file mode 100644 > index 0000000..5ea84bb > --- /dev/null > +++ b/drivers/nvmem/qfprom.c > @@ -0,0 +1,51 @@ > +/* > + * Copyright (C) 2015 Srinivas Kandagatla <srinivas.kandagatla@xxxxxxxxxx> > + * > + * This program is free software; you can redistribute it and/or modify > + * it under the terms of the GNU General Public License version 2 and > + * only version 2 as published by the Free Software Foundation. > + * > + * This program is distributed in the hope that it will be useful, > + * but WITHOUT ANY WARRANTY; without even the implied warranty of > + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the > + * GNU General Public License for more details. > + */ > + > +#include <linux/module.h> > +#include <linux/of.h> > +#include "nvmem-mmio.h" > + > +static struct regmap_config qfprom_regmap_config = { const? > + .reg_bits = 32, > + .val_bits = 8, > + .reg_stride = 1, > +}; > + > +static struct nvmem_config econfig = { const? > + .name = "qfprom", > + .owner = THIS_MODULE, > +}; > + > +static struct nvmem_mmio_data qfprom_data = { const? > + .nvmem_config = &econfig, > + .regmap_config = &qfprom_regmap_config, > +}; > -- Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, a Linux Foundation Collaborative Project -- To unsubscribe from this list: send the line "unsubscribe linux-api" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html