Renesas RTS7751R2D Plus devicetree. Signed-off-by: Yoshinori Sato <ysato@xxxxxxxxxxxxxxxxxxxx> --- arch/sh/boot/dts/rts7751r2dplus.dts | 169 ++++++++++++++++++++++++++++ 1 file changed, 169 insertions(+) create mode 100644 arch/sh/boot/dts/rts7751r2dplus.dts diff --git a/arch/sh/boot/dts/rts7751r2dplus.dts b/arch/sh/boot/dts/rts7751r2dplus.dts new file mode 100644 index 000000000000..c3aca9316c76 --- /dev/null +++ b/arch/sh/boot/dts/rts7751r2dplus.dts @@ -0,0 +1,169 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Device Tree Source for the Renesas RTS7751R2D Plus + */ + +/dts-v1/; + +#include "sh7751r.dtsi" +#include <dt-bindings/display/sm501.h> + +/ { + model = "Renesas RTS7715R2D Plus"; + compatible = "renesas,rts7751r2d", "renesas,sh7751r"; + + aliases { + serial0 = &scif1; + }; + + chosen { + stdout-path = "serial0:115200n8"; + }; + + memory@c000000 { + device_type = "memory"; + reg = <0x0c000000 0x4000000>; + }; + + r2dintc: interrupt-controller@a4000000 { + compatible = "renesas,sh7751-irl-ext"; + reg = <0xa4000000 0x02>; + interrupt-controller; + #address-cells = <0>; + #interrupt-cells = <2>; + /* + * b15: 12 - TP + * b14: 9 - PCI INTA + * b13: 10 - PCI INTB + * b12: 3 - PCI INTC + * b11: 0 - PCI INTD + * b10: 4 - SM501 + * b9: 1 - CF IDE + * b8: 2 - CF CD + * b7: 8 - SDCARD + * b6: 5 - KEY + * b5: 6 - RTC ALARM + * b4: 7 - RTC T + * b3: unassigned + * b2: unassigned + * b1: unassigned + * b0: 11 -EXT + */ + renesas,enable-reg = <12 9 10 3 0 4 1 2 8 5 6 7 15 15 15 11>; + }; + + display@0 { + compatible = "smi,sm501"; + reg = <0x10000000 0x03e00000 + 0x13e00000 0x00200000>; + interrupt-parent = <&r2dintc>; + interrupts = <4 IRQ_TYPE_LEVEL_LOW>; + mode = "640x480-16@60"; + little-endian; + smi,devices = "usb-host", "uart0"; + swap-fb-endian; + + crt { + smi,flags = "use-init-done", + "disable-at-exit", + "use-hwcursor", + "use-hwaccel"; + }; + + panel { + bpp = <16>; + edid = [00 ff ff ff ff ff ff 00 00 00 00 00 00 00 00 00 + 00 00 01 04 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 f0 0a 80 fb 20 e0 25 10 32 60 + 02 00 00 00 00 00 00 06 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 bd]; + smi,flags = "use-init-done", + "disable-at-exit", + "use-hwcursor", + "use-hwaccel"; + }; + misc-timing { + ex = <SM501_MISC_TIMING_EX_HOLD_16>; + xc = <SM501_MISC_TIMING_XC_INTERNAL>; + usb-over-current-detect-disable; + }; + misc-control { + pad = <SM501_MISC_CONTROL_PAD_24>; + usbclk = <SM501_MISC_CONTROL_USBCLK_XTAL>; + sh-ready-low; + }; + }; + + compact-flash@b4001000 { + compatible = "renesas,rts7751r2d-ata", "ata-generic"; + reg = <0xb4001000 0x0e>, <0xb400080c 2>; + reg-shift = <1>; + interrupt-parent = <&r2dintc>; + interrupts = <1 IRQ_TYPE_LEVEL_LOW>; + }; + + flash@0 { + compatible = "cfi-flash"; + reg = <0x00000000 0x02000000>; + device-width = <2>; + #address-cells = <1>; + #size-cells = <1>; + + partition@0 { + label = "U-Boot"; + reg = <0x00000000 0x00040000>; + }; + + partition@1 { + label = "Environemt"; + reg = <0x00040000 0x00040000>; + }; + + partition@2 { + label = "Kernel"; + reg = <0x00080000 0x001c0000>; + }; + + partition@3 { + label = "Flash_FS"; + reg = <0x00240000 0x00dc0000>; + }; + }; +}; + +&extal { + clock-frequency = <22222222>; +}; + +&cpg { + renesas,mode = <5>; +}; + +&scif1 { + status = "okay"; +}; + +&pcic { + ranges = <0x02000000 0 0xfd000000 0xfd000000 0 0x01000000>, + <0x01000000 0 0x00000000 0xfe240000 0 0x00040000>; + dma-ranges = <0x01000000 0 0xab000000 0xab000000 0 0x00000001>, + <0x02000000 0 0x0c000000 0x0c000000 0 0x04000000>, + <0x02000000 0 0xd0000000 0xd0000000 0 0x00000001>; + interrupt-map = <0x0000 0 0 1 &r2dintc 9 IRQ_TYPE_LEVEL_LOW>, + <0x0000 0 0 2 &r2dintc 10 IRQ_TYPE_LEVEL_LOW>, + <0x0000 0 0 3 &r2dintc 3 IRQ_TYPE_LEVEL_LOW>, + <0x0000 0 0 4 &r2dintc 0 IRQ_TYPE_LEVEL_LOW>, + <0x0800 0 0 1 &r2dintc 10 IRQ_TYPE_LEVEL_LOW>, + <0x0800 0 0 2 &r2dintc 3 IRQ_TYPE_LEVEL_LOW>, + <0x0800 0 0 3 &r2dintc 0 IRQ_TYPE_LEVEL_LOW>, + <0x0800 0 0 4 &r2dintc 9 IRQ_TYPE_LEVEL_LOW>, + <0x1000 0 0 1 &r2dintc 3 IRQ_TYPE_LEVEL_LOW>, + <0x1000 0 0 2 &r2dintc 0 IRQ_TYPE_LEVEL_LOW>, + <0x1000 0 0 3 &r2dintc 9 IRQ_TYPE_LEVEL_LOW>, + <0x1000 0 0 4 &r2dintc 10 IRQ_TYPE_LEVEL_LOW>; + interrupt-map-mask = <0x1800 0 0 7>; + status = "okay"; +}; -- 2.39.2