1// SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 2/* 3 * Device Tree file for Cirrus Logic EDB9302 board based on EP9302 SoC 4 */ 5/dts-v1/; 6#include "ep93xx.dtsi" 7 8/ { 9 #address-cells = <1>; 10 #size-cells = <1>; 11 compatible = "cirrus,edb9302", "cirrus,ep9301"; 12 model = "cirrus,edb9302"; 13 14 chosen { 15 }; 16 17 memory@0 { 18 device_type = "memory"; 19 /* should be set from ATAGS */ 20 reg = <0x0000000 0x800000>, 21 <0x1000000 0x800000>, 22 <0x4000000 0x800000>, 23 <0x5000000 0x800000>; 24 }; 25 26 sound { 27 compatible = "audio-graph-card2"; 28 label = "EDB93XX"; 29 links = <&i2s_port>; 30 }; 31 32 leds { 33 compatible = "gpio-leds"; 34 led-0 { 35 label = "grled"; 36 gpios = <&gpio4 0 GPIO_ACTIVE_HIGH>; 37 linux,default-trigger = "heartbeat"; 38 function = LED_FUNCTION_HEARTBEAT; 39 }; 40 41 led-1 { 42 label = "rdled"; 43 gpios = <&gpio4 1 GPIO_ACTIVE_HIGH>; 44 function = LED_FUNCTION_FAULT; 45 }; 46 }; 47}; 48 49&adc { 50 status = "okay"; 51}; 52 53&ebi { 54 flash@60000000 { 55 compatible = "cfi-flash"; 56 reg = <0x60000000 0x1000000>; 57 bank-width = <2>; 58 }; 59}; 60 61ð0 { 62 phy-handle = <&phy0>; 63}; 64 65&gpio0 { 66 gpio-ranges = <&syscon 0 153 1>, 67 <&syscon 1 152 1>, 68 <&syscon 2 151 1>, 69 <&syscon 3 148 1>, 70 <&syscon 4 147 1>, 71 <&syscon 5 146 1>, 72 <&syscon 6 145 1>, 73 <&syscon 7 144 1>; 74}; 75 76&gpio1 { 77 gpio-ranges = <&syscon 0 143 1>, 78 <&syscon 1 142 1>, 79 <&syscon 2 141 1>, 80 <&syscon 3 140 1>, 81 <&syscon 4 165 1>, 82 <&syscon 5 164 1>, 83 <&syscon 6 163 1>, 84 <&syscon 7 160 1>; 85}; 86 87&gpio2 { 88 gpio-ranges = <&syscon 0 115 1>; 89}; 90 91/* edb9302 doesn't have GPIO Port D present */ 92&gpio3 { 93 status = "disabled"; 94}; 95 96&gpio4 { 97 gpio-ranges = <&syscon 0 97 2>; 98}; 99 100&gpio5 { 101 gpio-ranges = <&syscon 1 170 1>, 102 <&syscon 2 169 1>, 103 <&syscon 3 168 1>; 104}; 105 106&gpio6 { 107 gpio-ranges = <&syscon 0 87 2>; 108}; 109 110&gpio7 { 111 gpio-ranges = <&syscon 2 199 4>; 112}; 113 114&i2s { 115 pinctrl-names = "default"; 116 pinctrl-0 = <&i2s_on_ac97_pins>; 117 status = "okay"; 118 i2s_port: port { 119 i2s_ep: endpoint { 120 system-clock-direction-out; 121 frame-master; 122 bitclock-master; 123 mclk-fs = <256>; 124 dai-format = "i2s"; 125 convert-channels = <2>; 126 convert-sample-format = "s32_le"; 127 remote-endpoint = <&codec_ep>; 128 }; 129 }; 130}; 131 132&mdio0 { 133 phy0: ethernet-phy@1 { 134 reg = <1>; 135 device_type = "ethernet-phy"; 136 }; 137}; 138 139&spi0 { 140 cs-gpios = <&gpio0 6 GPIO_ACTIVE_LOW 141 &gpio0 7 GPIO_ACTIVE_LOW>; 142 dmas = <&dma1 10 2>, <&dma1 10 1>; 143 dma-names = "rx", "tx"; 144 status = "okay"; 145 146 cs4271: codec@0 { 147 compatible = "cirrus,cs4271"; 148 reg = <0>; 149 #sound-dai-cells = <0>; 150 spi-max-frequency = <6000000>; 151 spi-cpol; 152 spi-cpha; 153 reset-gpios = <&gpio0 1 GPIO_ACTIVE_LOW>; 154 port { 155 codec_ep: endpoint { 156 remote-endpoint = <&i2s_ep>; 157 }; 158 }; 159 }; 160 161 at25f1024: eeprom@1 { 162 compatible = "atmel,at25"; 163 reg = <1>; 164 address-width = <8>; 165 size = <0x20000>; 166 pagesize = <256>; 167 spi-max-frequency = <20000000>; 168 }; 169}; 170 171&uart0 { 172 status = "okay"; 173}; 174 175&uart1 { 176 status = "okay"; 177}; 178 179&usb0 { 180 status = "okay"; 181}; 182