public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Rob Herring <robh@kernel.org>
To: Mathieu Malaterre <malat@debian.org>
Cc: Marcin Nowakowski <marcin.nowakowski@mips.com>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Zubair.Kakakhel@mips.com,
	PrasannaKumar Muralidharan <prasannatsmkumar@gmail.com>,
	Srinivas Kandagatla <srinivas.kandagatla@linaro.org>,
	Mark Rutland <mark.rutland@arm.com>,
	Ralf Baechle <ralf@linux-mips.org>,
	linux-kernel@vger.kernel.org, devicetree@vger.kernel.org,
	linux-mips@linux-mips.org
Subject: Re: [PATCH v2 1/2] nvmem: add driver for JZ4780 efuse
Date: Wed, 3 Jan 2018 14:02:11 -0600	[thread overview]
Message-ID: <20180103200211.u56tqesyumsofoff@rob-hp-laptop> (raw)
In-Reply-To: <20171228212954.2922-2-malat@debian.org>

On Thu, Dec 28, 2017 at 10:29:52PM +0100, Mathieu Malaterre wrote:
> From: PrasannaKumar Muralidharan <prasannatsmkumar@gmail.com>
> 
> This patch brings support for the JZ4780 efuse. Currently it only expose
> a read only access to the entire 8K bits efuse memory.
> 
> Tested-by: Mathieu Malaterre <malat@debian.org>
> Signed-off-by: PrasannaKumar Muralidharan <prasannatsmkumar@gmail.com>
> Signed-off-by: Mathieu Malaterre <malat@debian.org>
> ---
>  .../ABI/testing/sysfs-driver-jz4780-efuse          |  16 ++
>  .../bindings/nvmem/ingenic,jz4780-efuse.txt        |  17 ++

Please split bindings to separate patch.

>  MAINTAINERS                                        |   5 +
>  arch/mips/boot/dts/ingenic/jz4780.dtsi             |  40 ++-

dts files should also be separate.

>  drivers/nvmem/Kconfig                              |  10 +
>  drivers/nvmem/Makefile                             |   2 +
>  drivers/nvmem/jz4780-efuse.c                       | 305 +++++++++++++++++++++
>  7 files changed, 383 insertions(+), 12 deletions(-)
>  create mode 100644 Documentation/ABI/testing/sysfs-driver-jz4780-efuse
>  create mode 100644 Documentation/devicetree/bindings/nvmem/ingenic,jz4780-efuse.txt
>  create mode 100644 drivers/nvmem/jz4780-efuse.c
> 
> diff --git a/Documentation/ABI/testing/sysfs-driver-jz4780-efuse b/Documentation/ABI/testing/sysfs-driver-jz4780-efuse
> new file mode 100644
> index 000000000000..bb6f5d6ceea0
> --- /dev/null
> +++ b/Documentation/ABI/testing/sysfs-driver-jz4780-efuse
> @@ -0,0 +1,16 @@
> +What:		/sys/devices/*/<our-device>/nvmem
> +Date:		December 2017
> +Contact:	PrasannaKumar Muralidharan <prasannatsmkumar@gmail.com>
> +Description:	read-only access to the efuse on the Ingenic JZ4780 SoC
> +		The SoC has a one time programmable 8K efuse that is
> +		split into segments. The driver supports read only.
> +		The segments are
> +		0x000   64 bit Random Number
> +		0x008  128 bit Ingenic Chip ID
> +		0x018  128 bit Customer ID
> +		0x028 3520 bit Reserved
> +		0x1E0    8 bit Protect Segment
> +		0x1E1 2296 bit HDMI Key
> +		0x300 2048 bit Security boot key

Why do these need to be exposed to userspace?

sysfs is 1 value per file and this is lots of different things. 

We already have ways to feed random data (entropy) to the system. And we 
have a way to expose SoC ID info to userspace (socdev).

> +Users:		any user space application which wants to read the Chip
> +		and Customer ID
> diff --git a/Documentation/devicetree/bindings/nvmem/ingenic,jz4780-efuse.txt b/Documentation/devicetree/bindings/nvmem/ingenic,jz4780-efuse.txt
> new file mode 100644
> index 000000000000..cd6d67ec22fc
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/nvmem/ingenic,jz4780-efuse.txt
> @@ -0,0 +1,17 @@
> +Ingenic JZ EFUSE driver bindings
> +
> +Required properties:
> +- "compatible"		Must be set to "ingenic,jz4780-efuse"
> +- "reg"			Register location and length
> +- "clocks"		Handle for the ahb clock for the efuse.
> +- "clock-names"		Must be "bus_clk"
> +
> +Example:
> +
> +efuse: efuse@134100d0 {
> +	compatible = "ingenic,jz4780-efuse";
> +	reg = <0x134100D0 0xFF>;
> +
> +	clocks = <&cgu JZ4780_CLK_AHB2>;
> +	clock-names = "bus_clk";
> +};
> diff --git a/MAINTAINERS b/MAINTAINERS
> index a6e86e20761e..7a050c20c533 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -6902,6 +6902,11 @@ M:	Zubair Lutfullah Kakakhel <Zubair.Kakakhel@imgtec.com>
>  S:	Maintained
>  F:	drivers/dma/dma-jz4780.c
>  
> +INGENIC JZ4780 EFUSE Driver
> +M:	PrasannaKumar Muralidharan <prasannatsmkumar@gmail.com>
> +S:	Maintained
> +F:	drivers/nvmem/jz4780-efuse.c

Binding file?

> +
>  INGENIC JZ4780 NAND DRIVER
>  M:	Harvey Hunt <harveyhuntnexus@gmail.com>
>  L:	linux-mtd@lists.infradead.org
> diff --git a/arch/mips/boot/dts/ingenic/jz4780.dtsi b/arch/mips/boot/dts/ingenic/jz4780.dtsi
> index 9b5794667aee..3fb9d916a2ea 100644
> --- a/arch/mips/boot/dts/ingenic/jz4780.dtsi
> +++ b/arch/mips/boot/dts/ingenic/jz4780.dtsi
> @@ -224,21 +224,37 @@
>  		reg = <0x10002000 0x100>;
>  	};
>  
> -	nemc: nemc@13410000 {
> -		compatible = "ingenic,jz4780-nemc";
> -		reg = <0x13410000 0x10000>;
> -		#address-cells = <2>;
> +
> +	ahb2: ahb2 {
> +		compatible = "simple-bus";

This is an unrelated change and should be its own patch.

> +		#address-cells = <1>;
>  		#size-cells = <1>;
> -		ranges = <1 0 0x1b000000 0x1000000
> -			  2 0 0x1a000000 0x1000000
> -			  3 0 0x19000000 0x1000000
> -			  4 0 0x18000000 0x1000000
> -			  5 0 0x17000000 0x1000000
> -			  6 0 0x16000000 0x1000000>;
> +		ranges = <>;
> +
> +		nemc: nemc@13410000 {
> +			compatible = "ingenic,jz4780-nemc";
> +			reg = <0x13410000 0x10000>;
> +			#address-cells = <2>;
> +			#size-cells = <1>;
> +			ranges = <1 0 0x1b000000 0x1000000
> +				  2 0 0x1a000000 0x1000000
> +				  3 0 0x19000000 0x1000000
> +				  4 0 0x18000000 0x1000000
> +				  5 0 0x17000000 0x1000000
> +				  6 0 0x16000000 0x1000000>;
> +
> +			clocks = <&cgu JZ4780_CLK_NEMC>;
> +
> +			status = "disabled";
> +		};
>  
> -		clocks = <&cgu JZ4780_CLK_NEMC>;
> +		efuse: efuse@134100d0 {
> +			compatible = "ingenic,jz4780-efuse";
> +			reg = <0x134100d0 0xff>;

You are creating an overlapping region here with nemc above. Don't do 
that.

>  
> -		status = "disabled";
> +			clocks = <&cgu JZ4780_CLK_AHB2>;
> +			clock-names = "bus_clk";
> +		};
>  	};
>  
>  	bch: bch@134d0000 {

  parent reply	other threads:[~2018-01-03 20:02 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-12-28 21:29 [PATCH v2 0/2] Add efuse driver for Ingenic JZ4780 SoC Mathieu Malaterre
2017-12-28 21:29 ` [PATCH v2 1/2] nvmem: add driver for JZ4780 efuse Mathieu Malaterre
2017-12-29 12:35   ` Marcin Nowakowski
2018-01-02 12:02   ` Srinivas Kandagatla
2018-01-02 16:17     ` PrasannaKumar Muralidharan
2018-01-03 20:02   ` Rob Herring [this message]
2018-01-06 12:43     ` PrasannaKumar Muralidharan
2018-01-11 15:08       ` Rob Herring
2018-01-17 17:31         ` PrasannaKumar Muralidharan
2018-01-18  1:59           ` Rob Herring
2018-01-20  8:11         ` PrasannaKumar Muralidharan
2017-12-28 21:29 ` [PATCH v2 2/2] dts: Probe efuse for CI20 Mathieu Malaterre
2018-01-03 20:04   ` Rob Herring
2018-01-17 20:54   ` James Hogan
2018-01-02 12:01 ` [PATCH v2 0/2] Add efuse driver for Ingenic JZ4780 SoC Srinivas Kandagatla
2018-01-02 16:17   ` PrasannaKumar Muralidharan
2018-01-02 17:58     ` Srinivas Kandagatla

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20180103200211.u56tqesyumsofoff@rob-hp-laptop \
    --to=robh@kernel.org \
    --cc=Zubair.Kakakhel@mips.com \
    --cc=devicetree@vger.kernel.org \
    --cc=gregkh@linuxfoundation.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mips@linux-mips.org \
    --cc=malat@debian.org \
    --cc=marcin.nowakowski@mips.com \
    --cc=mark.rutland@arm.com \
    --cc=prasannatsmkumar@gmail.com \
    --cc=ralf@linux-mips.org \
    --cc=srinivas.kandagatla@linaro.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox