diff mbox series

[v2,2/2] dt-binding: spi: Document Renesas R-Car Gen3 RPC controller bindings

Message ID 1543828720-18345-3-git-send-email-masonccyang@mxic.com.tw (mailing list archive)
State Superseded
Headers show
Series spi: Add Renesas R-Car Gen3 RPC SPI driver | expand

Commit Message

Mason Yang Dec. 3, 2018, 9:18 a.m. UTC
Document the bindings used by the Renesas R-Car Gen3 RPC SPI controller.

Signed-off-by: Mason Yang <masonccyang@mxic.com.tw>
---
 .../devicetree/bindings/spi/spi-renesas-rpc.txt    | 35 ++++++++++++++++++++++
 1 file changed, 35 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/spi/spi-renesas-rpc.txt

Comments

Marek Vasut Dec. 4, 2018, 6:19 p.m. UTC | #1
On 12/03/2018 10:18 AM, Mason Yang wrote:
> Document the bindings used by the Renesas R-Car Gen3 RPC SPI controller.

RPC is SPI and HF controller, it is not a pure SPI controller.

How does this deal with the HF part ? Keep in mind the bindings are ABI
and it will be difficult to redo them later.

> Signed-off-by: Mason Yang <masonccyang@mxic.com.tw>
> ---
>  .../devicetree/bindings/spi/spi-renesas-rpc.txt    | 35 ++++++++++++++++++++++
>  1 file changed, 35 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/spi/spi-renesas-rpc.txt
> 
> diff --git a/Documentation/devicetree/bindings/spi/spi-renesas-rpc.txt b/Documentation/devicetree/bindings/spi/spi-renesas-rpc.txt
> new file mode 100644
> index 0000000..c6c6d9c
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/spi/spi-renesas-rpc.txt
> @@ -0,0 +1,35 @@
> +Renesas R-Car Gen3 RPC controller Device Tree Bindings
> +------------------------------------------------------
> +
> +Required properties:
> +- compatible: should be "renesas,r8a77995-rpc"
> +- #address-cells: should be 1
> +- #size-cells: should be 0
> +- reg: should contain 2 entries, one for the registers and one for the direct
> +       mapping area
> +- reg-names: should contain "rpc_regs" and "dirmap"
> +- interrupts: interrupt line connected to the RPC SPI controller

Not a SPI controller.

> +- clock-names: should contain "clk_rpc"
> +- clocks: should contain 1 entries for the module's clock
> +
> +Example:
> +
> +	rpc: spi@ee200000 {
> +		compatible = "renesas,r8a77995-rpc";
> +		reg = <0 0xee200000 0 0x8100>, <0 0x08000000 0 0x4000000>;
> +		reg-names = "rpc_regs", "dirmap";
> +		clocks = <&cpg CPG_MOD 917>;
> +		power-domains = <&sysc R8A77995_PD_ALWAYS_ON>;
> +		resets = <&cpg 917>;
> +		clock-names = "clk_rpc";
> +		#address-cells = <1>;
> +		#size-cells = <0>;
> +
> +		flash@0 {
> +			compatible = "jedec,spi-nor";
> +			reg = <0>;
> +			spi-max-frequency = <40000000>;
> +			spi-tx-bus-width = <1>;
> +			spi-rx-bus-width = <1>;
> +		};
> +	};
>
Marek Vasut Dec. 5, 2018, 12:53 p.m. UTC | #2
On 12/05/2018 09:39 AM, masonccyang@mxic.com.tw wrote:
> Hi Marek,

Hi,

>> "Marek Vasut" <marek.vasut@gmail.com>
>> 2018/12/05 上午 10:04
>>
>> To
>>
>> "Mason Yang" <masonccyang@mxic.com.tw>, broonie@kernel.org, linux-
>> kernel@vger.kernel.org, linux-spi@vger.kernel.org,
>> boris.brezillon@bootlin.com, linux-renesas-soc@vger.kernel.org,
>> "Geert Uytterhoeven" <geert+renesas@glider.be>,
>>
>> cc
>>
>> juliensu@mxic.com.tw, "Simon Horman" <horms@verge.net.au>,
>> zhengxunli@mxic.com.tw
>>
>> Subject
>>
>> Re: [PATCH v2 2/2] dt-binding: spi: Document Renesas R-Car Gen3 RPC
>> controller bindings
>>
>> On 12/03/2018 10:18 AM, Mason Yang wrote:
>> > Document the bindings used by the Renesas R-Car Gen3 RPC SPI controller.
>>
>> RPC is SPI and HF controller, it is not a pure SPI controller.
>>
>> How does this deal with the HF part ? Keep in mind the bindings are ABI
>> and it will be difficult to redo them later.
> 
> After checking HF datasheet,
> 512_MBIT_256_MBIT_128_MBIT_HYPERFLASH_FAMILY_Datasheet.pdf.
> 
> 
> 
> From my point of view,
> HyperFlash is a kind of standard NOR Flash with high-speed SPI interface.
> But I might be wrong.
It behaves as a Parallel CFI NOR internally, and so it fits and works
with the CFI NOR drivers (see the U-Boot driver), except the interface
between the HF controller and the chip is custom. It's not SPI per-se.
Sergei Shtylyov Dec. 5, 2018, 6:56 p.m. UTC | #3
On 12/04/2018 09:19 PM, Marek Vasut wrote:

>> Document the bindings used by the Renesas R-Car Gen3 RPC SPI controller.
> 
> RPC is SPI and HF controller, it is not a pure SPI controller.
> 
> How does this deal with the HF part ? Keep in mind the bindings are ABI
> and it will be difficult to redo them later.

   Perhaps we need a "mode" prop, maybe w/vendor prefix? 

>> Signed-off-by: Mason Yang <masonccyang@mxic.com.tw>
[...]

MBR, Sergei
Marek Vasut Dec. 5, 2018, 9:55 p.m. UTC | #4
On 12/05/2018 07:56 PM, Sergei Shtylyov wrote:
> On 12/04/2018 09:19 PM, Marek Vasut wrote:
> 
>>> Document the bindings used by the Renesas R-Car Gen3 RPC SPI controller.
>>
>> RPC is SPI and HF controller, it is not a pure SPI controller.
>>
>> How does this deal with the HF part ? Keep in mind the bindings are ABI
>> and it will be difficult to redo them later.
> 
>    Perhaps we need a "mode" prop, maybe w/vendor prefix? 

Or, like I said last time, discern it based on the DT subnode. It can be
either SPI NOR or CFI NOR.

>>> Signed-off-by: Mason Yang <masonccyang@mxic.com.tw>
> [...]
> 
> MBR, Sergei
>
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/spi/spi-renesas-rpc.txt b/Documentation/devicetree/bindings/spi/spi-renesas-rpc.txt
new file mode 100644
index 0000000..c6c6d9c
--- /dev/null
+++ b/Documentation/devicetree/bindings/spi/spi-renesas-rpc.txt
@@ -0,0 +1,35 @@ 
+Renesas R-Car Gen3 RPC controller Device Tree Bindings
+------------------------------------------------------
+
+Required properties:
+- compatible: should be "renesas,r8a77995-rpc"
+- #address-cells: should be 1
+- #size-cells: should be 0
+- reg: should contain 2 entries, one for the registers and one for the direct
+       mapping area
+- reg-names: should contain "rpc_regs" and "dirmap"
+- interrupts: interrupt line connected to the RPC SPI controller
+- clock-names: should contain "clk_rpc"
+- clocks: should contain 1 entries for the module's clock
+
+Example:
+
+	rpc: spi@ee200000 {
+		compatible = "renesas,r8a77995-rpc";
+		reg = <0 0xee200000 0 0x8100>, <0 0x08000000 0 0x4000000>;
+		reg-names = "rpc_regs", "dirmap";
+		clocks = <&cpg CPG_MOD 917>;
+		power-domains = <&sysc R8A77995_PD_ALWAYS_ON>;
+		resets = <&cpg 917>;
+		clock-names = "clk_rpc";
+		#address-cells = <1>;
+		#size-cells = <0>;
+
+		flash@0 {
+			compatible = "jedec,spi-nor";
+			reg = <0>;
+			spi-max-frequency = <40000000>;
+			spi-tx-bus-width = <1>;
+			spi-rx-bus-width = <1>;
+		};
+	};