| /* |
| * Copyright (C) 2015 Imagination Technologies Ltd. |
| * |
| * This program is free software; you can redistribute it and/or modify |
| * it under the terms of the GNU General Public License version 2 as |
| * published by the Free Software Foundation. |
| */ |
| |
| /dts-v1/; |
| |
| #include "pistachio.dtsi" |
| #include <dt-bindings/sound/pistachio-audio.h> |
| #include "pistachio_board_uboot.dtsi" |
| |
| / { |
| model = "IMG Marduk"; |
| compatible = "img,pistachio-marduk", "img,pistachio"; |
| |
| aliases { |
| serial0 = &uart0; |
| serial1 = &uart1; |
| ethernet0 = &enet; |
| }; |
| |
| chosen { |
| bootargs = "console=ttyS1,115200n8 earlycon=uart8250,mmio32,0x18101500,115200 root=/dev/sda1 rootwait ro"; |
| }; |
| |
| memory { |
| device_type = "memory"; |
| reg = <0x00000000 0x08000000>; |
| }; |
| |
| reg_1v8: fixed-regulator { |
| compatible = "regulator-fixed"; |
| regulator-name = "aux_adc_vref"; |
| regulator-min-microvolt = <1800000>; |
| regulator-max-microvolt = <1800000>; |
| regulator-boot-on; |
| }; |
| |
| pistachio_audio_card { |
| compatible = "img,pistachio-audio"; |
| |
| clocks = <&clk_core CLK_AUDIO_PLL>, |
| <&clk_core CLK_I2S>, |
| <&clk_core CLK_AUDIO>; |
| clock-names = "audio_pll", "i2s_mclk", "dac_clk"; |
| |
| img,cr-periph = <&cr_periph>; |
| img,event-timer = <&event_timer>; |
| |
| pinctrl-names = "default"; |
| pinctrl-0 = <&dac_clk_pin>, <&i2s_mclk_pin>; |
| |
| spdif-out { |
| cpu-dai = <&spdif_out>; |
| }; |
| |
| spdif-in { |
| cpu-dai = <&spdif_in>; |
| }; |
| |
| parallel-out { |
| cpu-dai = <¶llel_out>; |
| sound-dai = <&internal_dac>; |
| }; |
| |
| i2s-out { |
| cpu-dai = <&i2s_out>; |
| format = "i2s"; |
| }; |
| |
| i2s-in { |
| cpu-dai = <&i2s_in>; |
| format = "i2s"; |
| |
| ak5720vt { |
| mclk = <PISTACHIO_MCLK_I2S>; |
| mclk-fs = <256>; |
| mclk-min-freq = <8192000>; |
| mclk-max-freq = <24576000>; |
| }; |
| }; |
| }; |
| |
| gpio_keys { |
| compatible = "gpio-keys"; |
| switch@1 { |
| label = "SWITCH 1"; |
| linux,code = <0x101>; /* BTN_1 */ |
| gpios = <&gpio2 13 GPIO_ACTIVE_LOW>; |
| }; |
| switch@2 { |
| label = "SWITCH 2"; |
| linux,code = <0x102>; /* BTN_2 */ |
| gpios = <&gpio2 14 GPIO_ACTIVE_LOW>; |
| }; |
| }; |
| |
| gpio_leds { |
| compatible = "gpio-leds"; |
| user1 { |
| label = "marduk:red:user1"; |
| gpios = <&sc16is752 0 GPIO_ACTIVE_LOW>; |
| }; |
| user2 { |
| label = "marduk:red:user2"; |
| gpios = <&sc16is752 1 GPIO_ACTIVE_LOW>; |
| }; |
| user3 { |
| label = "marduk:red:user3"; |
| gpios = <&sc16is752 2 GPIO_ACTIVE_LOW>; |
| }; |
| user4 { |
| label = "marduk:red:user4"; |
| gpios = <&sc16is752 3 GPIO_ACTIVE_LOW>; |
| }; |
| user5 { |
| label = "marduk:red:user5"; |
| gpios = <&sc16is752 4 GPIO_ACTIVE_LOW>; |
| }; |
| user6 { |
| label = "marduk:red:user6"; |
| gpios = <&sc16is752 5 GPIO_ACTIVE_LOW>; |
| }; |
| user7 { |
| label = "marduk:red:user7"; |
| gpios = <&sc16is752 6 GPIO_ACTIVE_LOW>; |
| }; |
| heartbeat { |
| label = "marduk:red:heartbeat"; |
| gpios = <&gpio4 12 GPIO_ACTIVE_HIGH>; |
| linux,default-trigger = "heartbeat"; |
| }; |
| }; |
| }; |
| |
| &spim0_clk { |
| drive-strength = <2>; |
| }; |
| |
| &spfi0 { |
| status = "okay"; |
| pinctrl-0 = <&spim0_pins>; |
| pinctrl-names = "default"; |
| |
| cs-gpios = <&gpio1 14 GPIO_ACTIVE_HIGH>, <&gpio0 2 GPIO_ACTIVE_HIGH>, |
| <&gpio1 12 GPIO_ACTIVE_HIGH>, <&gpio1 13 GPIO_ACTIVE_HIGH>; |
| |
| cc2520: cc2520@0 { |
| compatible = "ti,cc2520"; |
| reg = <0>; |
| spi-max-frequency = <4000000>; |
| fifo-gpio = <&gpio3 4 GPIO_ACTIVE_HIGH>; |
| fifop-gpio = <&gpio3 5 GPIO_ACTIVE_HIGH>; |
| sfd-gpio = <&gpio4 15 GPIO_ACTIVE_HIGH>; |
| cca-gpio = <&gpio3 6 GPIO_ACTIVE_HIGH>; |
| vreg-gpio = <&gpio2 12 GPIO_ACTIVE_HIGH>; |
| reset-gpio = <&gpio0 12 GPIO_ACTIVE_HIGH>; |
| #clock-cells = <0>; |
| extclock-freq = <16000000>; |
| }; |
| |
| sc16is752: sc16is752@1 { |
| compatible = "nxp,sc16is752"; |
| reg = <1>; |
| clocks = <&cc2520 0>; |
| spi-max-frequency = <4000000>; |
| interrupt-parent = <&gpio0>; |
| interrupts = <11 IRQ_TYPE_EDGE_FALLING>; |
| gpio-controller; |
| #gpio-cells = <2>; |
| }; |
| |
| spidev@2 { |
| compatible = "img,click-interface"; |
| reg = <2>; |
| spi-max-frequency = <2000000>; |
| }; |
| |
| spidev@3 { |
| compatible = "img,click-interface"; |
| reg = <3>; |
| spi-max-frequency = <2000000>; |
| }; |
| }; |
| |
| &spfi1 { |
| status = "okay"; |
| |
| pinctrl-0 = <&spim1_pins>, <&spim1_quad_pins>; |
| pinctrl-names = "default"; |
| cs-gpios = <&gpio0 0 GPIO_ACTIVE_HIGH>, <&gpio0 1 GPIO_ACTIVE_HIGH>; |
| |
| flash@0 { |
| compatible = "jedec,spi-nor"; |
| reg = <0>; |
| spi-max-frequency = <50000000>; |
| linux,mtd-name = "spi-nor"; |
| }; |
| |
| flash@1 { |
| compatible = "gigadevice,gd5f"; |
| reg = <1>; |
| spi-max-frequency = <50000000>; |
| nand-on-flash-bbt; |
| spi-rx-bus-width = <2>; |
| #address-cells = <1>; |
| #size-cells = <1>; |
| linux,mtd-name = "spi-nand"; |
| }; |
| }; |
| |
| &uccphostport { |
| status = "okay"; |
| }; |
| |
| &uccpdummyhp { |
| status = "okay"; |
| }; |
| |
| &uart0 { |
| status = "okay"; |
| assigned-clock-rates = <114278400>, <1843200>; |
| }; |
| |
| &uart1 { |
| status = "okay"; |
| }; |
| |
| &usb { |
| status = "okay"; |
| }; |
| |
| &usb_phy { |
| pinctrl-names = "default"; |
| pinctrl-0 = <&usb_pwr_on_pins>; |
| enable-vbus-drive; |
| }; |
| |
| &enet { |
| status = "okay"; |
| |
| mac-address = [0123456789AB]; |
| }; |
| |
| &pin_enet_phy_clk { |
| drive-strength = <2>; |
| }; |
| |
| &sdhost { |
| status = "okay"; |
| bus-width = <4>; |
| disable-wp; |
| }; |
| |
| &ir { |
| status = "okay"; |
| }; |
| |
| &pwm { |
| status = "okay"; |
| |
| pinctrl-0 = <&pwmpdm0_pin>, <&pwmpdm1_pin>, <&pwmpdm2_pin>, |
| <&pwmpdm3_pin>; |
| pinctrl-names = "default"; |
| }; |
| |
| &adc { |
| status = "okay"; |
| vref-supply = <®_1v8>; |
| adc-reserved-channels = <0x10>; |
| }; |
| |
| &i2c2 { |
| status = "okay"; |
| clock-frequency = <400000>; |
| }; |
| |
| &i2c3 { |
| status = "okay"; |
| clock-frequency = <400000>; |
| }; |
| |
| &wifi { |
| status = "okay"; |
| mac-address0 = [0123456789AC]; |
| mac-address1 = [0123456789AD]; |
| rf-params = [1A1c1f24292e33383c4045484d5157595d6165686d712023263d3135393c41454a4d505356595c5f6164672023282c3135393d4145494d53565a5e626567696c1c20252b3134373c4144484d52555a5e62666a6f742023282c31363a3e4245494e51575b5f63666b71761c1f24292e33383c4045494d5155585b5e62666a6f1e22262d3135393d42464b4e52575a5c6064676b702023282c3135393d4145494d5356595b5e606366692023272a31363b3f44484c5054575a5e6165696d711f2225292f33383c4043474c5054595d6165696d730B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B]; |
| num_streams = [02]; |
| }; |
| |
| |
| &i2s_out { |
| status = "okay"; |
| pinctrl-names = "default"; |
| pinctrl-0 = <&i2s_out_pins>; |
| }; |
| |
| &i2s_in { |
| status = "okay"; |
| pinctrl-names = "default"; |
| pinctrl-0 = <&i2s_in_pins>; |
| }; |
| |
| &i2s_out_pins { |
| i2s-out { |
| pins = "mfio37", "mfio38", "mfio39", |
| "mfio40", "mfio41"; |
| function = "i2s_out"; |
| }; |
| }; |
| |
| &i2s_in_pins { |
| i2s-in { |
| pins = "mfio47", "mfio48", "mfio49", |
| "mfio50", "mfio51"; |
| function = "i2s_in"; |
| }; |
| }; |
| |
| &spdif_out { |
| status = "okay"; |
| }; |
| |
| &spdif_in { |
| status = "okay"; |
| }; |
| |
| ¶llel_out { |
| status = "okay"; |
| }; |