Commit 9ea6b7df authored by Arnd Bergmann's avatar Arnd Bergmann

Merge tag 'renesas-dts-for-v6.8-tag1' of...

Merge tag 'renesas-dts-for-v6.8-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel into soc/dt

Renesas DTS updates for v6.8

  - Add FLASH support for the Renesas Marzen and Blanche development
    boards,
  - Add 4-bit TX support for the QSPI FLASHes on the RZ/G2L, RZ/G2LC,
    and RZ/V2L SMARC SoMs,
  - Add SDHI support for the RZ/G3S SMARC development kit,
  - Add LCD support for the Atmark Techno Armadillo-800-EVA development
    board, which requires switching from the legacy frame buffer device
    driver to the DRM driver,
  - Miscellaneous fixes and improvements.

* tag 'renesas-dts-for-v6.8-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel:
  ARM: dts: renesas: r9a06g032: Add missing space in compatible
  arm64: dts: renesas: r9a09g011: Add missing space in compatible
  ARM: dts: renesas: armadillo800eva: Add LCD panel
  ARM: dts: renesas: r8a7740: Add LCDC nodes
  ARM: shmobile: defconfig: Switch to DRM_SHMOBILE
  arm64: dts: renesas: draak: Move HDMI bus properties to correct node
  arm64: dts: renesas: draak: Make HDMI the default video input
  arm64: dts: renesas: rzg3s-smarc: Enable SDHI1
  arm64: dts: renesas: rzg3s-smarc-som: Enable SDHI2
  arm64: dts: renesas: rzg2lc-smarc-som: Enable 4-bit tx support
  arm64: dts: renesas: rzg2l-smarc-som: Enable 4-bit tx support
  ARM: dts: renesas: marzen: Rename keyboard nodes
  ARM: dts: renesas: iwg22d-sodimm: Fix stmpe node names
  arm64: dts: renesas: Add missing ADV751[13] power supply properties
  ARM: dts: renesas: Add missing ADV751[13] power supply properties
  ARM: dts: renesas: rcar-gen2: Fix I2C bus demux node names
  riscv: dts: renesas: Convert isa detection to new properties
  ARM: dts: renesas: blanche: Add FLASH node
  ARM: dts: renesas: marzen: Add FLASH node

Link: https://lore.kernel.org/r/cover.1701433489.git.geert+renesas@glider.beSigned-off-by: default avatarArnd Bergmann <arnd@arndb.de>
parents 2cc14f52 95d516f3
...@@ -27,6 +27,15 @@ hdmi_con_out: endpoint { ...@@ -27,6 +27,15 @@ hdmi_con_out: endpoint {
}; };
}; };
}; };
reg_1p8v: regulator-1p8v {
compatible = "regulator-fixed";
regulator-name = "1P8V";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-boot-on;
regulator-always-on;
};
}; };
&can1 { &can1 {
...@@ -69,6 +78,12 @@ hdmi@39 { ...@@ -69,6 +78,12 @@ hdmi@39 {
clocks = <&cec_clock>; clocks = <&cec_clock>;
clock-names = "cec"; clock-names = "cec";
avdd-supply = <&reg_1p8v>;
dvdd-supply = <&reg_1p8v>;
pvdd-supply = <&reg_1p8v>;
dvdd-3v-supply = <&reg_3p3v>;
bgvdd-supply = <&reg_1p8v>;
adi,input-depth = <8>; adi,input-depth = <8>;
adi,input-colorspace = "rgb"; adi,input-colorspace = "rgb";
adi,input-clock = "1x"; adi,input-clock = "1x";
......
...@@ -132,7 +132,7 @@ i2c2: i2c-2 { ...@@ -132,7 +132,7 @@ i2c2: i2c-2 {
i2c-gpio,delay-us = <5>; i2c-gpio,delay-us = <5>;
}; };
backlight { backlight: backlight {
compatible = "pwm-backlight"; compatible = "pwm-backlight";
pwms = <&tpu 2 33333 PWM_POLARITY_INVERTED>; pwms = <&tpu 2 33333 PWM_POLARITY_INVERTED>;
brightness-levels = <0 1 2 4 8 16 32 64 128 255>; brightness-levels = <0 1 2 4 8 16 32 64 128 255>;
...@@ -143,6 +143,18 @@ backlight { ...@@ -143,6 +143,18 @@ backlight {
enable-gpios = <&pfc 61 GPIO_ACTIVE_HIGH>; enable-gpios = <&pfc 61 GPIO_ACTIVE_HIGH>;
}; };
panel {
compatible = "ampire,am-800480l1tmqw-t00h";
backlight = <&backlight>;
power-supply = <&reg_5p0v>;
port {
panel_in: endpoint {
remote-endpoint = <&lcdc0_rgb>;
};
};
};
sound { sound {
compatible = "simple-audio-card"; compatible = "simple-audio-card";
...@@ -228,10 +240,22 @@ rtc@30 { ...@@ -228,10 +240,22 @@ rtc@30 {
}; };
}; };
&pfc { &lcdc0 {
pinctrl-0 = <&lcd0_pins>; pinctrl-0 = <&lcd0_pins>;
pinctrl-names = "default"; pinctrl-names = "default";
status = "okay";
ports {
port@0 {
endpoint {
remote-endpoint = <&panel_in>;
};
};
};
};
&pfc {
ether_pins: ether { ether_pins: ether {
groups = "gether_mii", "gether_int"; groups = "gether_mii", "gether_int";
function = "gether"; function = "gether";
......
...@@ -398,6 +398,61 @@ sh_fsi2: sound@fe1f0000 { ...@@ -398,6 +398,61 @@ sh_fsi2: sound@fe1f0000 {
status = "disabled"; status = "disabled";
}; };
lcdc0: lcd-controller@fe940000 {
compatible = "renesas,r8a7740-lcdc";
reg = <0xfe940000 0x4000>;
interrupts = <GIC_SPI 177 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&mstp1_clks R8A7740_CLK_LCDC0>,
<&cpg_clocks R8A7740_CLK_M3>, <&lcdlclk0_clk>,
<&vou_clk>;
clock-names = "fck", "media", "lclk", "video";
power-domains = <&pd_a4lc>;
status = "disabled";
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
lcdc0_rgb: endpoint {
};
};
};
};
lcdc1: lcd-controller@fe944000 {
compatible = "renesas,r8a7740-lcdc";
reg = <0xfe944000 0x4000>;
interrupts = <GIC_SPI 178 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&mstp1_clks R8A7740_CLK_LCDC1>,
<&cpg_clocks R8A7740_CLK_M3>, <&lcdlclk1_clk>,
<&vou_clk>;
clock-names = "fck", "media", "lclk", "video";
power-domains = <&pd_a4lc>;
status = "disabled";
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
lcdc1_rgb: endpoint {
};
};
port@1 {
reg = <1>;
lcdc1_hdmi: endpoint {
};
};
};
};
tmu0: timer@fff80000 { tmu0: timer@fff80000 {
compatible = "renesas,tmu-r8a7740", "renesas,tmu"; compatible = "renesas,tmu-r8a7740", "renesas,tmu";
reg = <0xfff80000 0x2c>; reg = <0xfff80000 0x2c>;
...@@ -474,6 +529,16 @@ fsibck_clk: fsibck { ...@@ -474,6 +529,16 @@ fsibck_clk: fsibck {
#clock-cells = <0>; #clock-cells = <0>;
clock-frequency = <0>; clock-frequency = <0>;
}; };
lcdlclk0_clk: lcdlclk0 {
compatible = "fixed-clock";
#clock-cells = <0>;
clock-frequency = <0>;
};
lcdlclk1_clk: lcdlclk1 {
compatible = "fixed-clock";
#clock-cells = <0>;
clock-frequency = <0>;
};
/* Special CPG clocks */ /* Special CPG clocks */
cpg_clocks: cpg_clocks@e6150000 { cpg_clocks: cpg_clocks@e6150000 {
......
...@@ -34,6 +34,15 @@ hdmi_con: endpoint { ...@@ -34,6 +34,15 @@ hdmi_con: endpoint {
}; };
}; };
}; };
reg_1p8v: regulator-1p8v {
compatible = "regulator-fixed";
regulator-name = "1P8V";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-boot-on;
regulator-always-on;
};
}; };
&du { &du {
...@@ -81,6 +90,12 @@ hdmi@39 { ...@@ -81,6 +90,12 @@ hdmi@39 {
clock-names = "cec"; clock-names = "cec";
pd-gpios = <&gpio2 24 GPIO_ACTIVE_HIGH>; pd-gpios = <&gpio2 24 GPIO_ACTIVE_HIGH>;
avdd-supply = <&reg_1p8v>;
dvdd-supply = <&reg_1p8v>;
pvdd-supply = <&reg_1p8v>;
dvdd-3v-supply = <&reg_3p3v>;
bgvdd-supply = <&reg_1p8v>;
adi,input-depth = <8>; adi,input-depth = <8>;
adi,input-colorspace = "rgb"; adi,input-colorspace = "rgb";
adi,input-clock = "1x"; adi,input-clock = "1x";
......
...@@ -182,7 +182,7 @@ sgtl5000: codec@a { ...@@ -182,7 +182,7 @@ sgtl5000: codec@a {
VDDIO-supply = <&reg_3p3v>; VDDIO-supply = <&reg_3p3v>;
}; };
stmpe811@44 { port-expander@44 {
compatible = "st,stmpe811"; compatible = "st,stmpe811";
reg = <0x44>; reg = <0x44>;
interrupt-parent = <&gpio4>; interrupt-parent = <&gpio4>;
...@@ -197,7 +197,7 @@ stmpe811@44 { ...@@ -197,7 +197,7 @@ stmpe811@44 {
/* internal ADC reference */ /* internal ADC reference */
st,ref-sel = <0>; st,ref-sel = <0>;
stmpe_touchscreen { touchscreen {
compatible = "st,stmpe-ts"; compatible = "st,stmpe-ts";
/* 8 sample average control */ /* 8 sample average control */
st,ave-ctrl = <3>; st,ave-ctrl = <3>;
......
...@@ -52,10 +52,10 @@ vccq_sdhi0: regulator-vccq-sdhi0 { ...@@ -52,10 +52,10 @@ vccq_sdhi0: regulator-vccq-sdhi0 {
states = <3300000 1>, <1800000 0>; states = <3300000 1>, <1800000 0>;
}; };
keyboard-irq { keypad-0 {
compatible = "gpio-keys"; compatible = "gpio-keys";
pinctrl-0 = <&keyboard_irq_pins>; pinctrl-0 = <&keypad0_pins>;
pinctrl-names = "default"; pinctrl-names = "default";
interrupt-parent = <&gpio0>; interrupt-parent = <&gpio0>;
...@@ -76,11 +76,11 @@ key-2 { ...@@ -76,11 +76,11 @@ key-2 {
}; };
}; };
keyboard-gpio { keypad-1 {
compatible = "gpio-keys-polled"; compatible = "gpio-keys-polled";
poll-interval = <50>; poll-interval = <50>;
pinctrl-0 = <&keyboard_gpio_pins>; pinctrl-0 = <&keypad1_pins>;
pinctrl-names = "default"; pinctrl-names = "default";
key-3 { key-3 {
...@@ -193,7 +193,7 @@ endpoint { ...@@ -193,7 +193,7 @@ endpoint {
}; };
&gpio0 { &gpio0 {
keyboard-irq-hog { keypad0-hog {
gpio-hog; gpio-hog;
gpios = <17 GPIO_ACTIVE_LOW>, <18 GPIO_ACTIVE_LOW>; gpios = <17 GPIO_ACTIVE_LOW>, <18 GPIO_ACTIVE_LOW>;
input; input;
...@@ -215,6 +215,35 @@ &extal_clk { ...@@ -215,6 +215,35 @@ &extal_clk {
}; };
&lbsc { &lbsc {
flash@0 {
compatible = "cfi-flash";
reg = <0x0 0x04000000>;
pinctrl-0 = <&flash_pins>;
pinctrl-names = "default";
bank-width = <2>;
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
partition@0 {
label = "uboot";
reg = <0x00000000 0x00040000>;
read-only;
};
partition@40000 {
label = "uboot-env";
reg = <0x00040000 0x00040000>;
read-only;
};
partition@80000 {
label = "flash";
reg = <0x00080000 0x03f80000>;
};
};
};
ethernet@18000000 { ethernet@18000000 {
compatible = "smsc,lan89218", "smsc,lan9115"; compatible = "smsc,lan89218", "smsc,lan9115";
reg = <0x18000000 0x100>; reg = <0x18000000 0x100>;
...@@ -266,6 +295,11 @@ lbsc { ...@@ -266,6 +295,11 @@ lbsc {
}; };
}; };
flash_pins: flash {
groups = "lbsc_cs0";
function = "lbsc";
};
scif2_pins: scif2 { scif2_pins: scif2 {
groups = "scif2_data_c"; groups = "scif2_data_c";
function = "scif2"; function = "scif2";
...@@ -286,11 +320,11 @@ hspi0_pins: hspi0 { ...@@ -286,11 +320,11 @@ hspi0_pins: hspi0 {
function = "hspi0"; function = "hspi0";
}; };
keyboard_irq_pins: keyboard-irq { keypad0_pins: keypad-0 {
pins = "GP_0_17", "GP_0_18"; pins = "GP_0_17", "GP_0_18";
bias-pull-up; bias-pull-up;
}; };
keyboard_gpio_pins: keyboard-gpio { keypad1_pins: keypad-1 {
pins = "GP_0_19", "GP_0_20"; pins = "GP_0_19", "GP_0_20";
bias-pull-up; bias-pull-up;
}; };
......
...@@ -122,6 +122,15 @@ led8 { ...@@ -122,6 +122,15 @@ led8 {
}; };
}; };
fixedregulator1v8: regulator-1v8 {
compatible = "regulator-fixed";
regulator-name = "fixed-1.8V";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-boot-on;
regulator-always-on;
};
fixedregulator3v3: regulator-3v3 { fixedregulator3v3: regulator-3v3 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
regulator-name = "fixed-3.3V"; regulator-name = "fixed-3.3V";
...@@ -303,7 +312,7 @@ gpioi2c2: i2c-9 { ...@@ -303,7 +312,7 @@ gpioi2c2: i2c-9 {
* *
* IIC0/I2C0 does not appear to support fallback to GPIO. * IIC0/I2C0 does not appear to support fallback to GPIO.
*/ */
i2cexio0: i2c-10 { i2cexio0: i2c-mux1 {
compatible = "i2c-demux-pinctrl"; compatible = "i2c-demux-pinctrl";
i2c-parent = <&iic0>, <&i2c0>; i2c-parent = <&iic0>, <&i2c0>;
i2c-bus-name = "i2c-exio0"; i2c-bus-name = "i2c-exio0";
...@@ -316,7 +325,7 @@ i2cexio0: i2c-10 { ...@@ -316,7 +325,7 @@ i2cexio0: i2c-10 {
* This is similar to the arangement described for i2cexio0 (above) * This is similar to the arangement described for i2cexio0 (above)
* with a fallback to GPIO also provided. * with a fallback to GPIO also provided.
*/ */
i2cexio1: i2c-11 { i2cexio1: i2c-mux2 {
compatible = "i2c-demux-pinctrl"; compatible = "i2c-demux-pinctrl";
i2c-parent = <&iic1>, <&i2c1>, <&gpioi2c1>; i2c-parent = <&iic1>, <&i2c1>, <&gpioi2c1>;
i2c-bus-name = "i2c-exio1"; i2c-bus-name = "i2c-exio1";
...@@ -328,7 +337,7 @@ i2cexio1: i2c-11 { ...@@ -328,7 +337,7 @@ i2cexio1: i2c-11 {
* IIC2 and I2C2 may be switched using pinmux. * IIC2 and I2C2 may be switched using pinmux.
* A fallback to GPIO is also provided. * A fallback to GPIO is also provided.
*/ */
i2chdmi: i2c-12 { i2chdmi: i2c-mux3 {
compatible = "i2c-demux-pinctrl"; compatible = "i2c-demux-pinctrl";
i2c-parent = <&iic2>, <&i2c2>, <&gpioi2c2>; i2c-parent = <&iic2>, <&i2c2>, <&gpioi2c2>;
i2c-bus-name = "i2c-hdmi"; i2c-bus-name = "i2c-hdmi";
...@@ -361,6 +370,12 @@ hdmi@39 { ...@@ -361,6 +370,12 @@ hdmi@39 {
clocks = <&cec_clock>; clocks = <&cec_clock>;
clock-names = "cec"; clock-names = "cec";
avdd-supply = <&fixedregulator1v8>;
dvdd-supply = <&fixedregulator1v8>;
pvdd-supply = <&fixedregulator1v8>;
dvdd-3v-supply = <&fixedregulator3v3>;
bgvdd-supply = <&fixedregulator1v8>;
adi,input-depth = <8>; adi,input-depth = <8>;
adi,input-colorspace = "rgb"; adi,input-colorspace = "rgb";
adi,input-clock = "1x"; adi,input-clock = "1x";
...@@ -417,7 +432,7 @@ adv7612_out: endpoint { ...@@ -417,7 +432,7 @@ adv7612_out: endpoint {
* IIC3 and I2C3 may be switched using pinmux. * IIC3 and I2C3 may be switched using pinmux.
* IIC3/I2C3 does not appear to support fallback to GPIO. * IIC3/I2C3 does not appear to support fallback to GPIO.
*/ */
i2cpwr: i2c-13 { i2cpwr: i2c-mux4 {
compatible = "i2c-demux-pinctrl"; compatible = "i2c-demux-pinctrl";
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pmic_irq_pins>; pinctrl-0 = <&pmic_irq_pins>;
......
...@@ -44,6 +44,15 @@ led5 { ...@@ -44,6 +44,15 @@ led5 {
}; };
}; };
fixedregulator1v8: regulator-1v8 {
compatible = "regulator-fixed";
regulator-name = "fixed-1.8V";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-boot-on;
regulator-always-on;
};
fixedregulator3v3: regulator-3v3 { fixedregulator3v3: regulator-3v3 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
regulator-name = "fixed-3.3V"; regulator-name = "fixed-3.3V";
...@@ -296,6 +305,12 @@ hdmi@39 { ...@@ -296,6 +305,12 @@ hdmi@39 {
clocks = <&osc4_clk>; clocks = <&osc4_clk>;
clock-names = "cec"; clock-names = "cec";
avdd-supply = <&fixedregulator1v8>;
dvdd-supply = <&fixedregulator1v8>;
pvdd-supply = <&fixedregulator1v8>;
dvdd-3v-supply = <&fixedregulator3v3>;
bgvdd-supply = <&fixedregulator1v8>;
adi,input-depth = <8>; adi,input-depth = <8>;
adi,input-colorspace = "rgb"; adi,input-colorspace = "rgb";
adi,input-clock = "1x"; adi,input-clock = "1x";
......
...@@ -174,6 +174,24 @@ led8 { ...@@ -174,6 +174,24 @@ led8 {
}; };
}; };
reg_1p8v: regulator-1v8 {
compatible = "regulator-fixed";
regulator-name = "fixed-1.8V";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-boot-on;
regulator-always-on;
};
reg_3p3v: regulator-3v3 {
compatible = "regulator-fixed";
regulator-name = "fixed-3.3V";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
regulator-boot-on;
regulator-always-on;
};
vcc_sdhi0: regulator-vcc-sdhi0 { vcc_sdhi0: regulator-vcc-sdhi0 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
...@@ -340,7 +358,7 @@ gpioi2c4: i2c-11 { ...@@ -340,7 +358,7 @@ gpioi2c4: i2c-11 {
* I2C1 is routed to EXIO connector B, pins 64 (SCL) + 66 (SDA). * I2C1 is routed to EXIO connector B, pins 64 (SCL) + 66 (SDA).
* A fallback to GPIO is provided. * A fallback to GPIO is provided.
*/ */
i2cexio1: i2c-12 { i2cexio1: i2c-mux1 {
compatible = "i2c-demux-pinctrl"; compatible = "i2c-demux-pinctrl";
i2c-parent = <&i2c1>, <&gpioi2c1>; i2c-parent = <&i2c1>, <&gpioi2c1>;
i2c-bus-name = "i2c-exio1"; i2c-bus-name = "i2c-exio1";
...@@ -351,7 +369,7 @@ i2cexio1: i2c-12 { ...@@ -351,7 +369,7 @@ i2cexio1: i2c-12 {
/* /*
* A fallback to GPIO is provided for I2C2. * A fallback to GPIO is provided for I2C2.
*/ */
i2chdmi: i2c-13 { i2chdmi: i2c-mux2 {
compatible = "i2c-demux-pinctrl"; compatible = "i2c-demux-pinctrl";
i2c-parent = <&i2c2>, <&gpioi2c2>; i2c-parent = <&i2c2>, <&gpioi2c2>;
i2c-bus-name = "i2c-hdmi"; i2c-bus-name = "i2c-hdmi";
...@@ -384,6 +402,12 @@ hdmi@39 { ...@@ -384,6 +402,12 @@ hdmi@39 {
clocks = <&cec_clock>; clocks = <&cec_clock>;
clock-names = "cec"; clock-names = "cec";
avdd-supply = <&reg_1p8v>;
dvdd-supply = <&reg_1p8v>;
pvdd-supply = <&reg_1p8v>;
dvdd-3v-supply = <&reg_3p3v>;
bgvdd-supply = <&reg_1p8v>;
adi,input-depth = <8>; adi,input-depth = <8>;
adi,input-colorspace = "rgb"; adi,input-colorspace = "rgb";
adi,input-clock = "1x"; adi,input-clock = "1x";
...@@ -446,7 +470,7 @@ eeprom@50 { ...@@ -446,7 +470,7 @@ eeprom@50 {
* I2C4 is routed to EXIO connector E, pins 37 (SCL) + 39 (SDA). * I2C4 is routed to EXIO connector E, pins 37 (SCL) + 39 (SDA).
* A fallback to GPIO is provided. * A fallback to GPIO is provided.
*/ */
i2cexio4: i2c-14 { i2cexio4: i2c-mux3 {
compatible = "i2c-demux-pinctrl"; compatible = "i2c-demux-pinctrl";
i2c-parent = <&i2c4>, <&gpioi2c4>; i2c-parent = <&i2c4>, <&gpioi2c4>;
i2c-bus-name = "i2c-exio4"; i2c-bus-name = "i2c-exio4";
......
...@@ -47,6 +47,24 @@ memory@200000000 { ...@@ -47,6 +47,24 @@ memory@200000000 {
reg = <2 0x00000000 0 0x40000000>; reg = <2 0x00000000 0 0x40000000>;
}; };
reg_1p8v: regulator-1v8 {
compatible = "regulator-fixed";
regulator-name = "fixed-1.8V";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-boot-on;
regulator-always-on;
};
reg_3p3v: regulator-3v3 {
compatible = "regulator-fixed";
regulator-name = "fixed-3.3V";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
regulator-boot-on;
regulator-always-on;
};
vcc_sdhi0: regulator-vcc-sdhi0 { vcc_sdhi0: regulator-vcc-sdhi0 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
...@@ -148,7 +166,7 @@ gpioi2c2: i2c-9 { ...@@ -148,7 +166,7 @@ gpioi2c2: i2c-9 {
/* /*
* A fallback to GPIO is provided for I2C2. * A fallback to GPIO is provided for I2C2.
*/ */
i2chdmi: i2c-10 { i2chdmi: i2c-mux1 {
compatible = "i2c-demux-pinctrl"; compatible = "i2c-demux-pinctrl";
i2c-parent = <&i2c2>, <&gpioi2c2>; i2c-parent = <&i2c2>, <&gpioi2c2>;
i2c-bus-name = "i2c-hdmi"; i2c-bus-name = "i2c-hdmi";
...@@ -179,6 +197,12 @@ hdmi@39 { ...@@ -179,6 +197,12 @@ hdmi@39 {
interrupt-parent = <&gpio3>; interrupt-parent = <&gpio3>;
interrupts = <29 IRQ_TYPE_LEVEL_LOW>; interrupts = <29 IRQ_TYPE_LEVEL_LOW>;
avdd-supply = <&reg_1p8v>;
dvdd-supply = <&reg_1p8v>;
pvdd-supply = <&reg_1p8v>;
dvdd-3v-supply = <&reg_3p3v>;
bgvdd-supply = <&reg_1p8v>;
adi,input-depth = <8>; adi,input-depth = <8>;
adi,input-colorspace = "rgb"; adi,input-colorspace = "rgb";
adi,input-clock = "1x"; adi,input-clock = "1x";
......
...@@ -30,6 +30,15 @@ memory@40000000 { ...@@ -30,6 +30,15 @@ memory@40000000 {
reg = <0 0x40000000 0 0x40000000>; reg = <0 0x40000000 0 0x40000000>;
}; };
d1_8v: regulator-1v8 {
compatible = "regulator-fixed";
regulator-name = "D1.8V";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-boot-on;
regulator-always-on;
};
d3_3v: regulator-3v3 { d3_3v: regulator-3v3 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
regulator-name = "D3.3V"; regulator-name = "D3.3V";
...@@ -182,6 +191,35 @@ &can_clk { ...@@ -182,6 +191,35 @@ &can_clk {
}; };
&lbsc { &lbsc {
flash@0 {
compatible = "cfi-flash";
reg = <0x00000000 0x04000000>;
pinctrl-0 = <&flash_pins>;
pinctrl-names = "default";
bank-width = <2>;
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
partition@0 {
label = "uboot";
reg = <0x00000000 0x00040000>;
read-only;
};
partition@40000 {
label = "uboot-env";
reg = <0x00040000 0x00040000>;
read-only;
};
partition@80000 {
label = "flash";
reg = <0x00080000 0x03f80000>;
};
};
};
ethernet@18000000 { ethernet@18000000 {
compatible = "smsc,lan89218", "smsc,lan9115"; compatible = "smsc,lan89218", "smsc,lan9115";
reg = <0x18000000 0x100>; reg = <0x18000000 0x100>;
...@@ -240,6 +278,11 @@ du1_pins: du1 { ...@@ -240,6 +278,11 @@ du1_pins: du1 {
function = "du1"; function = "du1";
}; };
flash_pins: flash {
groups = "lbsc_cs0";
function = "lbsc";
};
keyboard_pins: keyboard { keyboard_pins: keyboard {
pins = "GP_3_10", "GP_3_11", "GP_3_12", "GP_3_15", "GP_11_2"; pins = "GP_3_10", "GP_3_11", "GP_3_12", "GP_3_15", "GP_11_2";
bias-pull-up; bias-pull-up;
...@@ -296,6 +339,12 @@ hdmi@39 { ...@@ -296,6 +339,12 @@ hdmi@39 {
interrupt-parent = <&irqc>; interrupt-parent = <&irqc>;
interrupts = <3 IRQ_TYPE_EDGE_FALLING>; interrupts = <3 IRQ_TYPE_EDGE_FALLING>;
avdd-supply = <&d1_8v>;
dvdd-supply = <&d1_8v>;
pvdd-supply = <&d1_8v>;
dvdd-3v-supply = <&d3_3v>;
bgvdd-supply = <&d1_8v>;
adi,input-depth = <8>; adi,input-depth = <8>;
adi,input-colorspace = "rgb"; adi,input-colorspace = "rgb";
adi,input-clock = "1x"; adi,input-clock = "1x";
......
...@@ -29,6 +29,15 @@ memory@40000000 { ...@@ -29,6 +29,15 @@ memory@40000000 {
reg = <0 0x40000000 0 0x40000000>; reg = <0 0x40000000 0 0x40000000>;
}; };
d1_8v: regulator-1v8 {
compatible = "regulator-fixed";
regulator-name = "D1.8V";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-boot-on;
regulator-always-on;
};
d3_3v: regulator-3v3 { d3_3v: regulator-3v3 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
regulator-name = "D3.3V"; regulator-name = "D3.3V";
...@@ -254,6 +263,12 @@ hdmi@3d { ...@@ -254,6 +263,12 @@ hdmi@3d {
reg = <0x3d>, <0x4d>, <0x2d>, <0x5d>; reg = <0x3d>, <0x4d>, <0x2d>, <0x5d>;
reg-names = "main", "edid", "cec", "packet"; reg-names = "main", "edid", "cec", "packet";
avdd-supply = <&d1_8v>;
dvdd-supply = <&d1_8v>;
pvdd-supply = <&d1_8v>;
dvdd-3v-supply = <&d3_3v>;
bgvdd-supply = <&d1_8v>;
adi,input-depth = <8>; adi,input-depth = <8>;
adi,input-colorspace = "rgb"; adi,input-colorspace = "rgb";
adi,input-clock = "1x"; adi,input-clock = "1x";
...@@ -283,6 +298,12 @@ hdmi@39 { ...@@ -283,6 +298,12 @@ hdmi@39 {
reg = <0x39>, <0x49>, <0x29>, <0x59>; reg = <0x39>, <0x49>, <0x29>, <0x59>;
reg-names = "main", "edid", "cec", "packet"; reg-names = "main", "edid", "cec", "packet";
avdd-supply = <&d1_8v>;
dvdd-supply = <&d1_8v>;
pvdd-supply = <&d1_8v>;
dvdd-3v-supply = <&d3_3v>;
bgvdd-supply = <&d1_8v>;
adi,input-depth = <8>; adi,input-depth = <8>;
adi,input-colorspace = "rgb"; adi,input-colorspace = "rgb";
adi,input-clock = "1x"; adi,input-clock = "1x";
......
...@@ -165,6 +165,24 @@ led8 { ...@@ -165,6 +165,24 @@ led8 {
}; };
}; };
reg_1p8v: regulator-1v8 {
compatible = "regulator-fixed";
regulator-name = "fixed-1.8V";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-boot-on;
regulator-always-on;
};
reg_3p3v: regulator-3v3 {
compatible = "regulator-fixed";
regulator-name = "fixed-3.3V";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
regulator-boot-on;
regulator-always-on;
};
vcc_sdhi0: regulator-vcc-sdhi0 { vcc_sdhi0: regulator-vcc-sdhi0 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
...@@ -324,7 +342,7 @@ gpioi2c4: i2c-10 { ...@@ -324,7 +342,7 @@ gpioi2c4: i2c-10 {
/* /*
* A fallback to GPIO is provided for I2C2. * A fallback to GPIO is provided for I2C2.
*/ */
i2chdmi: i2c-11 { i2chdmi: i2c-mux1 {
compatible = "i2c-demux-pinctrl"; compatible = "i2c-demux-pinctrl";
i2c-parent = <&i2c2>, <&gpioi2c2>; i2c-parent = <&i2c2>, <&gpioi2c2>;
i2c-bus-name = "i2c-hdmi"; i2c-bus-name = "i2c-hdmi";
...@@ -368,6 +386,12 @@ hdmi@39 { ...@@ -368,6 +386,12 @@ hdmi@39 {
interrupt-parent = <&gpio3>; interrupt-parent = <&gpio3>;
interrupts = <29 IRQ_TYPE_LEVEL_LOW>; interrupts = <29 IRQ_TYPE_LEVEL_LOW>;
avdd-supply = <&reg_1p8v>;
dvdd-supply = <&reg_1p8v>;
pvdd-supply = <&reg_1p8v>;
dvdd-3v-supply = <&reg_3p3v>;
bgvdd-supply = <&reg_1p8v>;
adi,input-depth = <8>; adi,input-depth = <8>;
adi,input-colorspace = "rgb"; adi,input-colorspace = "rgb";
adi,input-clock = "1x"; adi,input-clock = "1x";
...@@ -430,7 +454,7 @@ eeprom@50 { ...@@ -430,7 +454,7 @@ eeprom@50 {
* I2C4 is routed to EXIO connector E, pins 37 (SCL) + 39 (SDA). * I2C4 is routed to EXIO connector E, pins 37 (SCL) + 39 (SDA).
* A fallback to GPIO is provided. * A fallback to GPIO is provided.
*/ */
i2cexio4: i2c-12 { i2cexio4: i2c-mux2 {
compatible = "i2c-demux-pinctrl"; compatible = "i2c-demux-pinctrl";
i2c-parent = <&i2c4>, <&gpioi2c4>; i2c-parent = <&i2c4>, <&gpioi2c4>;
i2c-bus-name = "i2c-exio4"; i2c-bus-name = "i2c-exio4";
......
...@@ -192,7 +192,7 @@ gpioi2c4: i2c-10 { ...@@ -192,7 +192,7 @@ gpioi2c4: i2c-10 {
/* /*
* A fallback to GPIO is provided for I2C1. * A fallback to GPIO is provided for I2C1.
*/ */
i2chdmi: i2c-11 { i2chdmi: i2c-mux1 {
compatible = "i2c-demux-pinctrl"; compatible = "i2c-demux-pinctrl";
i2c-parent = <&i2c1>, <&gpioi2c1>; i2c-parent = <&i2c1>, <&gpioi2c1>;
i2c-bus-name = "i2c-hdmi"; i2c-bus-name = "i2c-hdmi";
...@@ -222,7 +222,7 @@ eeprom@50 { ...@@ -222,7 +222,7 @@ eeprom@50 {
* I2C4 is routed to EXIO connector B, pins 73 (SCL) + 74 (SDA). * I2C4 is routed to EXIO connector B, pins 73 (SCL) + 74 (SDA).
* A fallback to GPIO is provided. * A fallback to GPIO is provided.
*/ */
i2cexio4: i2c-14 { i2cexio4: i2c-mux2 {
compatible = "i2c-demux-pinctrl"; compatible = "i2c-demux-pinctrl";
i2c-parent = <&i2c4>, <&gpioi2c4>; i2c-parent = <&i2c4>, <&gpioi2c4>;
i2c-bus-name = "i2c-exio4"; i2c-bus-name = "i2c-exio4";
......
...@@ -102,6 +102,15 @@ key-d { ...@@ -102,6 +102,15 @@ key-d {
}; };
}; };
d1_8v: regulator-d1-8v {
compatible = "regulator-fixed";
regulator-name = "D1.8V";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-boot-on;
regulator-always-on;
};
d3_3v: regulator-d3-3v { d3_3v: regulator-d3-3v {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
regulator-name = "D3.3V"; regulator-name = "D3.3V";
...@@ -225,7 +234,7 @@ gpioi2c1: i2c-9 { ...@@ -225,7 +234,7 @@ gpioi2c1: i2c-9 {
/* /*
* A fallback to GPIO is provided for I2C1. * A fallback to GPIO is provided for I2C1.
*/ */
i2chdmi: i2c-10 { i2chdmi: i2c-mux1 {
compatible = "i2c-demux-pinctrl"; compatible = "i2c-demux-pinctrl";
i2c-parent = <&i2c1>, <&gpioi2c1>; i2c-parent = <&i2c1>, <&gpioi2c1>;
i2c-bus-name = "i2c-hdmi"; i2c-bus-name = "i2c-hdmi";
...@@ -256,6 +265,12 @@ hdmi@39 { ...@@ -256,6 +265,12 @@ hdmi@39 {
interrupt-parent = <&gpio5>; interrupt-parent = <&gpio5>;
interrupts = <23 IRQ_TYPE_LEVEL_LOW>; interrupts = <23 IRQ_TYPE_LEVEL_LOW>;
avdd-supply = <&d1_8v>;
dvdd-supply = <&d1_8v>;
pvdd-supply = <&d1_8v>;
dvdd-3v-supply = <&d3_3v>;
bgvdd-supply = <&d1_8v>;
adi,input-depth = <8>; adi,input-depth = <8>;
adi,input-colorspace = "rgb"; adi,input-colorspace = "rgb";
adi,input-clock = "1x"; adi,input-clock = "1x";
......
...@@ -437,7 +437,7 @@ gic: interrupt-controller@44101000 { ...@@ -437,7 +437,7 @@ gic: interrupt-controller@44101000 {
}; };
can0: can@52104000 { can0: can@52104000 {
compatible = "renesas,r9a06g032-sja1000","renesas,rzn1-sja1000"; compatible = "renesas,r9a06g032-sja1000", "renesas,rzn1-sja1000";
reg = <0x52104000 0x800>; reg = <0x52104000 0x800>;
reg-io-width = <4>; reg-io-width = <4>;
interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>;
......
...@@ -134,8 +134,10 @@ CONFIG_VIDEO_ADV7604=y ...@@ -134,8 +134,10 @@ CONFIG_VIDEO_ADV7604=y
CONFIG_VIDEO_ADV7604_CEC=y CONFIG_VIDEO_ADV7604_CEC=y
CONFIG_VIDEO_ML86V7667=y CONFIG_VIDEO_ML86V7667=y
CONFIG_DRM=y CONFIG_DRM=y
CONFIG_DRM_FBDEV_EMULATION=y
CONFIG_DRM_RCAR_DU=y CONFIG_DRM_RCAR_DU=y
# CONFIG_DRM_RCAR_USE_MIPI_DSI is not set # CONFIG_DRM_RCAR_USE_MIPI_DSI is not set
CONFIG_DRM_SHMOBILE=y
CONFIG_DRM_PANEL_SIMPLE=y CONFIG_DRM_PANEL_SIMPLE=y
CONFIG_DRM_PANEL_EDP=y CONFIG_DRM_PANEL_EDP=y
CONFIG_DRM_DISPLAY_CONNECTOR=y CONFIG_DRM_DISPLAY_CONNECTOR=y
...@@ -144,8 +146,7 @@ CONFIG_DRM_SII902X=y ...@@ -144,8 +146,7 @@ CONFIG_DRM_SII902X=y
CONFIG_DRM_SIMPLE_BRIDGE=y CONFIG_DRM_SIMPLE_BRIDGE=y
CONFIG_DRM_I2C_ADV7511=y CONFIG_DRM_I2C_ADV7511=y
CONFIG_DRM_I2C_ADV7511_AUDIO=y CONFIG_DRM_I2C_ADV7511_AUDIO=y
CONFIG_FB=y CONFIG_FB_DEVICE=y
CONFIG_FB_SH_MOBILE_LCDC=y
CONFIG_BACKLIGHT_PWM=y CONFIG_BACKLIGHT_PWM=y
CONFIG_BACKLIGHT_AS3711=y CONFIG_BACKLIGHT_AS3711=y
CONFIG_SOUND=y CONFIG_SOUND=y
......
...@@ -356,12 +356,9 @@ port@3 { ...@@ -356,12 +356,9 @@ port@3 {
* CVBS and HDMI inputs through SW[49-53] * CVBS and HDMI inputs through SW[49-53]
* switches. * switches.
* *
* CVBS is the default selection, link it to * HDMI is the default selection, leave CVBS
* VIN4 here. * not connected here.
*/ */
adv7180_out: endpoint {
remote-endpoint = <&vin4_in>;
};
}; };
}; };
...@@ -374,6 +371,12 @@ hdmi-encoder@39 { ...@@ -374,6 +371,12 @@ hdmi-encoder@39 {
interrupt-parent = <&gpio1>; interrupt-parent = <&gpio1>;
interrupts = <28 IRQ_TYPE_LEVEL_LOW>; interrupts = <28 IRQ_TYPE_LEVEL_LOW>;
avdd-supply = <&reg_1p8v>;
dvdd-supply = <&reg_1p8v>;
pvdd-supply = <&reg_1p8v>;
dvdd-3v-supply = <&reg_3p3v>;
bgvdd-supply = <&reg_1p8v>;
adi,input-depth = <8>; adi,input-depth = <8>;
adi,input-colorspace = "rgb"; adi,input-colorspace = "rgb";
adi,input-clock = "1x"; adi,input-clock = "1x";
...@@ -423,13 +426,11 @@ port@2 { ...@@ -423,13 +426,11 @@ port@2 {
* CVBS and HDMI inputs through SW[49-53] * CVBS and HDMI inputs through SW[49-53]
* switches. * switches.
* *
* CVBS is the default selection, leave HDMI * HDMI is the default selection, link it to
* not connected here. * VIN4 here.
*/ */
adv7612_out: endpoint { adv7612_out: endpoint {
pclk-sample = <0>; remote-endpoint = <&vin4_in>;
hsync-active = <0>;
vsync-active = <0>;
}; };
}; };
}; };
...@@ -580,8 +581,8 @@ usb0_pins: usb0 { ...@@ -580,8 +581,8 @@ usb0_pins: usb0 {
function = "usb0"; function = "usb0";
}; };
vin4_pins_cvbs: vin4 { vin4_pins: vin4 {
groups = "vin4_data8", "vin4_sync", "vin4_clk"; groups = "vin4_data24", "vin4_sync", "vin4_clk";
function = "vin4"; function = "vin4";
}; };
}; };
...@@ -729,7 +730,7 @@ &usb2_phy0 { ...@@ -729,7 +730,7 @@ &usb2_phy0 {
}; };
&vin4 { &vin4 {
pinctrl-0 = <&vin4_pins_cvbs>; pinctrl-0 = <&vin4_pins>;
pinctrl-names = "default"; pinctrl-names = "default";
status = "okay"; status = "okay";
...@@ -737,7 +738,10 @@ &vin4 { ...@@ -737,7 +738,10 @@ &vin4 {
ports { ports {
port { port {
vin4_in: endpoint { vin4_in: endpoint {
remote-endpoint = <&adv7180_out>; pclk-sample = <0>;
hsync-active = <0>;
vsync-active = <0>;
remote-endpoint = <&adv7612_out>;
}; };
}; };
}; };
......
...@@ -403,6 +403,12 @@ hdmi-encoder@39 { ...@@ -403,6 +403,12 @@ hdmi-encoder@39 {
interrupt-parent = <&gpio1>; interrupt-parent = <&gpio1>;
interrupts = <1 IRQ_TYPE_LEVEL_LOW>; interrupts = <1 IRQ_TYPE_LEVEL_LOW>;
avdd-supply = <&reg_1p8v>;
dvdd-supply = <&reg_1p8v>;
pvdd-supply = <&reg_1p8v>;
dvdd-3v-supply = <&reg_3p3v>;
bgvdd-supply = <&reg_1p8v>;
adi,input-depth = <8>; adi,input-depth = <8>;
adi,input-colorspace = "rgb"; adi,input-colorspace = "rgb";
adi,input-clock = "1x"; adi,input-clock = "1x";
......
...@@ -29,6 +29,15 @@ chosen { ...@@ -29,6 +29,15 @@ chosen {
stdout-path = "serial0:115200n8"; stdout-path = "serial0:115200n8";
}; };
d1p8: regulator-fixed {
compatible = "regulator-fixed";
regulator-name = "fixed-1.8V";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-boot-on;
regulator-always-on;
};
d3p3: regulator-fixed { d3p3: regulator-fixed {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
regulator-name = "fixed-3.3V"; regulator-name = "fixed-3.3V";
...@@ -166,6 +175,12 @@ hdmi@39 { ...@@ -166,6 +175,12 @@ hdmi@39 {
interrupt-parent = <&gpio1>; interrupt-parent = <&gpio1>;
interrupts = <20 IRQ_TYPE_LEVEL_LOW>; interrupts = <20 IRQ_TYPE_LEVEL_LOW>;
avdd-supply = <&d1p8>;
dvdd-supply = <&d1p8>;
pvdd-supply = <&d1p8>;
dvdd-3v-supply = <&d3p3>;
bgvdd-supply = <&d1p8>;
adi,input-depth = <8>; adi,input-depth = <8>;
adi,input-colorspace = "rgb"; adi,input-colorspace = "rgb";
adi,input-clock = "1x"; adi,input-clock = "1x";
......
...@@ -163,7 +163,7 @@ usb3peri: usb3peri@85070000 { ...@@ -163,7 +163,7 @@ usb3peri: usb3peri@85070000 {
}; };
avb: ethernet@a3300000 { avb: ethernet@a3300000 {
compatible = "renesas,etheravb-r9a09g011","renesas,etheravb-rzv2m"; compatible = "renesas,etheravb-r9a09g011", "renesas,etheravb-rzv2m";
reg = <0 0xa3300000 0 0x800>; reg = <0 0xa3300000 0 0x800>;
interrupts = <GIC_SPI 251 IRQ_TYPE_LEVEL_HIGH>, /* ch0: Rx0 BE */ interrupts = <GIC_SPI 251 IRQ_TYPE_LEVEL_HIGH>, /* ch0: Rx0 BE */
<GIC_SPI 252 IRQ_TYPE_LEVEL_HIGH>, /* ch1: Rx1 NC */ <GIC_SPI 252 IRQ_TYPE_LEVEL_HIGH>, /* ch1: Rx1 NC */
......
...@@ -312,6 +312,7 @@ flash@0 { ...@@ -312,6 +312,7 @@ flash@0 {
m25p,fast-read; m25p,fast-read;
spi-max-frequency = <50000000>; spi-max-frequency = <50000000>;
spi-rx-bus-width = <4>; spi-rx-bus-width = <4>;
spi-tx-bus-width = <4>;
partitions { partitions {
compatible = "fixed-partitions"; compatible = "fixed-partitions";
......
...@@ -241,6 +241,7 @@ flash@0 { ...@@ -241,6 +241,7 @@ flash@0 {
m25p,fast-read; m25p,fast-read;
spi-max-frequency = <50000000>; spi-max-frequency = <50000000>;
spi-rx-bus-width = <4>; spi-rx-bus-width = <4>;
spi-tx-bus-width = <4>;
partitions { partitions {
compatible = "fixed-partitions"; compatible = "fixed-partitions";
......
...@@ -13,14 +13,21 @@ ...@@ -13,14 +13,21 @@
* @SW_SD0_DEV_SEL: * @SW_SD0_DEV_SEL:
* 0 - SD0 is connected to eMMC * 0 - SD0 is connected to eMMC
* 1 - SD0 is connected to uSD0 card * 1 - SD0 is connected to uSD0 card
* @SW_SD2_EN:
* 0 - SCIF1, SSI0, IRQ0, IRQ1 connected to SoC
* 1 - SD2 is connected to SoC
*/ */
#define SW_SD0_DEV_SEL 1 #define SW_SD0_DEV_SEL 1
#define SW_SD2_EN 1
/ { / {
compatible = "renesas,rzg3s-smarcm", "renesas,r9a08g045s33", "renesas,r9a08g045"; compatible = "renesas,rzg3s-smarcm", "renesas,r9a08g045s33", "renesas,r9a08g045";
aliases { aliases {
mmc0 = &sdhi0; mmc0 = &sdhi0;
#if SW_SD2_EN
mmc2 = &sdhi2;
#endif
}; };
chosen { chosen {
...@@ -63,6 +70,15 @@ reg_1p8v: regulator1 { ...@@ -63,6 +70,15 @@ reg_1p8v: regulator1 {
regulator-always-on; regulator-always-on;
}; };
#endif #endif
vcc_sdhi2: regulator2 {
compatible = "regulator-fixed";
regulator-name = "SDHI2 Vcc";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
gpios = <&pinctrl RZG2L_GPIO(8, 1) GPIO_ACTIVE_HIGH>;
enable-active-high;
};
}; };
&extal_clk { &extal_clk {
...@@ -100,6 +116,17 @@ &sdhi0 { ...@@ -100,6 +116,17 @@ &sdhi0 {
}; };
#endif #endif
#if SW_SD2_EN
&sdhi2 {
pinctrl-0 = <&sdhi2_pins>;
pinctrl-names = "default";
vmmc-supply = <&vcc_sdhi2>;
bus-width = <4>;
max-frequency = <50000000>;
status = "okay";
};
#endif
&pinctrl { &pinctrl {
sdhi0_pins: sd0 { sdhi0_pins: sd0 {
data { data {
...@@ -139,4 +166,26 @@ sdhi0_emmc_pins: sd0-emmc { ...@@ -139,4 +166,26 @@ sdhi0_emmc_pins: sd0-emmc {
"SD0_CLK", "SD0_CMD", "SD0_RST#"; "SD0_CLK", "SD0_CMD", "SD0_RST#";
power-source = <1800>; power-source = <1800>;
}; };
sdhi2_pins: sd2 {
data {
pins = "P11_2", "P11_3", "P12_0", "P12_1";
input-enable;
};
ctrl {
pins = "P11_1";
input-enable;
};
mux {
pinmux = <RZG2L_PORT_PINMUX(11, 0, 8)>, /* SD2_CLK */
<RZG2L_PORT_PINMUX(11, 1, 8)>, /* SD2_CMD */
<RZG2L_PORT_PINMUX(11, 2, 8)>, /* SD2_DATA0 */
<RZG2L_PORT_PINMUX(11, 3, 8)>, /* SD2_DATA1 */
<RZG2L_PORT_PINMUX(12, 0, 8)>, /* SD2_DATA2 */
<RZG2L_PORT_PINMUX(12, 1, 8)>, /* SD2_DATA3 */
<RZG2L_PORT_PINMUX(14, 1, 7)>; /* SD2_CD# */
};
};
}; };
...@@ -11,6 +11,26 @@ ...@@ -11,6 +11,26 @@
/ { / {
aliases { aliases {
serial0 = &scif0; serial0 = &scif0;
mmc1 = &sdhi1;
};
vcc_sdhi1: regulator-vcc-sdhi1 {
compatible = "regulator-fixed";
regulator-name = "SDHI1 Vcc";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
gpios = <&pinctrl RZG2L_GPIO(2, 3) GPIO_ACTIVE_HIGH>;
enable-active-high;
};
vccq_sdhi1: regulator-vccq-sdhi1 {
compatible = "regulator-gpio";
regulator-name = "SDHI1 VccQ";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <3300000>;
gpios = <&pinctrl RZG2L_GPIO(4, 2) GPIO_ACTIVE_HIGH>;
gpios-states = <1>;
states = <3300000 1>, <1800000 0>;
}; };
}; };
...@@ -19,6 +39,38 @@ scif0_pins: scif0 { ...@@ -19,6 +39,38 @@ scif0_pins: scif0 {
pinmux = <RZG2L_PORT_PINMUX(6, 3, 1)>, /* RXD */ pinmux = <RZG2L_PORT_PINMUX(6, 3, 1)>, /* RXD */
<RZG2L_PORT_PINMUX(6, 4, 1)>; /* TXD */ <RZG2L_PORT_PINMUX(6, 4, 1)>; /* TXD */
}; };
sdhi1_pins: sd1 {
data {
pins = "SD1_DATA0", "SD1_DATA1", "SD1_DATA2", "SD1_DATA3";
power-source = <3300>;
};
ctrl {
pins = "SD1_CLK", "SD1_CMD";
power-source = <3300>;
};
cd {
pinmux = <RZG2L_PORT_PINMUX(0, 2, 1)>; /* SD1_CD */
};
};
sdhi1_pins_uhs: sd1-uhs {
data {
pins = "SD1_DATA0", "SD1_DATA1", "SD1_DATA2", "SD1_DATA3";
power-source = <1800>;
};
ctrl {
pins = "SD1_CLK", "SD1_CMD";
power-source = <1800>;
};
cd {
pinmux = <RZG2L_PORT_PINMUX(0, 2, 1)>; /* SD1_CD */
};
};
}; };
&scif0 { &scif0 {
...@@ -26,3 +78,16 @@ &scif0 { ...@@ -26,3 +78,16 @@ &scif0 {
pinctrl-0 = <&scif0_pins>; pinctrl-0 = <&scif0_pins>;
status = "okay"; status = "okay";
}; };
&sdhi1 {
pinctrl-0 = <&sdhi1_pins>;
pinctrl-1 = <&sdhi1_pins_uhs>;
pinctrl-names = "default", "state_uhs";
vmmc-supply = <&vcc_sdhi1>;
vqmmc-supply = <&vccq_sdhi1>;
bus-width = <4>;
sd-uhs-sdr50;
sd-uhs-sdr104;
max-frequency = <125000000>;
status = "okay";
};
...@@ -24,6 +24,10 @@ cpu0: cpu@0 { ...@@ -24,6 +24,10 @@ cpu0: cpu@0 {
reg = <0x0>; reg = <0x0>;
status = "okay"; status = "okay";
riscv,isa = "rv64imafdc"; riscv,isa = "rv64imafdc";
riscv,isa-base = "rv64i";
riscv,isa-extensions = "i", "m", "a", "f", "d", "c",
"zicntr", "zicsr", "zifencei",
"zihpm";
mmu-type = "riscv,sv39"; mmu-type = "riscv,sv39";
i-cache-size = <0x8000>; i-cache-size = <0x8000>;
i-cache-line-size = <0x40>; i-cache-line-size = <0x40>;
......
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