From c3e420f28cf1ed229753f94bafdb0d5851748af3 Mon Sep 17 00:00:00 2001 From: Michael Lee Date: Mon, 2 May 2016 11:57:40 +0800 Subject: ramips: Add support for D-Link DCH-M225 D-Link DCH-M225 is based on Mediatek MT7620 with 64MB ram, 8MB flash, 3.5mm audio out support. but no ethernet and usb ports. so you must default enable wifi. Signed-off-by: Michael Lee --- target/linux/ramips/dts/DCH-M225.dts | 184 +++++++++++++++++++++++++++++++++++ target/linux/ramips/dts/mt7620a.dtsi | 7 ++ 2 files changed, 191 insertions(+) create mode 100644 target/linux/ramips/dts/DCH-M225.dts (limited to 'target/linux/ramips/dts') diff --git a/target/linux/ramips/dts/DCH-M225.dts b/target/linux/ramips/dts/DCH-M225.dts new file mode 100644 index 0000000000..3c2de8d5c5 --- /dev/null +++ b/target/linux/ramips/dts/DCH-M225.dts @@ -0,0 +1,184 @@ +/dts-v1/; + +/include/ "mt7620a.dtsi" + +/ { + compatible = "dlink,dch-m225", "ralink,mt7620a-soc"; + model = "D-Link DCH-M225"; + + gpio-keys-polled { + compatible = "gpio-keys-polled"; + #address-cells = <1>; + #size-cells = <0>; + poll-interval = <100>; + + wps { + label = "wps"; + gpios = <&gpio0 11 1>; + linux,code = <0x211>; + }; + + reset { + label = "reset"; + gpios = <&gpio1 2 1>; + linux,code = <0x198>; + }; + }; + + gpio-leds { + compatible = "gpio-leds"; + + power { + label = "dch-m225:green:power"; + gpios = <&gpio1 5 1>; + }; + + status { + label = "dch-m225:red:status"; + gpios = <&gpio1 0 1>; + }; + }; + + sound { + compatible = "simple-audio-card"; + simple-audio-card,name = "Audio-I2S"; + simple-audio-card,format = "i2s"; + simple-audio-card,bitclock-master = <&dailink0_master>; + simple-audio-card,frame-master = <&dailink0_master>; + simple-audio-card,widgets = + "Headphone", "Headphones"; + simple-audio-card,routing = + "Headphones", "HP_L", + "Headphones", "HP_R"; + simple-audio-card,mclk-fs = <256>; + simple-audio-card,hp-det-gpio = <&gpio0 14 1>; + + simple-audio-card,cpu { + sound-dai = <&i2s>; + }; + + dailink0_master: simple-audio-card,codec { + sound-dai = <&codec>; + }; + }; +}; + +&gpio0 { + status = "okay"; +}; + +&gpio1 { + status = "okay"; +}; + +&i2c { + status = "okay"; + + codec: wm8960@1a { + #sound-dai-cells = <0>; + compatible = "wlf,wm8960"; + reg = <0x1a>; + + wlf,shared-lrclk; + }; +}; + +&i2s { + #sound-dai-cells = <0>; + status = "okay"; + pinctrl-names = "default"; + pinctrl-0 = <&gpio_i2s_pins>, <&wm8960_mclk_pins>; +}; + +&spi0 { + status = "okay"; + + m25p80@0 { + #address-cells = <1>; + #size-cells = <1>; + compatible = "jedec,spi-nor"; + reg = <0>; + linux,modalias = "m25p80"; + spi-max-frequency = <80000000>; + m25p,fast-read; + + partition@0 { + label = "u-boot"; + reg = <0x0 0x30000>; + read-only; + }; + + partition@30000 { + label = "u-boot-env"; + reg = <0x30000 0x4000>; + read-only; + }; + + factory: partition@34000 { + label = "factory"; + reg = <0x34000 0x4000>; + read-only; + }; + + nvram: partition@38000 { + label = "nvram"; + reg = <0x38000 0x8000>; + read-only; + }; + + partition@40000 { + label = "devconf"; + reg = <0x40000 0x10000>; + read-only; + }; + + partition@50000 { + label = "upgrade_rec"; + reg = <0x50000 0x100000>; + read-only; + }; + + partition@150000 { + label = "firmware"; + reg = <0x150000 0x6b0000>; + }; + }; +}; + +&gdma { + status = "okay"; +}; + +&pinctrl { + state_default: pinctrl0 { + gpio { + ralink,group = "wdt", "rgmii1"; + ralink,function = "gpio"; + }; + + pa { + ralink,group = "pa"; + ralink,function = "pa"; + }; + + wm8960_mclk_pins: wm8960_mclk { + wm8960_mclk { + ralink,group = "mdio"; + ralink,function = "refclk"; + }; + }; + }; +}; + +ðernet { + mtd-mac-address = <&factory 0x4>; +}; + +&gsw { + ralink,port4 = "ephy"; +}; + +&wmac { + ralink,mtd-eeprom = <&factory 0>; +}; + diff --git a/target/linux/ramips/dts/mt7620a.dtsi b/target/linux/ramips/dts/mt7620a.dtsi index 641d248e60..96966b4647 100644 --- a/target/linux/ramips/dts/mt7620a.dtsi +++ b/target/linux/ramips/dts/mt7620a.dtsi @@ -323,6 +323,13 @@ }; }; + gpio_i2s_pins: gpio_i2s { + gpio_i2s { + ralink,group = "uartf"; + ralink,function = "gpio i2s"; + }; + }; + spi_pins: spi { spi { ralink,group = "spi"; -- cgit v1.2.3