Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

ARM: dts: suniv: add initial DTSI file for F1C100s

F1C100s is one product with the suniv die, which has a 32MiB co-packaged
DDR1 DRAM chip. As we have the support for suniv pin controller and CCU now, add a
initial DTSI for it.

Signed-off-by: Mesih Kilinc <mesihkilinc@gmail.com>
Signed-off-by: Maxime Ripard <maxime.ripard@bootlin.com>

authored by

Mesih Kilinc and committed by
Maxime Ripard
4ba16d17 77e65779

+147
+147
arch/arm/boot/dts/suniv-f1c100s.dtsi
··· 1 + // SPDX-License-Identifier: (GPL-2.0+ OR X11) 2 + /* 3 + * Copyright 2018 Icenowy Zheng <icenowy@aosc.io> 4 + * Copyright 2018 Mesih Kilinc <mesihkilinc@gmail.com> 5 + */ 6 + 7 + #include <dt-bindings/clock/suniv-ccu-f1c100s.h> 8 + #include <dt-bindings/reset/suniv-ccu-f1c100s.h> 9 + 10 + / { 11 + #address-cells = <1>; 12 + #size-cells = <1>; 13 + interrupt-parent = <&intc>; 14 + 15 + clocks { 16 + osc24M: clk-24M { 17 + #clock-cells = <0>; 18 + compatible = "fixed-clock"; 19 + clock-frequency = <24000000>; 20 + clock-output-names = "osc24M"; 21 + }; 22 + 23 + osc32k: clk-32k { 24 + #clock-cells = <0>; 25 + compatible = "fixed-clock"; 26 + clock-frequency = <32768>; 27 + clock-output-names = "osc32k"; 28 + }; 29 + }; 30 + 31 + cpus { 32 + cpu { 33 + compatible = "arm,arm926ej-s"; 34 + device_type = "cpu"; 35 + }; 36 + }; 37 + 38 + soc { 39 + compatible = "simple-bus"; 40 + #address-cells = <1>; 41 + #size-cells = <1>; 42 + ranges; 43 + 44 + sram-controller@1c00000 { 45 + compatible = "allwinner,suniv-f1c100s-system-control", 46 + "allwinner,sun4i-a10-system-control"; 47 + reg = <0x01c00000 0x30>; 48 + #address-cells = <1>; 49 + #size-cells = <1>; 50 + ranges; 51 + 52 + sram_d: sram@10000 { 53 + compatible = "mmio-sram"; 54 + reg = <0x00010000 0x1000>; 55 + #address-cells = <1>; 56 + #size-cells = <1>; 57 + ranges = <0 0x00010000 0x1000>; 58 + 59 + otg_sram: sram-section@0 { 60 + compatible = "allwinner,suniv-f1c100s-sram-d", 61 + "allwinner,sun4i-a10-sram-d"; 62 + reg = <0x0000 0x1000>; 63 + status = "disabled"; 64 + }; 65 + }; 66 + }; 67 + 68 + ccu: clock@1c20000 { 69 + compatible = "allwinner,suniv-f1c100s-ccu"; 70 + reg = <0x01c20000 0x400>; 71 + clocks = <&osc24M>, <&osc32k>; 72 + clock-names = "hosc", "losc"; 73 + #clock-cells = <1>; 74 + #reset-cells = <1>; 75 + }; 76 + 77 + intc: interrupt-controller@1c20400 { 78 + compatible = "allwinner,suniv-f1c100s-ic"; 79 + reg = <0x01c20400 0x400>; 80 + interrupt-controller; 81 + #interrupt-cells = <1>; 82 + }; 83 + 84 + pio: pinctrl@1c20800 { 85 + compatible = "allwinner,suniv-f1c100s-pinctrl"; 86 + reg = <0x01c20800 0x400>; 87 + interrupts = <38>, <39>, <40>; 88 + clocks = <&ccu 37>, <&osc24M>, <&osc32k>; 89 + clock-names = "apb", "hosc", "losc"; 90 + gpio-controller; 91 + interrupt-controller; 92 + #interrupt-cells = <3>; 93 + #gpio-cells = <3>; 94 + 95 + uart0_pe_pins: uart0-pe-pins { 96 + pins = "PE0", "PE1"; 97 + function = "uart0"; 98 + }; 99 + }; 100 + 101 + timer@1c20c00 { 102 + compatible = "allwinner,suniv-f1c100s-timer"; 103 + reg = <0x01c20c00 0x90>; 104 + interrupts = <13>; 105 + clocks = <&osc24M>; 106 + }; 107 + 108 + wdt: watchdog@1c20ca0 { 109 + compatible = "allwinner,suniv-f1c100s-wdt", 110 + "allwinner,sun4i-a10-wdt"; 111 + reg = <0x01c20ca0 0x20>; 112 + }; 113 + 114 + uart0: serial@1c25000 { 115 + compatible = "snps,dw-apb-uart"; 116 + reg = <0x01c25000 0x400>; 117 + interrupts = <1>; 118 + reg-shift = <2>; 119 + reg-io-width = <4>; 120 + clocks = <&ccu 38>; 121 + resets = <&ccu 24>; 122 + status = "disabled"; 123 + }; 124 + 125 + uart1: serial@1c25400 { 126 + compatible = "snps,dw-apb-uart"; 127 + reg = <0x01c25400 0x400>; 128 + interrupts = <2>; 129 + reg-shift = <2>; 130 + reg-io-width = <4>; 131 + clocks = <&ccu 39>; 132 + resets = <&ccu 25>; 133 + status = "disabled"; 134 + }; 135 + 136 + uart2: serial@1c25800 { 137 + compatible = "snps,dw-apb-uart"; 138 + reg = <0x01c25800 0x400>; 139 + interrupts = <3>; 140 + reg-shift = <2>; 141 + reg-io-width = <4>; 142 + clocks = <&ccu 40>; 143 + resets = <&ccu 26>; 144 + status = "disabled"; 145 + }; 146 + }; 147 + };