Linux Audio

Check our new training course

Loading...
Note: File does not exist in v6.8.
  1/*
  2 * Device Tree for the ST-Ericsson Nomadik S8815 board
  3 * Produced by Calao Systems
  4 */
  5
  6/dts-v1/;
  7#include <dt-bindings/interrupt-controller/irq.h>
  8#include <dt-bindings/gpio/gpio.h>
  9#include "ste-nomadik-stn8815.dtsi"
 10
 11/ {
 12	model = "Nomadik STN8815NHK";
 13	compatible = "st,nomadik-nhk-15";
 14
 15	chosen {
 16		bootargs = "root=/dev/ram0 console=ttyAMA1,115200n8 earlyprintk";
 17	};
 18
 19	aliases {
 20		serial0 = &uart0;
 21		serial1 = &uart1;
 22		stmpe-i2c0 = &stmpe0;
 23		stmpe-i2c1 = &stmpe1;
 24	};
 25
 26	pinctrl {
 27		uart0 {
 28			uart0_nhk_mode: uart0_mux {
 29				u0_default_mux {
 30					function = "u0";
 31					groups = "u0txrx_a_1", "u0ctsrts_a_1";
 32				};
 33			};
 34		};
 35
 36		stmpe2401_1 {
 37			stmpe2401_1_nhk_mode: stmpe2401_1_nhk {
 38				nhk_cfg1 {
 39					pins = "GPIO76_B20"; // IRQ line
 40					ste,input = <0>;
 41				};
 42				nhk_cfg2 {
 43					pins = "GPIO77_B8"; // reset line
 44					ste,output = <1>;
 45				};
 46			};
 47		};
 48		stmpe2401_2 {
 49			stmpe2401_2_nhk_mode: stmpe2401_2_nhk {
 50				nhk_cfg1 {
 51					pins = "GPIO78_A8"; // IRQ line
 52					ste,input = <0>;
 53				};
 54				nhk_cfg2 {
 55					pins = "GPIO79_C9"; // reset line
 56					ste,output = <1>;
 57				};
 58			};
 59		};
 60	};
 61
 62	src@101e0000 {
 63		/* These chrystal outputs are not used on this board */
 64		disable-sxtalo;
 65		disable-mxtalo;
 66	};
 67
 68	/* This is where the interrupt is routed on the NHK-15 debug board */
 69	external-bus@34000000 {
 70		compatible = "simple-bus";
 71		reg = <0x34000000 0x1000000>;
 72		#address-cells = <1>;
 73		#size-cells = <1>;
 74		ranges = <0 0x34000000 0x1000000>;
 75		ethernet@300 {
 76			compatible = "smsc,lan91c111";
 77			reg = <0x300 0x0fd00>;
 78			reg-io-width = <2>;
 79			reset-gpios = <&stmpe_gpio44 10 GPIO_ACTIVE_HIGH>;
 80			interrupt-parent = <&stmpe_gpio44>;
 81			interrupts = <11 IRQ_TYPE_EDGE_RISING>;
 82		};
 83	};
 84
 85	i2c0 {
 86		lis3lv02dl@1d {
 87			/* Accelerometer */
 88			compatible = "st,lis3lv02dl-accel";
 89			reg = <0x1d>;
 90		};
 91		stmpe0: stmpe2401@43 {
 92			compatible = "st,stmpe2401";
 93			reg = <0x43>;
 94			reset-gpios = <&gpio2 13 GPIO_ACTIVE_LOW>; // GPIO77
 95			interrupts = <12 IRQ_TYPE_EDGE_FALLING>; // GPIO76
 96			interrupt-parent = <&gpio2>;
 97			interrupt-controller;
 98			wakeup-source;
 99			pinctrl-names = "default";
100			pinctrl-0 = <&stmpe2401_1_nhk_mode>;
101			stmpe_gpio43: stmpe_gpio {
102				compatible = "st,stmpe-gpio";
103				gpio-controller;
104				#gpio-cells = <2>;
105				interrupt-controller;
106				#interrupt-cells = <2>;
107				/* Some pins in alternate functions */
108				st,norequest-mask = <0xf0f002>;
109			};
110			stmpe_keypad {
111				compatible = "st,stmpe-keypad";
112				debounce-interval = <64>;
113				st,scan-count = <8>;
114				st,no-autorepeat;
115				keypad,num-rows = <8>;
116				keypad,num-columns = <8>;
117				linux,keymap = <0x00020072 // Vol down
118						0x00030073 // Vol up
119						0x0100009e // Back
120						0x010100e3 // TV out
121						0x01020098 // Lock
122						0x0103013b // Start
123						0x020000a3 // Next
124						0x020100a4 // Play
125						0x020200a5 // Prev
126						0x02030160 // OK
127						0x03000069 // Left
128						0x0301006a // Right
129						0x03020067 // Up
130						0x0303006c>; // Down
131			};
132		};
133		stmpe1: stmpe2401@44 {
134			compatible = "st,stmpe2401";
135			reg = <0x44>;
136			reset-gpios = <&gpio2 15 GPIO_ACTIVE_LOW>; // GPIO79
137			interrupts = <14 IRQ_TYPE_EDGE_FALLING>; // GPIO78
138			interrupt-parent = <&gpio2>;
139			interrupt-controller;
140			wakeup-source;
141			pinctrl-names = "default";
142			pinctrl-0 = <&stmpe2401_2_nhk_mode>;
143			stmpe_gpio44: stmpe_gpio {
144				compatible = "st,stmpe-gpio";
145				gpio-controller;
146				#gpio-cells = <2>;
147				interrupt-controller;
148				#interrupt-cells = <2>;
149				/*
150				 * This will turn off SATA so that MMC/SD
151				 * can thrive
152				 */
153				mmcsd-gpio {
154					gpio-hog;
155					gpios = <2 0x0>;
156					output-low;
157					line-name = "SATA EN";
158				};
159			};
160		};
161	};
162
163	amba {
164		/* Activate RX/TX and CTS/RTS on UART 0 */
165		uart0: uart@101fd000 {
166			pinctrl-names = "default";
167			pinctrl-0 = <&uart0_nhk_mode>;
168			status = "okay";
169		};
170		mmcsd: sdi@101f6000 {
171			cd-gpios = <&stmpe_gpio44 7 GPIO_ACTIVE_LOW>;
172			wp-gpios = <&stmpe_gpio44 18 GPIO_ACTIVE_HIGH>;
173		};
174	};
175};