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