Commit 403936bb authored by Olof Johansson's avatar Olof Johansson

Merge tag 'renesas-dt-for-v4.10' of...

Merge tag 'renesas-dt-for-v4.10' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into next/dt

Renesas ARM Based SoC DT Updates for v4.10

Clean-Ups and Corrections:
* Removed Z clock from r8a7794 SoC; it is not present in hardware
* Use generic pinctrl properties in SDHI nodes in gose board
* Correct W=1 dtc warnings on r8a7794 SoC
* Correct DU reg property on r8a7779 SoC
* Correct SCIFB reg properties to cover all registers

Enhancements:
* Configure pinmuxing for the DU0 input clock on the Marzen board
* Enable VIN 0 - 2 on r8a7793 SoC
* Enable HDMI input on Koelsch and Lager boards
* Enable SDHI1 on rskrza1 board
* Add MMCIF nodes to r7s72100 SoC
* Add MSIOF clocks to r8a7792 SoC
* Enable UHS for SDHI 0 & 1 on koelsch and alt boards

* tag 'renesas-dt-for-v4.10' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas: (29 commits)
  ARM: dts: r8a7794: remove Z clock
  ARM: dts: r8a7779: marzen: Configure pinmuxing for the DU0 input clock
  ARM: dts: sh73a0: Remove skeleton.dtsi inclusion
  ARM: dts: r8a7740: Remove skeleton.dtsi inclusion
  ARM: dts: r8a7779: Remove skeleton.dtsi inclusion
  ARM: dts: r8a7778: Remove skeleton.dtsi inclusion
  ARM: dts: emev2: Remove skeleton.dtsi inclusion
  ARM: dts: r8a7779: Fix DU reg property
  ARM: dts: r8a7793: Enable VIN0-VIN2
  ARM: dts: koelsch: add HDMI input
  ARM: dts: lager: Add entries for VIN HDMI input support
  ARM: dts: rskrza1: add sdhi1 DT support
  ARM: dts: r7s72100: add sdhi to device tree
  ARM: dts: r8a7794: Fix W=1 dtc warnings
  ARM: dts: gose: use generic pinctrl properties in SDHI nodes
  ARM: dts: r7s72100: add sdhi clock to device tree
  ARM: dts: r7s72100: add mmcif to device tree
  ARM: dts: r8a7792: add MSIOF support
  ARM: dts: r8a7792: add MSIOF clocks
  ARM: dts: wheat: add DU support
  ...
Signed-off-by: default avatarOlof Johansson <olof@lixom.net>
parents 20e3ecd7 68cc085a
...@@ -8,13 +8,14 @@ ...@@ -8,13 +8,14 @@
* kind, whether express or implied. * kind, whether express or implied.
*/ */
#include "skeleton.dtsi"
#include <dt-bindings/interrupt-controller/arm-gic.h> #include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/interrupt-controller/irq.h> #include <dt-bindings/interrupt-controller/irq.h>
/ { / {
compatible = "renesas,emev2"; compatible = "renesas,emev2";
interrupt-parent = <&gic>; interrupt-parent = <&gic>;
#address-cells = <1>;
#size-cells = <1>;
aliases { aliases {
gpio0 = &gpio0; gpio0 = &gpio0;
......
...@@ -56,6 +56,11 @@ phy0: ethernet-phy@0 { ...@@ -56,6 +56,11 @@ phy0: ethernet-phy@0 {
}; };
}; };
&sdhi1 {
bus-width = <4>;
status = "okay";
};
&scif2 { &scif2 {
status = "okay"; status = "okay";
}; };
...@@ -117,6 +117,15 @@ mstp7_clks: mstp7_clks@fcfe0430 { ...@@ -117,6 +117,15 @@ mstp7_clks: mstp7_clks@fcfe0430 {
clock-output-names = "ether"; clock-output-names = "ether";
}; };
mstp8_clks: mstp8_clks@fcfe0434 {
#clock-cells = <1>;
compatible = "renesas,r7s72100-mstp-clocks", "renesas,cpg-mstp-clocks";
reg = <0xfcfe0434 4>;
clocks = <&p1_clk>;
clock-indices = <R7S72100_CLK_MMCIF>;
clock-output-names = "mmcif";
};
mstp9_clks: mstp9_clks@fcfe0438 { mstp9_clks: mstp9_clks@fcfe0438 {
#clock-cells = <1>; #clock-cells = <1>;
compatible = "renesas,r7s72100-mstp-clocks", "renesas,cpg-mstp-clocks"; compatible = "renesas,r7s72100-mstp-clocks", "renesas,cpg-mstp-clocks";
...@@ -140,6 +149,14 @@ R7S72100_CLK_SPI4 ...@@ -140,6 +149,14 @@ R7S72100_CLK_SPI4
>; >;
clock-output-names = "spi0", "spi1", "spi2", "spi3", "spi4"; clock-output-names = "spi0", "spi1", "spi2", "spi3", "spi4";
}; };
mstp12_clks: mstp12_clks@fcfe0444 {
#clock-cells = <1>;
compatible = "renesas,r7s72100-mstp-clocks", "renesas,cpg-mstp-clocks";
reg = <0xfcfe0444 4>;
clocks = <&p1_clk>, <&p1_clk>;
clock-indices = <R7S72100_CLK_SDHI1 R7S72100_CLK_SDHI0>;
clock-output-names = "sdhi1", "sdhi0";
};
}; };
cpus { cpus {
...@@ -441,4 +458,42 @@ ether: ethernet@e8203000 { ...@@ -441,4 +458,42 @@ ether: ethernet@e8203000 {
#size-cells = <0>; #size-cells = <0>;
status = "disabled"; status = "disabled";
}; };
mmcif: mmc@e804c800 {
compatible = "renesas,mmcif-r7s72100", "renesas,sh-mmcif";
reg = <0xe804c800 0x80>;
interrupts = <GIC_SPI 268 IRQ_TYPE_LEVEL_HIGH
GIC_SPI 269 IRQ_TYPE_LEVEL_HIGH
GIC_SPI 267 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&mstp8_clks R7S72100_CLK_MMCIF>;
reg-io-width = <4>;
bus-width = <8>;
status = "disabled";
};
sdhi0: sd@e804e000 {
compatible = "renesas,sdhi-r7s72100";
reg = <0xe804e000 0x100>;
interrupts = <GIC_SPI 270 IRQ_TYPE_LEVEL_HIGH
GIC_SPI 271 IRQ_TYPE_LEVEL_HIGH
GIC_SPI 272 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&mstp12_clks R7S72100_CLK_SDHI0>;
cap-sd-highspeed;
cap-sdio-irq;
status = "disabled";
};
sdhi1: sd@e804e800 {
compatible = "renesas,sdhi-r7s72100";
reg = <0xe804e800 0x100>;
interrupts = <GIC_SPI 273 IRQ_TYPE_LEVEL_HIGH
GIC_SPI 274 IRQ_TYPE_LEVEL_HIGH
GIC_SPI 275 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&mstp12_clks R7S72100_CLK_SDHI1>;
cap-sd-highspeed;
cap-sdio-irq;
status = "disabled";
};
}; };
...@@ -8,8 +8,6 @@ ...@@ -8,8 +8,6 @@
* kind, whether express or implied. * kind, whether express or implied.
*/ */
/include/ "skeleton.dtsi"
#include <dt-bindings/clock/r8a7740-clock.h> #include <dt-bindings/clock/r8a7740-clock.h>
#include <dt-bindings/interrupt-controller/arm-gic.h> #include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/interrupt-controller/irq.h> #include <dt-bindings/interrupt-controller/irq.h>
...@@ -17,6 +15,8 @@ ...@@ -17,6 +15,8 @@
/ { / {
compatible = "renesas,r8a7740"; compatible = "renesas,r8a7740";
interrupt-parent = <&gic>; interrupt-parent = <&gic>;
#address-cells = <1>;
#size-cells = <1>;
cpus { cpus {
#address-cells = <1>; #address-cells = <1>;
......
...@@ -14,8 +14,6 @@ ...@@ -14,8 +14,6 @@
* kind, whether express or implied. * kind, whether express or implied.
*/ */
/include/ "skeleton.dtsi"
#include <dt-bindings/clock/r8a7778-clock.h> #include <dt-bindings/clock/r8a7778-clock.h>
#include <dt-bindings/interrupt-controller/arm-gic.h> #include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/interrupt-controller/irq.h> #include <dt-bindings/interrupt-controller/irq.h>
...@@ -23,6 +21,8 @@ ...@@ -23,6 +21,8 @@
/ { / {
compatible = "renesas,r8a7778"; compatible = "renesas,r8a7778";
interrupt-parent = <&gic>; interrupt-parent = <&gic>;
#address-cells = <1>;
#size-cells = <1>;
cpus { cpus {
#address-cells = <1>; #address-cells = <1>;
......
...@@ -170,7 +170,7 @@ &pfc { ...@@ -170,7 +170,7 @@ &pfc {
du_pins: du { du_pins: du {
du0 { du0 {
groups = "du0_rgb888", "du0_sync_1", "du0_clk_out_0"; groups = "du0_rgb888", "du0_sync_1", "du0_clk_out_0", "du0_clk_in";
function = "du0"; function = "du0";
}; };
du1 { du1 {
......
...@@ -9,8 +9,6 @@ ...@@ -9,8 +9,6 @@
* kind, whether express or implied. * kind, whether express or implied.
*/ */
/include/ "skeleton.dtsi"
#include <dt-bindings/clock/r8a7779-clock.h> #include <dt-bindings/clock/r8a7779-clock.h>
#include <dt-bindings/interrupt-controller/arm-gic.h> #include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/interrupt-controller/irq.h> #include <dt-bindings/interrupt-controller/irq.h>
...@@ -19,6 +17,8 @@ ...@@ -19,6 +17,8 @@
/ { / {
compatible = "renesas,r8a7779"; compatible = "renesas,r8a7779";
interrupt-parent = <&gic>; interrupt-parent = <&gic>;
#address-cells = <1>;
#size-cells = <1>;
cpus { cpus {
#address-cells = <1>; #address-cells = <1>;
...@@ -420,7 +420,7 @@ hspi2: spi@fffc6000 { ...@@ -420,7 +420,7 @@ hspi2: spi@fffc6000 {
du: display@fff80000 { du: display@fff80000 {
compatible = "renesas,du-r8a7779"; compatible = "renesas,du-r8a7779";
reg = <0 0xfff80000 0 0x40000>; reg = <0xfff80000 0x40000>;
interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&mstp1_clks R8A7779_CLK_DU>; clocks = <&mstp1_clks R8A7779_CLK_DU>;
power-domains = <&sysc R8A7779_PD_ALWAYS_ON>; power-domains = <&sysc R8A7779_PD_ALWAYS_ON>;
......
...@@ -231,12 +231,23 @@ vga_in: endpoint { ...@@ -231,12 +231,23 @@ vga_in: endpoint {
}; };
}; };
hdmi-in {
compatible = "hdmi-connector";
type = "a";
port {
hdmi_con_in: endpoint {
remote-endpoint = <&adv7612_in>;
};
};
};
hdmi-out { hdmi-out {
compatible = "hdmi-connector"; compatible = "hdmi-connector";
type = "a"; type = "a";
port { port {
hdmi_con: endpoint { hdmi_con_out: endpoint {
remote-endpoint = <&adv7511_out>; remote-endpoint = <&adv7511_out>;
}; };
}; };
...@@ -427,6 +438,11 @@ usb2_pins: usb2 { ...@@ -427,6 +438,11 @@ usb2_pins: usb2 {
function = "usb2"; function = "usb2";
}; };
vin0_pins: vin0 {
groups = "vin0_data24", "vin0_sync", "vin0_clkenb", "vin0_clk";
function = "vin0";
};
vin1_pins: vin1 { vin1_pins: vin1 {
groups = "vin1_data8", "vin1_clk"; groups = "vin1_data8", "vin1_clk";
function = "vin1"; function = "vin1";
...@@ -646,7 +662,34 @@ adv7511_in: endpoint { ...@@ -646,7 +662,34 @@ adv7511_in: endpoint {
port@1 { port@1 {
reg = <1>; reg = <1>;
adv7511_out: endpoint { adv7511_out: endpoint {
remote-endpoint = <&hdmi_con>; remote-endpoint = <&hdmi_con_out>;
};
};
};
};
hdmi-in@4c {
compatible = "adi,adv7612";
reg = <0x4c>;
interrupt-parent = <&gpio1>;
interrupts = <20 IRQ_TYPE_LEVEL_LOW>;
default-input = <0>;
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
adv7612_in: endpoint {
remote-endpoint = <&hdmi_con_in>;
};
};
port@2 {
reg = <2>;
adv7612_out: endpoint {
remote-endpoint = <&vin0ep2>;
}; };
}; };
}; };
...@@ -722,6 +765,25 @@ &usbphy { ...@@ -722,6 +765,25 @@ &usbphy {
status = "okay"; status = "okay";
}; };
/* HDMI video input */
&vin0 {
pinctrl-0 = <&vin0_pins>;
pinctrl-names = "default";
status = "okay";
port {
vin0ep2: endpoint {
remote-endpoint = <&adv7612_out>;
bus-width = <24>;
hsync-active = <0>;
vsync-active = <0>;
pclk-sample = <1>;
data-active = <1>;
};
};
};
/* composite video input */ /* composite video input */
&vin1 { &vin1 {
pinctrl-0 = <&vin1_pins>; pinctrl-0 = <&vin1_pins>;
......
...@@ -711,7 +711,7 @@ scifa2: serial@e6c60000 { ...@@ -711,7 +711,7 @@ scifa2: serial@e6c60000 {
scifb0: serial@e6c20000 { scifb0: serial@e6c20000 {
compatible = "renesas,scifb-r8a7790", compatible = "renesas,scifb-r8a7790",
"renesas,rcar-gen2-scifb", "renesas,scifb"; "renesas,rcar-gen2-scifb", "renesas,scifb";
reg = <0 0xe6c20000 0 64>; reg = <0 0xe6c20000 0 0x100>;
interrupts = <GIC_SPI 148 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 148 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&mstp2_clks R8A7790_CLK_SCIFB0>; clocks = <&mstp2_clks R8A7790_CLK_SCIFB0>;
clock-names = "fck"; clock-names = "fck";
...@@ -725,7 +725,7 @@ scifb0: serial@e6c20000 { ...@@ -725,7 +725,7 @@ scifb0: serial@e6c20000 {
scifb1: serial@e6c30000 { scifb1: serial@e6c30000 {
compatible = "renesas,scifb-r8a7790", compatible = "renesas,scifb-r8a7790",
"renesas,rcar-gen2-scifb", "renesas,scifb"; "renesas,rcar-gen2-scifb", "renesas,scifb";
reg = <0 0xe6c30000 0 64>; reg = <0 0xe6c30000 0 0x100>;
interrupts = <GIC_SPI 149 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 149 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&mstp2_clks R8A7790_CLK_SCIFB1>; clocks = <&mstp2_clks R8A7790_CLK_SCIFB1>;
clock-names = "fck"; clock-names = "fck";
...@@ -739,7 +739,7 @@ scifb1: serial@e6c30000 { ...@@ -739,7 +739,7 @@ scifb1: serial@e6c30000 {
scifb2: serial@e6ce0000 { scifb2: serial@e6ce0000 {
compatible = "renesas,scifb-r8a7790", compatible = "renesas,scifb-r8a7790",
"renesas,rcar-gen2-scifb", "renesas,scifb"; "renesas,rcar-gen2-scifb", "renesas,scifb";
reg = <0 0xe6ce0000 0 64>; reg = <0 0xe6ce0000 0 0x100>;
interrupts = <GIC_SPI 150 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 150 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&mstp2_clks R8A7790_CLK_SCIFB2>; clocks = <&mstp2_clks R8A7790_CLK_SCIFB2>;
clock-names = "fck"; clock-names = "fck";
......
...@@ -265,12 +265,23 @@ sndcodec: simple-audio-card,codec { ...@@ -265,12 +265,23 @@ sndcodec: simple-audio-card,codec {
}; };
}; };
hdmi-in {
compatible = "hdmi-connector";
type = "a";
port {
hdmi_con_in: endpoint {
remote-endpoint = <&adv7612_in>;
};
};
};
hdmi-out { hdmi-out {
compatible = "hdmi-connector"; compatible = "hdmi-connector";
type = "a"; type = "a";
port { port {
hdmi_con: endpoint { hdmi_con_out: endpoint {
remote-endpoint = <&adv7511_out>; remote-endpoint = <&adv7511_out>;
}; };
}; };
...@@ -360,16 +371,37 @@ phy1_pins: phy1 { ...@@ -360,16 +371,37 @@ phy1_pins: phy1 {
sdhi0_pins: sd0 { sdhi0_pins: sd0 {
groups = "sdhi0_data4", "sdhi0_ctrl"; groups = "sdhi0_data4", "sdhi0_ctrl";
function = "sdhi0"; function = "sdhi0";
power-source = <3300>;
};
sdhi0_pins_uhs: sd0_uhs {
groups = "sdhi0_data4", "sdhi0_ctrl";
function = "sdhi0";
power-source = <1800>;
}; };
sdhi1_pins: sd1 { sdhi1_pins: sd1 {
groups = "sdhi1_data4", "sdhi1_ctrl"; groups = "sdhi1_data4", "sdhi1_ctrl";
function = "sdhi1"; function = "sdhi1";
power-source = <3300>;
};
sdhi1_pins_uhs: sd1_uhs {
groups = "sdhi1_data4", "sdhi1_ctrl";
function = "sdhi1";
power-source = <1800>;
}; };
sdhi2_pins: sd2 { sdhi2_pins: sd2 {
groups = "sdhi2_data4", "sdhi2_ctrl"; groups = "sdhi2_data4", "sdhi2_ctrl";
function = "sdhi2"; function = "sdhi2";
power-source = <3300>;
};
sdhi2_pins_uhs: sd2_uhs {
groups = "sdhi2_data4", "sdhi2_ctrl";
function = "sdhi2";
power-source = <1800>;
}; };
qspi_pins: qspi { qspi_pins: qspi {
...@@ -393,6 +425,11 @@ usb1_pins: usb1 { ...@@ -393,6 +425,11 @@ usb1_pins: usb1 {
function = "usb1"; function = "usb1";
}; };
vin0_pins: vin0 {
groups = "vin0_data24", "vin0_sync", "vin0_clkenb", "vin0_clk";
function = "vin0";
};
vin1_pins: vin1 { vin1_pins: vin1 {
groups = "vin1_data8", "vin1_clk"; groups = "vin1_data8", "vin1_clk";
function = "vin1"; function = "vin1";
...@@ -454,33 +491,39 @@ &scif_clk { ...@@ -454,33 +491,39 @@ &scif_clk {
&sdhi0 { &sdhi0 {
pinctrl-0 = <&sdhi0_pins>; pinctrl-0 = <&sdhi0_pins>;
pinctrl-names = "default"; pinctrl-1 = <&sdhi0_pins_uhs>;
pinctrl-names = "default", "state_uhs";
vmmc-supply = <&vcc_sdhi0>; vmmc-supply = <&vcc_sdhi0>;
vqmmc-supply = <&vccq_sdhi0>; vqmmc-supply = <&vccq_sdhi0>;
cd-gpios = <&gpio6 6 GPIO_ACTIVE_LOW>; cd-gpios = <&gpio6 6 GPIO_ACTIVE_LOW>;
wp-gpios = <&gpio6 7 GPIO_ACTIVE_HIGH>; wp-gpios = <&gpio6 7 GPIO_ACTIVE_HIGH>;
sd-uhs-sdr50;
status = "okay"; status = "okay";
}; };
&sdhi1 { &sdhi1 {
pinctrl-0 = <&sdhi1_pins>; pinctrl-0 = <&sdhi1_pins>;
pinctrl-names = "default"; pinctrl-1 = <&sdhi1_pins_uhs>;
pinctrl-names = "default", "state_uhs";
vmmc-supply = <&vcc_sdhi1>; vmmc-supply = <&vcc_sdhi1>;
vqmmc-supply = <&vccq_sdhi1>; vqmmc-supply = <&vccq_sdhi1>;
cd-gpios = <&gpio6 14 GPIO_ACTIVE_LOW>; cd-gpios = <&gpio6 14 GPIO_ACTIVE_LOW>;
wp-gpios = <&gpio6 15 GPIO_ACTIVE_HIGH>; wp-gpios = <&gpio6 15 GPIO_ACTIVE_HIGH>;
sd-uhs-sdr50;
status = "okay"; status = "okay";
}; };
&sdhi2 { &sdhi2 {
pinctrl-0 = <&sdhi2_pins>; pinctrl-0 = <&sdhi2_pins>;
pinctrl-names = "default"; pinctrl-1 = <&sdhi2_pins_uhs>;
pinctrl-names = "default", "state_uhs";
vmmc-supply = <&vcc_sdhi2>; vmmc-supply = <&vcc_sdhi2>;
vqmmc-supply = <&vccq_sdhi2>; vqmmc-supply = <&vccq_sdhi2>;
cd-gpios = <&gpio6 22 GPIO_ACTIVE_LOW>; cd-gpios = <&gpio6 22 GPIO_ACTIVE_LOW>;
sd-uhs-sdr50;
status = "okay"; status = "okay";
}; };
...@@ -590,7 +633,34 @@ adv7511_in: endpoint { ...@@ -590,7 +633,34 @@ adv7511_in: endpoint {
port@1 { port@1 {
reg = <1>; reg = <1>;
adv7511_out: endpoint { adv7511_out: endpoint {
remote-endpoint = <&hdmi_con>; remote-endpoint = <&hdmi_con_out>;
};
};
};
};
hdmi-in@4c {
compatible = "adi,adv7612";
reg = <0x4c>;
interrupt-parent = <&gpio4>;
interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
default-input = <0>;
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
adv7612_in: endpoint {
remote-endpoint = <&hdmi_con_in>;
};
};
port@2 {
reg = <2>;
adv7612_out: endpoint {
remote-endpoint = <&vin0ep2>;
}; };
}; };
}; };
...@@ -672,6 +742,27 @@ &cpu0 { ...@@ -672,6 +742,27 @@ &cpu0 {
cpu0-supply = <&vdd_dvfs>; cpu0-supply = <&vdd_dvfs>;
}; };
/* HDMI video input */
&vin0 {
status = "okay";
pinctrl-0 = <&vin0_pins>;
pinctrl-names = "default";
port {
#address-cells = <1>;
#size-cells = <0>;
vin0ep2: endpoint {
remote-endpoint = <&adv7612_out>;
bus-width = <24>;
hsync-active = <0>;
vsync-active = <0>;
pclk-sample = <1>;
data-active = <1>;
};
};
};
/* composite video input */ /* composite video input */
&vin1 { &vin1 {
status = "okay"; status = "okay";
......
...@@ -584,6 +584,7 @@ sdhi0: sd@ee100000 { ...@@ -584,6 +584,7 @@ sdhi0: sd@ee100000 {
dmas = <&dmac0 0xcd>, <&dmac0 0xce>, dmas = <&dmac0 0xcd>, <&dmac0 0xce>,
<&dmac1 0xcd>, <&dmac1 0xce>; <&dmac1 0xcd>, <&dmac1 0xce>;
dma-names = "tx", "rx", "tx", "rx"; dma-names = "tx", "rx", "tx", "rx";
max-frequency = <195000000>;
power-domains = <&sysc R8A7791_PD_ALWAYS_ON>; power-domains = <&sysc R8A7791_PD_ALWAYS_ON>;
status = "disabled"; status = "disabled";
}; };
...@@ -596,6 +597,7 @@ sdhi1: sd@ee140000 { ...@@ -596,6 +597,7 @@ sdhi1: sd@ee140000 {
dmas = <&dmac0 0xc1>, <&dmac0 0xc2>, dmas = <&dmac0 0xc1>, <&dmac0 0xc2>,
<&dmac1 0xc1>, <&dmac1 0xc2>; <&dmac1 0xc1>, <&dmac1 0xc2>;
dma-names = "tx", "rx", "tx", "rx"; dma-names = "tx", "rx", "tx", "rx";
max-frequency = <97500000>;
power-domains = <&sysc R8A7791_PD_ALWAYS_ON>; power-domains = <&sysc R8A7791_PD_ALWAYS_ON>;
status = "disabled"; status = "disabled";
}; };
...@@ -608,6 +610,7 @@ sdhi2: sd@ee160000 { ...@@ -608,6 +610,7 @@ sdhi2: sd@ee160000 {
dmas = <&dmac0 0xd3>, <&dmac0 0xd4>, dmas = <&dmac0 0xd3>, <&dmac0 0xd4>,
<&dmac1 0xd3>, <&dmac1 0xd4>; <&dmac1 0xd3>, <&dmac1 0xd4>;
dma-names = "tx", "rx", "tx", "rx"; dma-names = "tx", "rx", "tx", "rx";
max-frequency = <97500000>;
power-domains = <&sysc R8A7791_PD_ALWAYS_ON>; power-domains = <&sysc R8A7791_PD_ALWAYS_ON>;
status = "disabled"; status = "disabled";
}; };
...@@ -699,7 +702,7 @@ scifa5: serial@e6c80000 { ...@@ -699,7 +702,7 @@ scifa5: serial@e6c80000 {
scifb0: serial@e6c20000 { scifb0: serial@e6c20000 {
compatible = "renesas,scifb-r8a7791", compatible = "renesas,scifb-r8a7791",
"renesas,rcar-gen2-scifb", "renesas,scifb"; "renesas,rcar-gen2-scifb", "renesas,scifb";
reg = <0 0xe6c20000 0 64>; reg = <0 0xe6c20000 0 0x100>;
interrupts = <GIC_SPI 148 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 148 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&mstp2_clks R8A7791_CLK_SCIFB0>; clocks = <&mstp2_clks R8A7791_CLK_SCIFB0>;
clock-names = "fck"; clock-names = "fck";
...@@ -713,7 +716,7 @@ scifb0: serial@e6c20000 { ...@@ -713,7 +716,7 @@ scifb0: serial@e6c20000 {
scifb1: serial@e6c30000 { scifb1: serial@e6c30000 {
compatible = "renesas,scifb-r8a7791", compatible = "renesas,scifb-r8a7791",
"renesas,rcar-gen2-scifb", "renesas,scifb"; "renesas,rcar-gen2-scifb", "renesas,scifb";
reg = <0 0xe6c30000 0 64>; reg = <0 0xe6c30000 0 0x100>;
interrupts = <GIC_SPI 149 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 149 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&mstp2_clks R8A7791_CLK_SCIFB1>; clocks = <&mstp2_clks R8A7791_CLK_SCIFB1>;
clock-names = "fck"; clock-names = "fck";
...@@ -727,7 +730,7 @@ scifb1: serial@e6c30000 { ...@@ -727,7 +730,7 @@ scifb1: serial@e6c30000 {
scifb2: serial@e6ce0000 { scifb2: serial@e6ce0000 {
compatible = "renesas,scifb-r8a7791", compatible = "renesas,scifb-r8a7791",
"renesas,rcar-gen2-scifb", "renesas,scifb"; "renesas,rcar-gen2-scifb", "renesas,scifb";
reg = <0 0xe6ce0000 0 64>; reg = <0 0xe6ce0000 0 0x100>;
interrupts = <GIC_SPI 150 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 150 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&mstp2_clks R8A7791_CLK_SCIFB2>; clocks = <&mstp2_clks R8A7791_CLK_SCIFB2>;
clock-names = "fck"; clock-names = "fck";
......
...@@ -86,6 +86,34 @@ vcc_sdhi0: regulator-vcc-sdhi0 { ...@@ -86,6 +86,34 @@ vcc_sdhi0: regulator-vcc-sdhi0 {
gpio = <&gpio11 12 GPIO_ACTIVE_HIGH>; gpio = <&gpio11 12 GPIO_ACTIVE_HIGH>;
enable-active-high; enable-active-high;
}; };
hdmi-out0 {
compatible = "hdmi-connector";
type = "a";
port {
hdmi_con0: endpoint {
remote-endpoint = <&adv7513_0_out>;
};
};
};
hdmi-out1 {
compatible = "hdmi-connector";
type = "a";
port {
hdmi_con1: endpoint {
remote-endpoint = <&adv7513_1_out>;
};
};
};
osc2_clk: osc2 {
compatible = "fixed-clock";
#clock-cells = <0>;
clock-frequency = <74250000>;
};
}; };
&extal_clk { &extal_clk {
...@@ -128,6 +156,16 @@ qspi_pins: qspi { ...@@ -128,6 +156,16 @@ qspi_pins: qspi {
groups = "qspi_ctrl", "qspi_data4"; groups = "qspi_ctrl", "qspi_data4";
function = "qspi"; function = "qspi";
}; };
du0_pins: du0 {
groups = "du0_rgb888", "du0_sync", "du0_disp";
function = "du0";
};
du1_pins: du1 {
groups = "du1_rgb666", "du1_sync", "du1_disp";
function = "du1";
};
}; };
&scif0 { &scif0 {
...@@ -197,3 +235,91 @@ partition@440000 { ...@@ -197,3 +235,91 @@ partition@440000 {
}; };
}; };
}; };
&i2c4 {
status = "okay";
clock-frequency = <400000>;
hdmi@3d {
compatible = "adi,adv7513";
reg = <0x3d>;
adi,input-depth = <8>;
adi,input-colorspace = "rgb";
adi,input-clock = "1x";
adi,input-style = <1>;
adi,input-justification = "evenly";
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
adv7513_0_in: endpoint {
remote-endpoint = <&du_out_rgb0>;
};
};
port@1 {
reg = <1>;
adv7513_0_out: endpoint {
remote-endpoint = <&hdmi_con0>;
};
};
};
};
hdmi@39 {
compatible = "adi,adv7513";
reg = <0x39>;
adi,input-depth = <8>;
adi,input-colorspace = "rgb";
adi,input-clock = "1x";
adi,input-style = <1>;
adi,input-justification = "evenly";
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
adv7513_1_in: endpoint {
remote-endpoint = <&du_out_rgb1>;
};
};
port@1 {
reg = <1>;
adv7513_1_out: endpoint {
remote-endpoint = <&hdmi_con1>;
};
};
};
};
};
&du {
pinctrl-0 = <&du0_pins &du1_pins>;
pinctrl-names = "default";
clocks = <&mstp7_clks R8A7792_CLK_DU0>, <&mstp7_clks R8A7792_CLK_DU1>,
<&osc2_clk>;
clock-names = "du.0", "du.1", "dclkin.0";
status = "okay";
ports {
port@0 {
endpoint {
remote-endpoint = <&adv7513_0_in>;
};
};
port@1 {
endpoint {
remote-endpoint = <&adv7513_1_in>;
};
};
};
};
...@@ -26,6 +26,8 @@ aliases { ...@@ -26,6 +26,8 @@ aliases {
i2c4 = &i2c4; i2c4 = &i2c4;
i2c5 = &i2c5; i2c5 = &i2c5;
spi0 = &qspi; spi0 = &qspi;
spi1 = &msiof0;
spi2 = &msiof1;
vin0 = &vin0; vin0 = &vin0;
vin1 = &vin1; vin1 = &vin1;
vin2 = &vin2; vin2 = &vin2;
...@@ -572,6 +574,34 @@ qspi: spi@e6b10000 { ...@@ -572,6 +574,34 @@ qspi: spi@e6b10000 {
status = "disabled"; status = "disabled";
}; };
msiof0: spi@e6e20000 {
compatible = "renesas,msiof-r8a7792";
reg = <0 0xe6e20000 0 0x0064>;
interrupts = <GIC_SPI 156 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&mstp0_clks R8A7792_CLK_MSIOF0>;
dmas = <&dmac0 0x51>, <&dmac0 0x52>,
<&dmac1 0x51>, <&dmac1 0x52>;
dma-names = "tx", "rx", "tx", "rx";
power-domains = <&sysc R8A7792_PD_ALWAYS_ON>;
#address-cells = <1>;
#size-cells = <0>;
status = "disabled";
};
msiof1: spi@e6e10000 {
compatible = "renesas,msiof-r8a7792";
reg = <0 0xe6e10000 0 0x0064>;
interrupts = <GIC_SPI 157 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&mstp2_clks R8A7792_CLK_MSIOF1>;
dmas = <&dmac0 0x55>, <&dmac0 0x56>,
<&dmac1 0x55>, <&dmac1 0x56>;
dma-names = "tx", "rx", "tx", "rx";
power-domains = <&sysc R8A7792_PD_ALWAYS_ON>;
#address-cells = <1>;
#size-cells = <0>;
status = "disabled";
};
du: display@feb00000 { du: display@feb00000 {
compatible = "renesas,du-r8a7792"; compatible = "renesas,du-r8a7792";
reg = <0 0xfeb00000 0 0x40000>; reg = <0 0xfeb00000 0 0x40000>;
...@@ -763,6 +793,13 @@ cp_clk: cp { ...@@ -763,6 +793,13 @@ cp_clk: cp {
clock-div = <48>; clock-div = <48>;
clock-mult = <1>; clock-mult = <1>;
}; };
mp_clk: mp {
compatible = "fixed-factor-clock";
clocks = <&pll1_div2_clk>;
#clock-cells = <0>;
clock-div = <15>;
clock-mult = <1>;
};
m2_clk: m2 { m2_clk: m2 {
compatible = "fixed-factor-clock"; compatible = "fixed-factor-clock";
clocks = <&cpg_clocks R8A7792_CLK_PLL1>; clocks = <&cpg_clocks R8A7792_CLK_PLL1>;
...@@ -793,6 +830,15 @@ zg_clk: zg { ...@@ -793,6 +830,15 @@ zg_clk: zg {
}; };
/* Gate clocks */ /* Gate clocks */
mstp0_clks: mstp0_clks@e6150130 {
compatible = "renesas,r8a7792-mstp-clocks",
"renesas,cpg-mstp-clocks";
reg = <0 0xe6150130 0 4>, <0 0xe6150030 0 4>;
clocks = <&mp_clk>;
#clock-cells = <1>;
clock-indices = <R8A7792_CLK_MSIOF0>;
clock-output-names = "msiof0";
};
mstp1_clks: mstp1_clks@e6150134 { mstp1_clks: mstp1_clks@e6150134 {
compatible = "renesas,r8a7792-mstp-clocks", compatible = "renesas,r8a7792-mstp-clocks",
"renesas,cpg-mstp-clocks"; "renesas,cpg-mstp-clocks";
...@@ -811,12 +857,13 @@ mstp2_clks: mstp2_clks@e6150138 { ...@@ -811,12 +857,13 @@ mstp2_clks: mstp2_clks@e6150138 {
compatible = "renesas,r8a7792-mstp-clocks", compatible = "renesas,r8a7792-mstp-clocks",
"renesas,cpg-mstp-clocks"; "renesas,cpg-mstp-clocks";
reg = <0 0xe6150138 0 4>, <0 0xe6150040 0 4>; reg = <0 0xe6150138 0 4>, <0 0xe6150040 0 4>;
clocks = <&zs_clk>, <&zs_clk>; clocks = <&mp_clk>, <&zs_clk>, <&zs_clk>;
#clock-cells = <1>; #clock-cells = <1>;
clock-indices = < clock-indices = <
R8A7792_CLK_MSIOF1
R8A7792_CLK_SYS_DMAC1 R8A7792_CLK_SYS_DMAC0 R8A7792_CLK_SYS_DMAC1 R8A7792_CLK_SYS_DMAC0
>; >;
clock-output-names = "sys-dmac1", "sys-dmac0"; clock-output-names = "msiof1", "sys-dmac1", "sys-dmac0";
}; };
mstp3_clks: mstp3_clks@e615013c { mstp3_clks: mstp3_clks@e615013c {
compatible = "renesas,r8a7792-mstp-clocks", compatible = "renesas,r8a7792-mstp-clocks",
......
...@@ -346,18 +346,18 @@ phy1_pins: phy1 { ...@@ -346,18 +346,18 @@ phy1_pins: phy1 {
}; };
sdhi0_pins: sd0 { sdhi0_pins: sd0 {
renesas,groups = "sdhi0_data4", "sdhi0_ctrl"; groups = "sdhi0_data4", "sdhi0_ctrl";
renesas,function = "sdhi0"; function = "sdhi0";
}; };
sdhi1_pins: sd1 { sdhi1_pins: sd1 {
renesas,groups = "sdhi1_data4", "sdhi1_ctrl"; groups = "sdhi1_data4", "sdhi1_ctrl";
renesas,function = "sdhi1"; function = "sdhi1";
}; };
sdhi2_pins: sd2 { sdhi2_pins: sd2 {
renesas,groups = "sdhi2_data4", "sdhi2_ctrl"; groups = "sdhi2_data4", "sdhi2_ctrl";
renesas,function = "sdhi2"; function = "sdhi2";
}; };
qspi_pins: qspi { qspi_pins: qspi {
......
...@@ -666,7 +666,7 @@ scifa5: serial@e6c80000 { ...@@ -666,7 +666,7 @@ scifa5: serial@e6c80000 {
scifb0: serial@e6c20000 { scifb0: serial@e6c20000 {
compatible = "renesas,scifb-r8a7793", compatible = "renesas,scifb-r8a7793",
"renesas,rcar-gen2-scifb", "renesas,scifb"; "renesas,rcar-gen2-scifb", "renesas,scifb";
reg = <0 0xe6c20000 0 64>; reg = <0 0xe6c20000 0 0x100>;
interrupts = <GIC_SPI 148 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 148 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&mstp2_clks R8A7793_CLK_SCIFB0>; clocks = <&mstp2_clks R8A7793_CLK_SCIFB0>;
clock-names = "fck"; clock-names = "fck";
...@@ -680,7 +680,7 @@ scifb0: serial@e6c20000 { ...@@ -680,7 +680,7 @@ scifb0: serial@e6c20000 {
scifb1: serial@e6c30000 { scifb1: serial@e6c30000 {
compatible = "renesas,scifb-r8a7793", compatible = "renesas,scifb-r8a7793",
"renesas,rcar-gen2-scifb", "renesas,scifb"; "renesas,rcar-gen2-scifb", "renesas,scifb";
reg = <0 0xe6c30000 0 64>; reg = <0 0xe6c30000 0 0x100>;
interrupts = <GIC_SPI 149 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 149 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&mstp2_clks R8A7793_CLK_SCIFB1>; clocks = <&mstp2_clks R8A7793_CLK_SCIFB1>;
clock-names = "fck"; clock-names = "fck";
...@@ -694,7 +694,7 @@ scifb1: serial@e6c30000 { ...@@ -694,7 +694,7 @@ scifb1: serial@e6c30000 {
scifb2: serial@e6ce0000 { scifb2: serial@e6ce0000 {
compatible = "renesas,scifb-r8a7793", compatible = "renesas,scifb-r8a7793",
"renesas,rcar-gen2-scifb", "renesas,scifb"; "renesas,rcar-gen2-scifb", "renesas,scifb";
reg = <0 0xe6ce0000 0 64>; reg = <0 0xe6ce0000 0 0x100>;
interrupts = <GIC_SPI 150 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 150 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&mstp2_clks R8A7793_CLK_SCIFB2>; clocks = <&mstp2_clks R8A7793_CLK_SCIFB2>;
clock-names = "fck"; clock-names = "fck";
...@@ -852,6 +852,33 @@ ether: ethernet@ee700000 { ...@@ -852,6 +852,33 @@ ether: ethernet@ee700000 {
status = "disabled"; status = "disabled";
}; };
vin0: video@e6ef0000 {
compatible = "renesas,vin-r8a7793", "renesas,rcar-gen2-vin";
reg = <0 0xe6ef0000 0 0x1000>;
interrupts = <GIC_SPI 188 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&mstp8_clks R8A7793_CLK_VIN0>;
power-domains = <&sysc R8A7793_PD_ALWAYS_ON>;
status = "disabled";
};
vin1: video@e6ef1000 {
compatible = "renesas,vin-r8a7793", "renesas,rcar-gen2-vin";
reg = <0 0xe6ef1000 0 0x1000>;
interrupts = <GIC_SPI 189 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&mstp8_clks R8A7793_CLK_VIN1>;
power-domains = <&sysc R8A7793_PD_ALWAYS_ON>;
status = "disabled";
};
vin2: video@e6ef2000 {
compatible = "renesas,vin-r8a7793", "renesas,rcar-gen2-vin";
reg = <0 0xe6ef2000 0 0x1000>;
interrupts = <GIC_SPI 190 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&mstp8_clks R8A7793_CLK_VIN2>;
power-domains = <&sysc R8A7793_PD_ALWAYS_ON>;
status = "disabled";
};
qspi: spi@e6b10000 { qspi: spi@e6b10000 {
compatible = "renesas,qspi-r8a7793", "renesas,qspi"; compatible = "renesas,qspi-r8a7793", "renesas,qspi";
reg = <0 0xe6b10000 0 0x2c>; reg = <0 0xe6b10000 0 0x2c>;
......
...@@ -207,11 +207,25 @@ mmcif0_pins: mmcif0 { ...@@ -207,11 +207,25 @@ mmcif0_pins: mmcif0 {
sdhi0_pins: sd0 { sdhi0_pins: sd0 {
groups = "sdhi0_data4", "sdhi0_ctrl"; groups = "sdhi0_data4", "sdhi0_ctrl";
function = "sdhi0"; function = "sdhi0";
power-source = <3300>;
};
sdhi0_pins_uhs: sd0_uhs {
groups = "sdhi0_data4", "sdhi0_ctrl";
function = "sdhi0";
power-source = <1800>;
}; };
sdhi1_pins: sd1 { sdhi1_pins: sd1 {
groups = "sdhi1_data4", "sdhi1_ctrl"; groups = "sdhi1_data4", "sdhi1_ctrl";
function = "sdhi1"; function = "sdhi1";
power-source = <3300>;
};
sdhi1_pins_uhs: sd1_uhs {
groups = "sdhi1_data4", "sdhi1_ctrl";
function = "sdhi1";
power-source = <1800>;
}; };
}; };
...@@ -255,23 +269,27 @@ &mmcif0 { ...@@ -255,23 +269,27 @@ &mmcif0 {
&sdhi0 { &sdhi0 {
pinctrl-0 = <&sdhi0_pins>; pinctrl-0 = <&sdhi0_pins>;
pinctrl-names = "default"; pinctrl-1 = <&sdhi0_pins_uhs>;
pinctrl-names = "default", "state_uhs";
vmmc-supply = <&vcc_sdhi0>; vmmc-supply = <&vcc_sdhi0>;
vqmmc-supply = <&vccq_sdhi0>; vqmmc-supply = <&vccq_sdhi0>;
cd-gpios = <&gpio6 6 GPIO_ACTIVE_LOW>; cd-gpios = <&gpio6 6 GPIO_ACTIVE_LOW>;
wp-gpios = <&gpio6 7 GPIO_ACTIVE_LOW>; wp-gpios = <&gpio6 7 GPIO_ACTIVE_LOW>;
sd-uhs-sdr50;
status = "okay"; status = "okay";
}; };
&sdhi1 { &sdhi1 {
pinctrl-0 = <&sdhi1_pins>; pinctrl-0 = <&sdhi1_pins>;
pinctrl-names = "default"; pinctrl-1 = <&sdhi1_pins_uhs>;
pinctrl-names = "default", "state_uhs";
vmmc-supply = <&vcc_sdhi1>; vmmc-supply = <&vcc_sdhi1>;
vqmmc-supply = <&vccq_sdhi1>; vqmmc-supply = <&vccq_sdhi1>;
cd-gpios = <&gpio6 14 GPIO_ACTIVE_LOW>; cd-gpios = <&gpio6 14 GPIO_ACTIVE_LOW>;
wp-gpios = <&gpio6 15 GPIO_ACTIVE_LOW>; wp-gpios = <&gpio6 15 GPIO_ACTIVE_LOW>;
sd-uhs-sdr50;
status = "okay"; status = "okay";
}; };
......
...@@ -411,7 +411,7 @@ scifa5: serial@e6c80000 { ...@@ -411,7 +411,7 @@ scifa5: serial@e6c80000 {
scifb0: serial@e6c20000 { scifb0: serial@e6c20000 {
compatible = "renesas,scifb-r8a7794", compatible = "renesas,scifb-r8a7794",
"renesas,rcar-gen2-scifb", "renesas,scifb"; "renesas,rcar-gen2-scifb", "renesas,scifb";
reg = <0 0xe6c20000 0 64>; reg = <0 0xe6c20000 0 0x100>;
interrupts = <GIC_SPI 148 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 148 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&mstp2_clks R8A7794_CLK_SCIFB0>; clocks = <&mstp2_clks R8A7794_CLK_SCIFB0>;
clock-names = "fck"; clock-names = "fck";
...@@ -425,7 +425,7 @@ scifb0: serial@e6c20000 { ...@@ -425,7 +425,7 @@ scifb0: serial@e6c20000 {
scifb1: serial@e6c30000 { scifb1: serial@e6c30000 {
compatible = "renesas,scifb-r8a7794", compatible = "renesas,scifb-r8a7794",
"renesas,rcar-gen2-scifb", "renesas,scifb"; "renesas,rcar-gen2-scifb", "renesas,scifb";
reg = <0 0xe6c30000 0 64>; reg = <0 0xe6c30000 0 0x100>;
interrupts = <GIC_SPI 149 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 149 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&mstp2_clks R8A7794_CLK_SCIFB1>; clocks = <&mstp2_clks R8A7794_CLK_SCIFB1>;
clock-names = "fck"; clock-names = "fck";
...@@ -439,7 +439,7 @@ scifb1: serial@e6c30000 { ...@@ -439,7 +439,7 @@ scifb1: serial@e6c30000 {
scifb2: serial@e6ce0000 { scifb2: serial@e6ce0000 {
compatible = "renesas,scifb-r8a7794", compatible = "renesas,scifb-r8a7794",
"renesas,rcar-gen2-scifb", "renesas,scifb"; "renesas,rcar-gen2-scifb", "renesas,scifb";
reg = <0 0xe6ce0000 0 64>; reg = <0 0xe6ce0000 0 0x100>;
interrupts = <GIC_SPI 150 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 150 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&mstp2_clks R8A7794_CLK_SCIFB2>; clocks = <&mstp2_clks R8A7794_CLK_SCIFB2>;
clock-names = "fck"; clock-names = "fck";
...@@ -731,6 +731,7 @@ sdhi0: sd@ee100000 { ...@@ -731,6 +731,7 @@ sdhi0: sd@ee100000 {
dmas = <&dmac0 0xcd>, <&dmac0 0xce>, dmas = <&dmac0 0xcd>, <&dmac0 0xce>,
<&dmac1 0xcd>, <&dmac1 0xce>; <&dmac1 0xcd>, <&dmac1 0xce>;
dma-names = "tx", "rx", "tx", "rx"; dma-names = "tx", "rx", "tx", "rx";
max-frequency = <195000000>;
power-domains = <&sysc R8A7794_PD_ALWAYS_ON>; power-domains = <&sysc R8A7794_PD_ALWAYS_ON>;
status = "disabled"; status = "disabled";
}; };
...@@ -743,6 +744,7 @@ sdhi1: sd@ee140000 { ...@@ -743,6 +744,7 @@ sdhi1: sd@ee140000 {
dmas = <&dmac0 0xc1>, <&dmac0 0xc2>, dmas = <&dmac0 0xc1>, <&dmac0 0xc2>,
<&dmac1 0xc1>, <&dmac1 0xc2>; <&dmac1 0xc1>, <&dmac1 0xc2>;
dma-names = "tx", "rx", "tx", "rx"; dma-names = "tx", "rx", "tx", "rx";
max-frequency = <97500000>;
power-domains = <&sysc R8A7794_PD_ALWAYS_ON>; power-domains = <&sysc R8A7794_PD_ALWAYS_ON>;
status = "disabled"; status = "disabled";
}; };
...@@ -755,6 +757,7 @@ sdhi2: sd@ee160000 { ...@@ -755,6 +757,7 @@ sdhi2: sd@ee160000 {
dmas = <&dmac0 0xd3>, <&dmac0 0xd4>, dmas = <&dmac0 0xd3>, <&dmac0 0xd4>,
<&dmac1 0xd3>, <&dmac1 0xd4>; <&dmac1 0xd3>, <&dmac1 0xd4>;
dma-names = "tx", "rx", "tx", "rx"; dma-names = "tx", "rx", "tx", "rx";
max-frequency = <97500000>;
power-domains = <&sysc R8A7794_PD_ALWAYS_ON>; power-domains = <&sysc R8A7794_PD_ALWAYS_ON>;
status = "disabled"; status = "disabled";
}; };
...@@ -1025,8 +1028,7 @@ cpg_clocks: cpg_clocks@e6150000 { ...@@ -1025,8 +1028,7 @@ cpg_clocks: cpg_clocks@e6150000 {
clocks = <&extal_clk &usb_extal_clk>; clocks = <&extal_clk &usb_extal_clk>;
#clock-cells = <1>; #clock-cells = <1>;
clock-output-names = "main", "pll0", "pll1", "pll3", clock-output-names = "main", "pll0", "pll1", "pll3",
"lb", "qspi", "sdh", "sd0", "z", "lb", "qspi", "sdh", "sd0", "rcan";
"rcan";
#power-domain-cells = <0>; #power-domain-cells = <0>;
}; };
/* Variable factor clocks */ /* Variable factor clocks */
...@@ -1488,62 +1490,62 @@ rcar_sound: sound@ec500000 { ...@@ -1488,62 +1490,62 @@ rcar_sound: sound@ec500000 {
status = "disabled"; status = "disabled";
rcar_sound,dvc { rcar_sound,dvc {
dvc0: dvc@0 { dvc0: dvc-0 {
dmas = <&audma0 0xbc>; dmas = <&audma0 0xbc>;
dma-names = "tx"; dma-names = "tx";
}; };
dvc1: dvc@1 { dvc1: dvc-1 {
dmas = <&audma0 0xbe>; dmas = <&audma0 0xbe>;
dma-names = "tx"; dma-names = "tx";
}; };
}; };
rcar_sound,mix { rcar_sound,mix {
mix0: mix@0 { }; mix0: mix-0 { };
mix1: mix@1 { }; mix1: mix-1 { };
}; };
rcar_sound,ctu { rcar_sound,ctu {
ctu00: ctu@0 { }; ctu00: ctu-0 { };
ctu01: ctu@1 { }; ctu01: ctu-1 { };
ctu02: ctu@2 { }; ctu02: ctu-2 { };
ctu03: ctu@3 { }; ctu03: ctu-3 { };
ctu10: ctu@4 { }; ctu10: ctu-4 { };
ctu11: ctu@5 { }; ctu11: ctu-5 { };
ctu12: ctu@6 { }; ctu12: ctu-6 { };
ctu13: ctu@7 { }; ctu13: ctu-7 { };
}; };
rcar_sound,src { rcar_sound,src {
src@0 { src-0 {
status = "disabled"; status = "disabled";
}; };
src1: src@1 { src1: src-1 {
interrupts = <GIC_SPI 353 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 353 IRQ_TYPE_LEVEL_HIGH>;
dmas = <&audma0 0x87>, <&audma0 0x9c>; dmas = <&audma0 0x87>, <&audma0 0x9c>;
dma-names = "rx", "tx"; dma-names = "rx", "tx";
}; };
src2: src@2 { src2: src-2 {
interrupts = <GIC_SPI 354 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 354 IRQ_TYPE_LEVEL_HIGH>;
dmas = <&audma0 0x89>, <&audma0 0x9e>; dmas = <&audma0 0x89>, <&audma0 0x9e>;
dma-names = "rx", "tx"; dma-names = "rx", "tx";
}; };
src3: src@3 { src3: src-3 {
interrupts = <GIC_SPI 355 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 355 IRQ_TYPE_LEVEL_HIGH>;
dmas = <&audma0 0x8b>, <&audma0 0xa0>; dmas = <&audma0 0x8b>, <&audma0 0xa0>;
dma-names = "rx", "tx"; dma-names = "rx", "tx";
}; };
src4: src@4 { src4: src-4 {
interrupts = <GIC_SPI 356 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 356 IRQ_TYPE_LEVEL_HIGH>;
dmas = <&audma0 0x8d>, <&audma0 0xb0>; dmas = <&audma0 0x8d>, <&audma0 0xb0>;
dma-names = "rx", "tx"; dma-names = "rx", "tx";
}; };
src5: src@5 { src5: src-5 {
interrupts = <GIC_SPI 357 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 357 IRQ_TYPE_LEVEL_HIGH>;
dmas = <&audma0 0x8f>, <&audma0 0xb2>; dmas = <&audma0 0x8f>, <&audma0 0xb2>;
dma-names = "rx", "tx"; dma-names = "rx", "tx";
}; };
src6: src@6 { src6: src-6 {
interrupts = <GIC_SPI 358 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 358 IRQ_TYPE_LEVEL_HIGH>;
dmas = <&audma0 0x91>, <&audma0 0xb4>; dmas = <&audma0 0x91>, <&audma0 0xb4>;
dma-names = "rx", "tx"; dma-names = "rx", "tx";
...@@ -1551,61 +1553,61 @@ src6: src@6 { ...@@ -1551,61 +1553,61 @@ src6: src@6 {
}; };
rcar_sound,ssi { rcar_sound,ssi {
ssi0: ssi@0 { ssi0: ssi-0 {
interrupts = <GIC_SPI 370 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 370 IRQ_TYPE_LEVEL_HIGH>;
dmas = <&audma0 0x01>, <&audma0 0x02>, dmas = <&audma0 0x01>, <&audma0 0x02>,
<&audma0 0x15>, <&audma0 0x16>; <&audma0 0x15>, <&audma0 0x16>;
dma-names = "rx", "tx", "rxu", "txu"; dma-names = "rx", "tx", "rxu", "txu";
}; };
ssi1: ssi@1 { ssi1: ssi-1 {
interrupts = <GIC_SPI 371 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 371 IRQ_TYPE_LEVEL_HIGH>;
dmas = <&audma0 0x03>, <&audma0 0x04>, dmas = <&audma0 0x03>, <&audma0 0x04>,
<&audma0 0x49>, <&audma0 0x4a>; <&audma0 0x49>, <&audma0 0x4a>;
dma-names = "rx", "tx", "rxu", "txu"; dma-names = "rx", "tx", "rxu", "txu";
}; };
ssi2: ssi@2 { ssi2: ssi-2 {
interrupts = <GIC_SPI 372 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 372 IRQ_TYPE_LEVEL_HIGH>;
dmas = <&audma0 0x05>, <&audma0 0x06>, dmas = <&audma0 0x05>, <&audma0 0x06>,
<&audma0 0x63>, <&audma0 0x64>; <&audma0 0x63>, <&audma0 0x64>;
dma-names = "rx", "tx", "rxu", "txu"; dma-names = "rx", "tx", "rxu", "txu";
}; };
ssi3: ssi@3 { ssi3: ssi-3 {
interrupts = <GIC_SPI 373 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 373 IRQ_TYPE_LEVEL_HIGH>;
dmas = <&audma0 0x07>, <&audma0 0x08>, dmas = <&audma0 0x07>, <&audma0 0x08>,
<&audma0 0x6f>, <&audma0 0x70>; <&audma0 0x6f>, <&audma0 0x70>;
dma-names = "rx", "tx", "rxu", "txu"; dma-names = "rx", "tx", "rxu", "txu";
}; };
ssi4: ssi@4 { ssi4: ssi-4 {
interrupts = <GIC_SPI 374 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 374 IRQ_TYPE_LEVEL_HIGH>;
dmas = <&audma0 0x09>, <&audma0 0x0a>, dmas = <&audma0 0x09>, <&audma0 0x0a>,
<&audma0 0x71>, <&audma0 0x72>; <&audma0 0x71>, <&audma0 0x72>;
dma-names = "rx", "tx", "rxu", "txu"; dma-names = "rx", "tx", "rxu", "txu";
}; };
ssi5: ssi@5 { ssi5: ssi-5 {
interrupts = <GIC_SPI 375 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 375 IRQ_TYPE_LEVEL_HIGH>;
dmas = <&audma0 0x0b>, <&audma0 0x0c>, dmas = <&audma0 0x0b>, <&audma0 0x0c>,
<&audma0 0x73>, <&audma0 0x74>; <&audma0 0x73>, <&audma0 0x74>;
dma-names = "rx", "tx", "rxu", "txu"; dma-names = "rx", "tx", "rxu", "txu";
}; };
ssi6: ssi@6 { ssi6: ssi-6 {
interrupts = <GIC_SPI 376 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 376 IRQ_TYPE_LEVEL_HIGH>;
dmas = <&audma0 0x0d>, <&audma0 0x0e>, dmas = <&audma0 0x0d>, <&audma0 0x0e>,
<&audma0 0x75>, <&audma0 0x76>; <&audma0 0x75>, <&audma0 0x76>;
dma-names = "rx", "tx", "rxu", "txu"; dma-names = "rx", "tx", "rxu", "txu";
}; };
ssi7: ssi@7 { ssi7: ssi-7 {
interrupts = <GIC_SPI 377 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 377 IRQ_TYPE_LEVEL_HIGH>;
dmas = <&audma0 0x0f>, <&audma0 0x10>, dmas = <&audma0 0x0f>, <&audma0 0x10>,
<&audma0 0x79>, <&audma0 0x7a>; <&audma0 0x79>, <&audma0 0x7a>;
dma-names = "rx", "tx", "rxu", "txu"; dma-names = "rx", "tx", "rxu", "txu";
}; };
ssi8: ssi@8 { ssi8: ssi-8 {
interrupts = <GIC_SPI 378 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 378 IRQ_TYPE_LEVEL_HIGH>;
dmas = <&audma0 0x11>, <&audma0 0x12>, dmas = <&audma0 0x11>, <&audma0 0x12>,
<&audma0 0x7b>, <&audma0 0x7c>; <&audma0 0x7b>, <&audma0 0x7c>;
dma-names = "rx", "tx", "rxu", "txu"; dma-names = "rx", "tx", "rxu", "txu";
}; };
ssi9: ssi@9 { ssi9: ssi-9 {
interrupts = <GIC_SPI 379 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 379 IRQ_TYPE_LEVEL_HIGH>;
dmas = <&audma0 0x13>, <&audma0 0x14>, dmas = <&audma0 0x13>, <&audma0 0x14>,
<&audma0 0x7d>, <&audma0 0x7e>; <&audma0 0x7d>, <&audma0 0x7e>;
......
...@@ -8,8 +8,6 @@ ...@@ -8,8 +8,6 @@
* kind, whether express or implied. * kind, whether express or implied.
*/ */
/include/ "skeleton.dtsi"
#include <dt-bindings/clock/sh73a0-clock.h> #include <dt-bindings/clock/sh73a0-clock.h>
#include <dt-bindings/interrupt-controller/arm-gic.h> #include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/interrupt-controller/irq.h> #include <dt-bindings/interrupt-controller/irq.h>
...@@ -17,6 +15,8 @@ ...@@ -17,6 +15,8 @@
/ { / {
compatible = "renesas,sh73a0"; compatible = "renesas,sh73a0";
interrupt-parent = <&gic>; interrupt-parent = <&gic>;
#address-cells = <1>;
#size-cells = <1>;
cpus { cpus {
#address-cells = <1>; #address-cells = <1>;
......
...@@ -28,6 +28,9 @@ ...@@ -28,6 +28,9 @@
/* MSTP7 */ /* MSTP7 */
#define R7S72100_CLK_ETHER 4 #define R7S72100_CLK_ETHER 4
/* MSTP8 */
#define R7S72100_CLK_MMCIF 4
/* MSTP9 */ /* MSTP9 */
#define R7S72100_CLK_I2C0 7 #define R7S72100_CLK_I2C0 7
#define R7S72100_CLK_I2C1 6 #define R7S72100_CLK_I2C1 6
...@@ -41,4 +44,8 @@ ...@@ -41,4 +44,8 @@
#define R7S72100_CLK_SPI3 4 #define R7S72100_CLK_SPI3 4
#define R7S72100_CLK_SPI4 3 #define R7S72100_CLK_SPI4 3
/* MSTP12 */
#define R7S72100_CLK_SDHI0 3
#define R7S72100_CLK_SDHI1 2
#endif /* __DT_BINDINGS_CLOCK_R7S72100_H__ */ #endif /* __DT_BINDINGS_CLOCK_R7S72100_H__ */
...@@ -20,8 +20,7 @@ ...@@ -20,8 +20,7 @@
#define R8A7794_CLK_QSPI 5 #define R8A7794_CLK_QSPI 5
#define R8A7794_CLK_SDH 6 #define R8A7794_CLK_SDH 6
#define R8A7794_CLK_SD0 7 #define R8A7794_CLK_SD0 7
#define R8A7794_CLK_Z 8 #define R8A7794_CLK_RCAN 8
#define R8A7794_CLK_RCAN 9
/* MSTP0 */ /* MSTP0 */
#define R8A7794_CLK_MSIOF0 0 #define R8A7794_CLK_MSIOF0 0
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment