blob: be3fd769677aab0e4f156a4d7f834bf2b79dc559 [file] [log] [blame]
Max Filippov5584b4d2012-11-03 12:57:52 +04001/ {
Baruch Siach42beb762013-12-01 10:13:33 +02002 compatible = "cdns,xtensa-xtfpga";
Max Filippov5584b4d2012-11-03 12:57:52 +04003 #address-cells = <1>;
4 #size-cells = <1>;
5 interrupt-parent = <&pic>;
6
7 chosen {
8 bootargs = "earlycon=uart8250,mmio32,0xfd050020,115200n8 console=ttyS0,115200n8 ip=dhcp root=/dev/nfs rw debug";
9 };
10
11 memory@0 {
12 device_type = "memory";
13 reg = <0x00000000 0x06000000>;
14 };
15
16 cpus {
17 #address-cells = <1>;
18 #size-cells = <0>;
19 cpu@0 {
Baruch Siach42beb762013-12-01 10:13:33 +020020 compatible = "cdns,xtensa-cpu";
Max Filippov5584b4d2012-11-03 12:57:52 +040021 reg = <0>;
22 /* Filled in by platform_setup from FPGA register
23 * clock-frequency = <100000000>;
24 */
25 };
26 };
27
28 pic: pic {
Max Filippovcbd1de22013-12-01 12:59:49 +040029 compatible = "cdns,xtensa-pic";
Max Filippov5584b4d2012-11-03 12:57:52 +040030 /* one cell: internal irq number,
31 * two cells: second cell == 0: internal irq number
32 * second cell == 1: external irq number
33 */
34 #interrupt-cells = <2>;
35 interrupt-controller;
36 };
37
Max Filippovcdc9af72014-01-29 07:42:46 +040038 clocks {
39 osc: main-oscillator {
40 #clock-cells = <0>;
41 compatible = "fixed-clock";
42 };
Max Filippovc2c62e62013-04-19 21:01:31 +040043
44 clk54: clk54 {
45 #clock-cells = <0>;
46 compatible = "fixed-clock";
47 clock-frequency = <54000000>;
48 };
Max Filippovcdc9af72014-01-29 07:42:46 +040049 };
50
Max Filippov08a7bbf2014-02-23 03:48:32 +040051 soc {
52 #address-cells = <1>;
53 #size-cells = <1>;
54 compatible = "simple-bus";
55 ranges = <0x00000000 0xf0000000 0x10000000>;
Max Filippov5584b4d2012-11-03 12:57:52 +040056
Max Filippov08a7bbf2014-02-23 03:48:32 +040057 serial0: serial@0d050020 {
58 device_type = "serial";
59 compatible = "ns16550a";
60 no-loopback-test;
61 reg = <0x0d050020 0x20>;
62 reg-shift = <2>;
Max Filippovabfbd892015-08-24 19:44:46 +030063 reg-io-width = <4>;
64 native-endian;
Max Filippov08a7bbf2014-02-23 03:48:32 +040065 interrupts = <0 1>; /* external irq 0 */
66 clocks = <&osc>;
67 };
68
69 enet0: ethoc@0d030000 {
70 compatible = "opencores,ethoc";
71 reg = <0x0d030000 0x4000 0x0d800000 0x4000>;
72 interrupts = <1 1>; /* external irq 1 */
73 local-mac-address = [00 50 c2 13 6f 00];
74 clocks = <&osc>;
75 };
Max Filippovc2c62e62013-04-19 21:01:31 +040076
77 i2s0: xtfpga-i2s@0d080000 {
78 #sound-dai-cells = <0>;
79 compatible = "cdns,xtfpga-i2s";
80 reg = <0x0d080000 0x40>;
81 interrupts = <2 1>; /* external irq 2 */
82 clocks = <&cdce706 4>;
83 };
84
85 i2c0: i2c-master@0d090000 {
86 compatible = "opencores,i2c-ocores";
87 #address-cells = <1>;
88 #size-cells = <0>;
89 reg = <0x0d090000 0x20>;
90 reg-shift = <2>;
91 reg-io-width = <1>;
92 interrupts = <4 1>;
93 clocks = <&osc>;
94
95 cdce706: clock-synth@69 {
96 compatible = "ti,cdce706";
97 #clock-cells = <1>;
98 reg = <0x69>;
99 clocks = <&clk54>;
100 clock-names = "clk_in0";
101 };
102 };
103
104 spi0: spi-master@0d0a0000 {
105 compatible = "cdns,xtfpga-spi";
106 #address-cells = <1>;
107 #size-cells = <0>;
108 reg = <0x0d0a0000 0xc>;
109
110 tlv320aic23: sound-codec@0 {
111 #sound-dai-cells = <0>;
112 compatible = "tlv320aic23";
113 reg = <0>;
114 spi-max-frequency = <12500000>;
115 };
116 };
117 };
118
119 sound {
120 compatible = "simple-audio-card";
121 simple-audio-card,format = "i2s";
122 simple-audio-card,mclk-fs = <256>;
123
124 simple-audio-card,cpu {
125 sound-dai = <&i2s0>;
126 };
127
128 simple-audio-card,codec {
129 sound-dai = <&tlv320aic23>;
130 simple-audio-card,bitclock-master = <0>;
131 simple-audio-card,frame-master = <0>;
132 clocks = <&cdce706 4>;
133 };
Max Filippov5584b4d2012-11-03 12:57:52 +0400134 };
135};