From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751733AbdCCIRJ (ORCPT ); Fri, 3 Mar 2017 03:17:09 -0500 Received: from smtpfb2-g21.free.fr ([212.27.42.10]:53856 "EHLO smtpfb2-g21.free.fr" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751518AbdCCIRH (ORCPT ); Fri, 3 Mar 2017 03:17:07 -0500 From: Alban To: linux-kernel@vger.kernel.org Cc: devicetree@vger.kernel.org, linux-mtd@lists.infradead.org, Cyrille Pitchen , Richard Weinberger , Marek Vasut , Boris Brezillon , Brian Norris , David Woodhouse , Mark Rutland , Rob Herring , Maxime Ripard , Srinivas Kandagatla , Moritz Fischer , Alban Subject: [PATCH 0/3] mtd: Add support for reading MTD devices via the nvmem API Date: Thu, 2 Mar 2017 20:50:20 +0100 Message-Id: <1488484223-844-1-git-send-email-albeu@free.fr> X-Mailer: git-send-email 2.7.4 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi all, this is the followup to my "device data" patch[1] that add nvmem support to the MTD subsystem. I took a look at the work done by Moritz[2] but we had different goals. Moritz needed access to the MTD protection registers where I need access to the normal data. For my use-case we can just use the normal nvmem bindings and define the nvmem cells as children nodes of the MTD partitions. The only thing I added is the requirement for a `nvmem-provider` property in the partition to allow the driver to only register the required partitions. Note that nvmem cells currently can't be defined on the raw MTD devices as that would clash with the old partitions binding. I think it would be better to change the nvmem binding to require putting the cells in a dedicated subnode, like in the new partitions binding. Otherwise I just skipped Moritz's use-case as I don't know anything about the MTD protection registers. Finally I included a bug fix for the case where several nvmem devices without name are registered. Currently all devices get registered as `nvmem0` and the second registration fails. [1] http://www.mail-archive.com/linux-kernel@vger.kernel.org/msg1341549.html [2] https://patchwork.ozlabs.org/patch/626460/ Alban (3): doc: bindings: Add bindings documentation for mtd nvmem mtd: Add support for reading MTD devices via the nvmem API nvmem: core: Allow allocating several anonymous nvmem devices .../devicetree/bindings/nvmem/mtd-nvmem.txt | 29 +++++ drivers/mtd/Kconfig | 9 ++ drivers/mtd/Makefile | 1 + drivers/mtd/mtdnvmem.c | 121 +++++++++++++++++++++ drivers/nvmem/core.c | 3 +- 5 files changed, 162 insertions(+), 1 deletion(-) create mode 100644 Documentation/devicetree/bindings/nvmem/mtd-nvmem.txt create mode 100644 drivers/mtd/mtdnvmem.c -- 2.7.4