[PATCH v2 4.19.y-cip 0/7] Add RPC-IF driver for RZ/G2x SoC's
Lad Prabhakar
Hi Nobuhiro, Pavel,
This patch series adds SPI driver for the Renesas RPC-IF. Alongside relevant changes for spi-mem have been also backported. This enables accessing SPI flash chip connected to RPC-IF on RZ/G2x boards. We currently only aim to backport just the driver hence there are no changes to dts/i files. The driver has been tested on RZ/G2{EM} with all the required dts/i changes [1]. Currently we are upstreaming clock [2] and pinctrl [3] changes required for RPC-IF interface on RZ/G2x SoC's once that hits v5.11 we shall backport it. All the patches have been cherry picked from Linux 5.10-rc5. [1] https://github.com/prabhakarlad/cip/commits/master [2] https://patchwork.kernel.org/project/linux-renesas-soc/ list/?series=365697&archive=both&state=* [3] https://patchwork.kernel.org/project/linux-renesas-soc/ list/?series=387535&archive=both&state=* Changes for v2: * Patches {1, 3, 4}/7 unchanged * Patch 2/7 * Fixed reference leak for OF node in rpcif_probe() * Fixed overwriting return value in error path of rpcif_manual_xfer() * Replaced C++ style comment with C style * Replaced tab with a space between struct and struct name * Fixed a typo in commit message (s/absract/abstract) * Patch 5/7 * Fixed reference leak in spi_mem_access_start for PM * Patch 6/7 * Return early in spi_mem_dirmap_dirmap_{read/write} * Patch 7/7 * Replaced C++ style comment with C style * Used __maybe_unused for rpcif_spi_{suspend,resume} and dropped CONFIG_PM_SLEEP ifdef checks * Elaborated the description for SPI_RPCIF config * Dropped the label err_put_ctlr from rpc_spi_probe() Cheers, Prabhakar Boris Brezillon (3): spi: spi-mem: Add SPI_MEM_NO_DATA to the spi_mem_data_dir enum spi: spi-mem: Split spi_mem_exec_op() code spi: spi-mem: Add a new API to support direct mapping Naga Sureshkumar Relli (1): spi: spi-mem: export spi_mem_default_supports_op() Sergei Shtylyov (3): dt-bindings: memory: document Renesas RPC-IF bindings memory: add Renesas RPC-IF driver spi: add Renesas RPC-IF driver .../memory-controllers/renesas,rpc-if.yaml | 88 +++ drivers/memory/Kconfig | 9 + drivers/memory/Makefile | 1 + drivers/memory/renesas-rpc-if.c | 606 ++++++++++++++++++ drivers/spi/Kconfig | 8 + drivers/spi/Makefile | 1 + drivers/spi/spi-mem.c | 274 +++++++- drivers/spi/spi-rpc-if.c | 208 ++++++ include/linux/spi/spi-mem.h | 93 +++ include/memory/renesas-rpc-if.h | 87 +++ 10 files changed, 1351 insertions(+), 24 deletions(-) create mode 100644 Documentation/devicetree/bindings/memory-controllers/renesas,rpc-if.yaml create mode 100644 drivers/memory/renesas-rpc-if.c create mode 100644 drivers/spi/spi-rpc-if.c create mode 100644 include/memory/renesas-rpc-if.h -- 2.25.1
|
|
Re: [PATCH] dt-bindings: PCI: rcar: Add device tree support for r8a7742
Pavel Machek
Hi!
From: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com> Sure, we can apply this (I assume it is for 4.4)? But it will not really add any support, it just documents the binding... so I assume this should go into series with patches that actually change the dts (and probably tweak the drivers)? Best regards, Pavel diff --git a/Documentation/devicetree/bindings/pci/rcar-pci.txt b/Documentation/devicetree/bindings/pci/rcar-pci.txt-- DENX Software Engineering GmbH, Managing Director: Wolfgang Denk HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
|
|
[PATCH] dt-bindings: PCI: rcar: Add device tree support for r8a7742
Biju Das <biju.das.jz@...>
From: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
commit d16d538ff49145b153976bd8e124116d369db266 upstream. Add support for r8a7742. The Renesas RZ/G1H (R8A7742) PCIe controller is identical to the R-Car Gen2 family. Link: https://lore.kernel.org/r/20200810174156.30880-2-prabhakar.mahadev-lad.rj@bp.renesas.com Signed-off-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com> Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com> Reviewed-by: Chris Paterson <Chris.Paterson2@renesas.com> Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be> Reviewed-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com> Acked-by: Rob Herring <robh@kernel.org> Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com> --- Documentation/devicetree/bindings/pci/rcar-pci.txt | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Documentation/devicetree/bindings/pci/rcar-pci.txt b/Documentation/devicetree/bindings/pci/rcar-pci.txt index bedfdc122543..8a3d8b5be515 100644 --- a/Documentation/devicetree/bindings/pci/rcar-pci.txt +++ b/Documentation/devicetree/bindings/pci/rcar-pci.txt @@ -1,7 +1,8 @@ * Renesas R-Car PCIe interface Required properties: -compatible: "renesas,pcie-r8a7743" for the R8A7743 SoC; +compatible: "renesas,pcie-r8a7742" for the R8A7742 SoC; + "renesas,pcie-r8a7743" for the R8A7743 SoC; "renesas,pcie-r8a7779" for the R8A7779 SoC; "renesas,pcie-r8a7790" for the R8A7790 SoC; "renesas,pcie-r8a7791" for the R8A7791 SoC; -- 2.17.1
|
|
[PATCH] dt-bindings: PCI: rcar: Add device tree support for r8a7742
Biju Das <biju.das.jz@...>
From: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
commit d16d538ff49145b153976bd8e124116d369db266 upstream. Add support for r8a7742. The Renesas RZ/G1H (R8A7742) PCIe controller is identical to the R-Car Gen2 family. Link: https://lore.kernel.org/r/20200810174156.30880-2-prabhakar.mahadev-lad.rj@bp.renesas.com Signed-off-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com> Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com> Reviewed-by: Chris Paterson <Chris.Paterson2@renesas.com> Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be> Reviewed-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com> Acked-by: Rob Herring <robh@kernel.org> Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com> --- Documentation/devicetree/bindings/pci/rcar-pci.txt | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Documentation/devicetree/bindings/pci/rcar-pci.txt b/Documentation/devicetree/bindings/pci/rcar-pci.txt index bedfdc122543..8a3d8b5be515 100644 --- a/Documentation/devicetree/bindings/pci/rcar-pci.txt +++ b/Documentation/devicetree/bindings/pci/rcar-pci.txt @@ -1,7 +1,8 @@ * Renesas R-Car PCIe interface Required properties: -compatible: "renesas,pcie-r8a7743" for the R8A7743 SoC; +compatible: "renesas,pcie-r8a7742" for the R8A7742 SoC; + "renesas,pcie-r8a7743" for the R8A7743 SoC; "renesas,pcie-r8a7779" for the R8A7779 SoC; "renesas,pcie-r8a7790" for the R8A7790 SoC; "renesas,pcie-r8a7791" for the R8A7791 SoC; -- 2.17.1
|
|
[PATCH 4.4.y-cip 9/9] ARM: dts: r8a7742-iwg21d-q7: Enable HSUSB, USB2.0 and xHCI
Biju Das <biju.das.jz@...>
From: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
commit eb302bb9c7ab9bbf8358b97b5f8b1c363af48239 upstream. Enable support for HSUSB, USB2.0 and xHCI on iWave RZ/G1H carrier board. Signed-off-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com> Reviewed-by: Marian-Cristian Rotariu <marian-cristian.rotariu.rb@bp.renesas.com> Reviewed-by: Biju Das <biju.das.jz@bp.renesas.com> Link: https://lore.kernel.org/r/1595005225-11519-3-git-send-email-prabhakar.mahadev-lad.rj@bp.renesas.com Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> [biju: sorted the nodes as per mainline] Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com> --- arch/arm/boot/dts/r8a7742-iwg21d-q7.dts | 42 +++++++++++++++++++++++++ 1 file changed, 42 insertions(+) diff --git a/arch/arm/boot/dts/r8a7742-iwg21d-q7.dts b/arch/arm/boot/dts/r8a7742-iwg21d-q7.dts index 4adcf97ae7c4..958edef2004c 100644 --- a/arch/arm/boot/dts/r8a7742-iwg21d-q7.dts +++ b/arch/arm/boot/dts/r8a7742-iwg21d-q7.dts @@ -150,6 +150,12 @@ }; }; +&hsusb { + pinctrl-0 = <&usb0_pins>; + pinctrl-names = "default"; + status = "okay"; +}; + &msiof0 { pinctrl-0 = <&msiof0_pins>; pinctrl-names = "default"; @@ -176,6 +182,24 @@ }; }; +&pci0 { + pinctrl-0 = <&usb0_pins>; + pinctrl-names = "default"; + /* Disable hsusb to enable USB2.0 host mode support on J2 */ + /* status = "okay"; */ +}; + +&pci1 { + pinctrl-0 = <&usb1_pins>; + pinctrl-names = "default"; + status = "okay"; +}; + +&pci2 { + /* Disable xhci to enable USB2.0 host mode support on J23 bottom port */ + /* status = "okay"; */ +}; + &pcie_bus_clk { clock-frequency = <100000000>; }; @@ -224,6 +248,16 @@ groups = "ssi34_ctrl", "ssi3_data", "ssi4_data"; function = "ssi"; }; + + usb0_pins: usb0 { + groups = "usb0"; + function = "usb0"; + }; + + usb1_pins: usb1 { + groups = "usb1_pwen"; + function = "usb1"; + }; }; &rcar_sound { @@ -268,3 +302,11 @@ &ssi4 { shared-pin; }; + +&usbphy { + status = "okay"; +}; + +&xhci { + status = "okay"; +}; -- 2.17.1
|
|
[PATCH 4.4.y-cip 8/9] pinctrl: sh-pfc: r8a7790: Add USB1 PWEN pin and group
Biju Das <biju.das.jz@...>
From: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
commit 417e24986935f6bd6afa38010cc981cf4d7a7bef upstream. Add USB1 PWEN pin and group for USB1 interface. Signed-off-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com> Reviewed-by: Biju Das <biju.das.jz@bp.renesas.com> Link: https://lore.kernel.org/r/1595005225-11519-2-git-send-email-prabhakar.mahadev-lad.rj@bp.renesas.com Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> [biju: updated pin group common index] Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com> --- drivers/pinctrl/sh-pfc/pfc-r8a7790.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/drivers/pinctrl/sh-pfc/pfc-r8a7790.c b/drivers/pinctrl/sh-pfc/pfc-r8a7790.c index d87f9dbbb302..f85bd1623d46 100644 --- a/drivers/pinctrl/sh-pfc/pfc-r8a7790.c +++ b/drivers/pinctrl/sh-pfc/pfc-r8a7790.c @@ -3710,6 +3710,13 @@ static const unsigned int usb1_pins[] = { static const unsigned int usb1_mux[] = { USB1_PWEN_MARK, USB1_OVC_MARK, }; +static const unsigned int usb1_pwen_pins[] = { + /* PWEN */ + RCAR_GP_PIN(5, 20), +}; +static const unsigned int usb1_pwen_mux[] = { + USB1_PWEN_MARK, +}; /* - USB2 ------------------------------------------------------------------- */ static const unsigned int usb2_pins[] = { /* PWEN, OVC */ @@ -4038,7 +4045,7 @@ static const unsigned int vin3_clk_mux[] = { }; static const struct { - struct sh_pfc_pin_group common[297]; + struct sh_pfc_pin_group common[298]; struct sh_pfc_pin_group automotive[1]; } pinmux_groups = { .common = { @@ -4300,6 +4307,7 @@ static const struct { SH_PFC_PIN_GROUP(usb0), SH_PFC_PIN_GROUP(usb0_ovc_vbus), SH_PFC_PIN_GROUP(usb1), + SH_PFC_PIN_GROUP(usb1_pwen), SH_PFC_PIN_GROUP(usb2), VIN_DATA_PIN_GROUP(vin0_data, 24), VIN_DATA_PIN_GROUP(vin0_data, 20), @@ -4764,6 +4772,7 @@ static const char * const usb0_groups[] = { static const char * const usb1_groups[] = { "usb1", + "usb1_pwen", }; static const char * const usb2_groups[] = { -- 2.17.1
|
|
[PATCH 4.4.y-cip 7/9] ARM: dts: r8a7742: Add XHCI support
Biju Das <biju.das.jz@...>
From: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
commit ab586be87ed2cc94701b1ae70956ae1fad6ae992 upstream. Add XHCI support to R8A7742 SoC DT. Signed-off-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com> Reviewed-by: Marian-Cristian Rotariu <marian-cristian.rotariu.rb@bp.renesas.com> Link: https://lore.kernel.org/r/1590356277-19993-9-git-send-email-prabhakar.mahadev-lad.rj@bp.renesas.com Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> [biju: changed clocks and power-domain properties, removed resets property] Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com> --- arch/arm/boot/dts/r8a7742.dtsi | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/arch/arm/boot/dts/r8a7742.dtsi b/arch/arm/boot/dts/r8a7742.dtsi index 5c516e17ca54..0da46a2edddd 100644 --- a/arch/arm/boot/dts/r8a7742.dtsi +++ b/arch/arm/boot/dts/r8a7742.dtsi @@ -1612,6 +1612,18 @@ dma-channels = <13>; }; + xhci: usb@ee000000 { + compatible = "renesas,xhci-r8a7742", + "renesas,rcar-gen2-xhci"; + reg = <0 0xee000000 0 0xc00>; + interrupts = <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>; + clocks = <&mstp3_clks R8A7742_CLK_SSUSB>; + power-domains = <&cpg_clocks>; + phys = <&usb2 1>; + phy-names = "usb"; + status = "disabled"; + }; + pci0: pci@ee090000 { compatible = "renesas,pci-r8a7742", "renesas,pci-rcar-gen2"; -- 2.17.1
|
|
[PATCH 4.4.y-cip 6/9] usb: host: xhci-plat: Add r8a7742 support
Biju Das <biju.das.jz@...>
This patch adds xhci r8a7742 driver support.
There are lot of changes between upstream and 4.4 kernel and we cannot cleanly backport the changes from upstream. This patch is similar to commit d09ccbb73386 ("usb: host: xhci-plat: Add r8a7743 support") present in cip kernel. Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com> --- drivers/usb/host/xhci-plat.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/usb/host/xhci-plat.c b/drivers/usb/host/xhci-plat.c index 26e0cd535deb..46e69e2db1fa 100644 --- a/drivers/usb/host/xhci-plat.c +++ b/drivers/usb/host/xhci-plat.c @@ -54,6 +54,7 @@ static int xhci_plat_setup(struct usb_hcd *hcd) if (of_device_is_compatible(of_node, "renesas,xhci-r8a7790") || of_device_is_compatible(of_node, "renesas,xhci-r8a7791") || + of_device_is_compatible(of_node, "renesas,xhci-r8a7742") || of_device_is_compatible(of_node, "renesas,xhci-r8a7743") || of_device_is_compatible(of_node, "renesas,xhci-r8a7744")) { ret = xhci_rcar_init_quirk(hcd); @@ -70,6 +71,7 @@ static int xhci_plat_start(struct usb_hcd *hcd) if (of_device_is_compatible(of_node, "renesas,xhci-r8a7790") || of_device_is_compatible(of_node, "renesas,xhci-r8a7791") || + of_device_is_compatible(of_node, "renesas,xhci-r8a7742") || of_device_is_compatible(of_node, "renesas,xhci-r8a7743") || of_device_is_compatible(of_node, "renesas,xhci-r8a7744")) xhci_rcar_start(hcd); @@ -271,6 +273,7 @@ static const struct of_device_id usb_xhci_of_match[] = { { .compatible = "xhci-platform" }, { .compatible = "marvell,armada-375-xhci"}, { .compatible = "marvell,armada-380-xhci"}, + { .compatible = "renesas,xhci-r8a7742"}, { .compatible = "renesas,xhci-r8a7743"}, { .compatible = "renesas,xhci-r8a7744"}, { .compatible = "renesas,xhci-r8a7790"}, -- 2.17.1
|
|
[PATCH 4.4.y-cip 5/9] dt-bindings: usb: usb-xhci: Document r8a7742 support
Biju Das <biju.das.jz@...>
From: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
commit 935796968ff8b69cb0c9f18c427899ebafd83509 upstream. Document r8a7742 xhci support. The driver will use the fallback compatible string "renesas,rcar-gen2-xhci", therefore no driver change is needed. Signed-off-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com> Reviewed-by: Marian-Cristian Rotariu <marian-cristian.rotariu.rb@bp.renesas.com> Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be> Signed-off-by: Rob Herring <robh@kernel.org> Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com> --- Documentation/devicetree/bindings/usb/usb-xhci.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Documentation/devicetree/bindings/usb/usb-xhci.txt b/Documentation/devicetree/bindings/usb/usb-xhci.txt index bf5192b7348e..2cd959287fe9 100644 --- a/Documentation/devicetree/bindings/usb/usb-xhci.txt +++ b/Documentation/devicetree/bindings/usb/usb-xhci.txt @@ -3,8 +3,8 @@ USB xHCI controllers Required properties: - compatible: should be one of "generic-xhci", "marvell,armada-375-xhci", "marvell,armada-380-xhci", - "renesas,xhci-r8a7790", "renesas,xhci-r8a7791", "renesas,xhci-r8a7743", - "renesas,xhci-r8a7744" + "renesas,xhci-r8a7790", "renesas,xhci-r8a7791", "renesas,xhci-r8a7742" + "renesas,xhci-r8a7743", "renesas,xhci-r8a7744" (deprecated: "xhci-platform"). - reg: should contain address and length of the standard XHCI register set for the device. -- 2.17.1
|
|
[PATCH 4.4.y-cip 4/9] ARM: dts: r8a7742: Add USB-DMAC and HSUSB device nodes
Biju Das <biju.das.jz@...>
From: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
commit b8618745829de50563470cd1e58c7ea10d6481b6 upstream. Add USB DMAC and HSUSB device nodes on RZ/G1H SoC dtsi. Signed-off-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com> Reviewed-by: Marian-Cristian Rotariu <marian-cristian.rotariu.rb@bp.renesas.com> Link: https://lore.kernel.org/r/1590356277-19993-8-git-send-email-prabhakar.mahadev-lad.rj@bp.renesas.com Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> [biju: changed clocks and power-domain properties, removed resets property] Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com> --- arch/arm/boot/dts/r8a7742.dtsi | 42 ++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) diff --git a/arch/arm/boot/dts/r8a7742.dtsi b/arch/arm/boot/dts/r8a7742.dtsi index b25b719fbd2b..5c516e17ca54 100644 --- a/arch/arm/boot/dts/r8a7742.dtsi +++ b/arch/arm/boot/dts/r8a7742.dtsi @@ -964,6 +964,22 @@ status = "disabled"; }; + hsusb: usb@e6590000 { + compatible = "renesas,usbhs-r8a7742", + "renesas,rcar-gen2-usbhs"; + reg = <0 0xe6590000 0 0x100>; + interrupts = <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>; + clocks = <&mstp7_clks R8A7742_CLK_HSUSB>; + dmas = <&usb_dmac0 0>, <&usb_dmac0 1>, + <&usb_dmac1 0>, <&usb_dmac1 1>; + dma-names = "ch0", "ch1", "ch2", "ch3"; + power-domains = <&cpg_clocks>; + renesas,buswait = <4>; + phys = <&usb0 1>; + phy-names = "usb"; + status = "disabled"; + }; + usbphy: usb-phy@e6590100 { compatible = "renesas,usb-phy-r8a7742", "renesas,rcar-gen2-usb-phy"; @@ -985,6 +1001,32 @@ }; }; + usb_dmac0: dma-controller@e65a0000 { + compatible = "renesas,r8a7742-usb-dmac", + "renesas,usb-dmac"; + reg = <0 0xe65a0000 0 0x100>; + interrupts = <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>; + interrupt-names = "ch0", "ch1"; + clocks = <&mstp3_clks R8A7742_CLK_USBDMAC0>; + power-domains = <&cpg_clocks>; + #dma-cells = <1>; + dma-channels = <2>; + }; + + usb_dmac1: dma-controller@e65b0000 { + compatible = "renesas,r8a7742-usb-dmac", + "renesas,usb-dmac"; + reg = <0 0xe65b0000 0 0x100>; + interrupts = <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>; + interrupt-names = "ch0", "ch1"; + clocks = <&mstp3_clks R8A7742_CLK_USBDMAC1>; + power-domains = <&cpg_clocks>; + #dma-cells = <1>; + dma-channels = <2>; + }; + dmac0: dma-controller@e6700000 { compatible = "renesas,dmac-r8a7742", "renesas,rcar-dmac"; -- 2.17.1
|
|
[PATCH 4.4.y-cip 3/9] dt-bindings: usb: renesas,usbhs: Add support for r8a7742
Biju Das <biju.das.jz@...>
From: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
commit c092e1356b378e8567f9d6404ac27b57a4f47ae6 upstream. Document support for RZ/G1H (R8A7742) SoC. Signed-off-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com> Reviewed-by: Marian-Cristian Rotariu <marian-cristian.rotariu.rb@bp.renesas.com> Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be> Signed-off-by: Rob Herring <robh@kernel.org> [biju: Patched text version of bindings file] Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com> --- Documentation/devicetree/bindings/usb/renesas_usbhs.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/Documentation/devicetree/bindings/usb/renesas_usbhs.txt b/Documentation/devicetree/bindings/usb/renesas_usbhs.txt index 5a26deea5b97..d0516953b9d2 100644 --- a/Documentation/devicetree/bindings/usb/renesas_usbhs.txt +++ b/Documentation/devicetree/bindings/usb/renesas_usbhs.txt @@ -3,6 +3,7 @@ Renesas Electronics USBHS driver Required properties: - compatible: Must contain one or more of the following: + - "renesas,usbhs-r8a7742" for r8a7742 (RZ/G1H) compatible device - "renesas,usbhs-r8a7743" for r8a7743 (RZ/G1M) compatible device - "renesas,usbhs-r8a7744" for r8a7744 (RZ/G1N) compatible device - "renesas,usbhs-r8a7745" for r8a7745 (RZ/G1E) compatible device -- 2.17.1
|
|
[PATCH 4.4.y-cip 2/9] ARM: dts: r8a7742: Add USB 2.0 host support
Biju Das <biju.das.jz@...>
From: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
commit 4bb19c91d38e36b81e92de3d9b4e61d9b8928b54 upstream. Describe internal PCI bridge devices, USB phy device and link PCI USB devices to USB phy. Signed-off-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com> Reviewed-by: Marian-Cristian Rotariu <marian-cristian.rotariu.rb@bp.renesas.com> Link: https://lore.kernel.org/r/1590356277-19993-7-git-send-email-prabhakar.mahadev-lad.rj@bp.renesas.com Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> [biju: changed clocks and power-domain properties, removed resets property] Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com> --- arch/arm/boot/dts/r8a7742.dtsi | 111 +++++++++++++++++++++++++++++++++ 1 file changed, 111 insertions(+) diff --git a/arch/arm/boot/dts/r8a7742.dtsi b/arch/arm/boot/dts/r8a7742.dtsi index d326602bee3f..b25b719fbd2b 100644 --- a/arch/arm/boot/dts/r8a7742.dtsi +++ b/arch/arm/boot/dts/r8a7742.dtsi @@ -964,6 +964,27 @@ status = "disabled"; }; + usbphy: usb-phy@e6590100 { + compatible = "renesas,usb-phy-r8a7742", + "renesas,rcar-gen2-usb-phy"; + reg = <0 0xe6590100 0 0x100>; + #address-cells = <1>; + #size-cells = <0>; + clocks = <&mstp7_clks R8A7742_CLK_HSUSB>; + clock-names = "usbhs"; + power-domains = <&cpg_clocks>; + status = "disabled"; + + usb0: usb-channel@0 { + reg = <0>; + #phy-cells = <1>; + }; + usb2: usb-channel@2 { + reg = <2>; + #phy-cells = <1>; + }; + }; + dmac0: dma-controller@e6700000 { compatible = "renesas,dmac-r8a7742", "renesas,rcar-dmac"; @@ -1549,6 +1570,96 @@ dma-channels = <13>; }; + pci0: pci@ee090000 { + compatible = "renesas,pci-r8a7742", + "renesas,pci-rcar-gen2"; + device_type = "pci"; + reg = <0 0xee090000 0 0xc00>, + <0 0xee080000 0 0x1100>; + interrupts = <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>; + clocks = <&mstp7_clks R8A7742_CLK_EHCI>; + power-domains = <&cpg_clocks>; + status = "disabled"; + + bus-range = <0 0>; + #address-cells = <3>; + #size-cells = <2>; + #interrupt-cells = <1>; + ranges = <0x02000000 0 0xee080000 0 0xee080000 0 0x00010000>; + interrupt-map-mask = <0xf800 0 0 0x7>; + interrupt-map = <0x0000 0 0 1 &gic GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>, + <0x0800 0 0 1 &gic GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>, + <0x1000 0 0 2 &gic GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>; + + usb@1,0 { + reg = <0x800 0 0 0 0>; + phys = <&usb0 0>; + phy-names = "usb"; + }; + + usb@2,0 { + reg = <0x1000 0 0 0 0>; + phys = <&usb0 0>; + phy-names = "usb"; + }; + }; + + pci1: pci@ee0b0000 { + compatible = "renesas,pci-r8a7742", + "renesas,pci-rcar-gen2"; + device_type = "pci"; + reg = <0 0xee0b0000 0 0xc00>, + <0 0xee0a0000 0 0x1100>; + interrupts = <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>; + clocks = <&mstp7_clks R8A7742_CLK_EHCI>; + power-domains = <&cpg_clocks>; + status = "disabled"; + + bus-range = <1 1>; + #address-cells = <3>; + #size-cells = <2>; + #interrupt-cells = <1>; + ranges = <0x02000000 0 0xee0a0000 0 0xee0a0000 0 0x00010000>; + interrupt-map-mask = <0xf800 0 0 0x7>; + interrupt-map = <0x0000 0 0 1 &gic GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>, + <0x0800 0 0 1 &gic GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>, + <0x1000 0 0 2 &gic GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>; + }; + + pci2: pci@ee0d0000 { + compatible = "renesas,pci-r8a7742", + "renesas,pci-rcar-gen2"; + device_type = "pci"; + clocks = <&mstp7_clks R8A7742_CLK_EHCI>; + power-domains = <&cpg_clocks>; + reg = <0 0xee0d0000 0 0xc00>, + <0 0xee0c0000 0 0x1100>; + interrupts = <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>; + status = "disabled"; + + bus-range = <2 2>; + #address-cells = <3>; + #size-cells = <2>; + #interrupt-cells = <1>; + ranges = <0x02000000 0 0xee0c0000 0 0xee0c0000 0 0x00010000>; + interrupt-map-mask = <0xf800 0 0 0x7>; + interrupt-map = <0x0000 0 0 1 &gic GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>, + <0x0800 0 0 1 &gic GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>, + <0x1000 0 0 2 &gic GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>; + + usb@1,0 { + reg = <0x20800 0 0 0 0>; + phys = <&usb2 0>; + phy-names = "usb"; + }; + + usb@2,0 { + reg = <0x21000 0 0 0 0>; + phys = <&usb2 0>; + phy-names = "usb"; + }; + }; + sdhi0: mmc@ee100000 { compatible = "renesas,sdhi-r8a7742", "renesas,rcar-gen2-sdhi"; -- 2.17.1
|
|
[PATCH 4.4.y-cip 1/9] dt-bindings: phy: rcar-gen2: Add r8a7742 support
Biju Das <biju.das.jz@...>
From: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
commit 9184450a95f6f446dc435cad9c5409c06373eaf1 upstream. Add USB PHY support for r8a7742 SoC. Renesas RZ/G1H (R8A7742) USB PHY is identical to the R-Car Gen2 family. Signed-off-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com> Reviewed-by: Marian-Cristian Rotariu <marian-cristian.rotariu.rb@bp.renesas.com> Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be> Signed-off-by: Rob Herring <robh@kernel.org> Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com> --- Documentation/devicetree/bindings/phy/rcar-gen2-phy.txt | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Documentation/devicetree/bindings/phy/rcar-gen2-phy.txt b/Documentation/devicetree/bindings/phy/rcar-gen2-phy.txt index 35c51d8bcd56..7b1672fb360f 100644 --- a/Documentation/devicetree/bindings/phy/rcar-gen2-phy.txt +++ b/Documentation/devicetree/bindings/phy/rcar-gen2-phy.txt @@ -4,7 +4,8 @@ This file provides information on what the device node for the R-Car generation 2 USB PHY contains. Required properties: -- compatible: "renesas,usb-phy-r8a7743" if the device is a part of R8A7743 SoC. +- compatible: "renesas,usb-phy-r8a7742" if the device is a part of R8A7742 SoC. + "renesas,usb-phy-r8a7743" if the device is a part of R8A7743 SoC. "renesas,usb-phy-r8a7744" if the device is a part of R8A7744 SoC. "renesas,usb-phy-r8a7745" if the device is a part of R8A7745 SoC. "renesas,usb-phy-r8a77470" if the device is a part of R8A77470 SoC. -- 2.17.1
|
|
[PATCH 4.4.y-cip 0/9] Add USB[2.0|3.0] support
Biju Das <biju.das.jz@...>
This patch series aims to add USB2.0/USB3.0 support for iWave
RZ/G1H platform. All the patches in this series are cherrypicked from mainline and it is based linux-4.4.y-cip. Biju Das (1): usb: host: xhci-plat: Add r8a7742 support Lad Prabhakar (8): dt-bindings: phy: rcar-gen2: Add r8a7742 support ARM: dts: r8a7742: Add USB 2.0 host support dt-bindings: usb: renesas,usbhs: Add support for r8a7742 ARM: dts: r8a7742: Add USB-DMAC and HSUSB device nodes dt-bindings: usb: usb-xhci: Document r8a7742 support ARM: dts: r8a7742: Add XHCI support pinctrl: sh-pfc: r8a7790: Add USB1 PWEN pin and group ARM: dts: r8a7742-iwg21d-q7: Enable HSUSB, USB2.0 and xHCI .../devicetree/bindings/phy/rcar-gen2-phy.txt | 3 +- .../devicetree/bindings/usb/renesas_usbhs.txt | 1 + .../devicetree/bindings/usb/usb-xhci.txt | 4 +- arch/arm/boot/dts/r8a7742-iwg21d-q7.dts | 42 +++++ arch/arm/boot/dts/r8a7742.dtsi | 165 ++++++++++++++++++ drivers/pinctrl/sh-pfc/pfc-r8a7790.c | 11 +- drivers/usb/host/xhci-plat.c | 3 + 7 files changed, 225 insertions(+), 4 deletions(-) -- 2.17.1
|
|
Re: [PATCH 4.19.y-cip 0/2] Add sound support to R8A774E1 SoC
Lad Prabhakar
Hi Pavel,
toggle quoted messageShow quoted text
-----Original Message-----Thank you. Cheers, Prabhakar Best regards,
|
|
Re: [PATCH 4.19.y-cip 0/2] Add sound support to R8A774E1 SoC
Pavel Machek
Hi!
This patch series adds sound support to Renesas R8A774E1 SoC.Thanks, applied and pushed out. Best regards, Pavel -- DENX Software Engineering GmbH, Managing Director: Wolfgang Denk HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
|
|
Re: [PATCH 4.19.y-cip 2/7] memory: add Renesas RPC-IF driver
Pavel Machek
Hi!
For this series, maybe squashing is not neccessary. It is pretty goodWould be nice will make them inline and squash it in the current+void rpcif_enable_rpm(struct rpcif *rpc)Should these go to header as static inlines? as-is. Okay, that's some rather evil code. It should really beThird parameter in regmap_read_poll_timeout() is the variable in which value is read and the fourth parameter condition has to be tied with the third parameter (there are similar instance in the kernel).+static int wait_msg_xfer_end(struct rpcif *rpc)This can't be right. sts is used uninitialized here. REGMAP_READ_POLL_TIMEOUT, because it is macro with weird semantics. Best regards, Pavel -- DENX Software Engineering GmbH, Managing Director: Wolfgang Denk HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
|
|
Re: [PATCH 4.19.y-cip 7/7] spi: add Renesas RPC-IF driver
Lad Prabhakar
Hi Pavel,
toggle quoted messageShow quoted text
Thank you for the review.
-----Original Message-----Will do. Agreed shall fix that.+ error = spi_register_controller(ctlr);With just one user of the error exit, I'd avoid the goto. Agreed will replace that.+#ifdef CONFIG_PM_SLEEPCan you just add "__maybe_unused" annotation and avoid the ifdefs, Cheers, Prabhakar Best regards,
|
|
Re: [PATCH 4.19.y-cip 6/7] spi: spi-mem: Add a new API to support direct mapping
Lad Prabhakar
Hi Pavel,
toggle quoted messageShow quoted text
Thank you for the review.
-----Original Message-----Agreed. Ditto.+ } else if (ctlr->mem_ops && ctlr->mem_ops->dirmap_read) {and here. Agreed will fix that and squash the changes in current patch and post it as part of v2.+ } else {To help with if/else nesting. spi_mem_dirmap_write could use same Cheers, Prabhakar Best regards,
|
|
Re: [PATCH 4.19.y-cip 5/7] spi: spi-mem: Split spi_mem_exec_op() code
Lad Prabhakar
Hi Pavel,
toggle quoted messageShow quoted text
Thank you for the review.
-----Original Message-----Agreed (pm_runtime_put_noidle()). 😊+ mutex_lock(&ctlr->bus_lock_mutex);Plus hiding locking into function like this ... is quite Cheers, Prabhakar Best regards,
|
|