xref: /openbmc/linux/arch/arm/boot/dts/microchip/at91sam9x5ek.dtsi (revision 2612e3bbc0386368a850140a6c9b990cd496a5ec)
1*724ba675SRob Herring// SPDX-License-Identifier: GPL-2.0-or-later
2*724ba675SRob Herring/*
3*724ba675SRob Herring * at91sam9x5ek.dtsi - Device Tree file for AT91SAM9x5CM Base board
4*724ba675SRob Herring *
5*724ba675SRob Herring *  Copyright (C) 2012 Atmel,
6*724ba675SRob Herring *                2012 Nicolas Ferre <nicolas.ferre@atmel.com>
7*724ba675SRob Herring */
8*724ba675SRob Herring#include "at91sam9x5cm.dtsi"
9*724ba675SRob Herring
10*724ba675SRob Herring/ {
11*724ba675SRob Herring	model = "Atmel AT91SAM9X5-EK";
12*724ba675SRob Herring	compatible = "atmel,at91sam9x5ek", "atmel,at91sam9x5", "atmel,at91sam9";
13*724ba675SRob Herring
14*724ba675SRob Herring	chosen {
15*724ba675SRob Herring		bootargs = "root=/dev/mtdblock1 rw rootfstype=ubifs ubi.mtd=1 root=ubi0:rootfs";
16*724ba675SRob Herring		stdout-path = "serial0:115200n8";
17*724ba675SRob Herring	};
18*724ba675SRob Herring
19*724ba675SRob Herring	sound {
20*724ba675SRob Herring		compatible = "atmel,sam9x5-wm8731-audio";
21*724ba675SRob Herring
22*724ba675SRob Herring		atmel,model = "wm8731 @ AT91SAM9X5EK";
23*724ba675SRob Herring
24*724ba675SRob Herring		atmel,audio-routing =
25*724ba675SRob Herring			"Headphone Jack", "RHPOUT",
26*724ba675SRob Herring			"Headphone Jack", "LHPOUT",
27*724ba675SRob Herring			"LLINEIN", "Line In Jack",
28*724ba675SRob Herring			"RLINEIN", "Line In Jack";
29*724ba675SRob Herring
30*724ba675SRob Herring		atmel,ssc-controller = <&ssc0>;
31*724ba675SRob Herring		atmel,audio-codec = <&wm8731>;
32*724ba675SRob Herring	};
33*724ba675SRob Herring};
34*724ba675SRob Herring
35*724ba675SRob Herring&adc0 {
36*724ba675SRob Herring	atmel,adc-ts-wires = <4>;
37*724ba675SRob Herring	atmel,adc-ts-pressure-threshold = <10000>;
38*724ba675SRob Herring	status = "okay";
39*724ba675SRob Herring};
40*724ba675SRob Herring
41*724ba675SRob Herring&dbgu {
42*724ba675SRob Herring	status = "okay";
43*724ba675SRob Herring};
44*724ba675SRob Herring
45*724ba675SRob Herring&i2c0 {
46*724ba675SRob Herring	status = "okay";
47*724ba675SRob Herring
48*724ba675SRob Herring	wm8731: wm8731@1a {
49*724ba675SRob Herring		compatible = "wm8731";
50*724ba675SRob Herring		reg = <0x1a>;
51*724ba675SRob Herring	};
52*724ba675SRob Herring};
53*724ba675SRob Herring
54*724ba675SRob Herring&mmc0 {
55*724ba675SRob Herring	pinctrl-0 = <
56*724ba675SRob Herring		&pinctrl_board_mmc0
57*724ba675SRob Herring		&pinctrl_mmc0_slot0_clk_cmd_dat0
58*724ba675SRob Herring		&pinctrl_mmc0_slot0_dat1_3>;
59*724ba675SRob Herring	pinctrl-names = "default";
60*724ba675SRob Herring	status = "okay";
61*724ba675SRob Herring
62*724ba675SRob Herring	slot@0 {
63*724ba675SRob Herring		reg = <0>;
64*724ba675SRob Herring		bus-width = <4>;
65*724ba675SRob Herring		cd-gpios = <&pioD 15 GPIO_ACTIVE_HIGH>;
66*724ba675SRob Herring	};
67*724ba675SRob Herring};
68*724ba675SRob Herring
69*724ba675SRob Herring&mmc1 {
70*724ba675SRob Herring	pinctrl-0 = <
71*724ba675SRob Herring		&pinctrl_board_mmc1
72*724ba675SRob Herring		&pinctrl_mmc1_slot0_clk_cmd_dat0
73*724ba675SRob Herring		&pinctrl_mmc1_slot0_dat1_3>;
74*724ba675SRob Herring	pinctrl-names = "default";
75*724ba675SRob Herring	status = "okay";
76*724ba675SRob Herring
77*724ba675SRob Herring	slot@0 {
78*724ba675SRob Herring		reg = <0>;
79*724ba675SRob Herring		bus-width = <4>;
80*724ba675SRob Herring		cd-gpios = <&pioD 14 GPIO_ACTIVE_HIGH>;
81*724ba675SRob Herring	};
82*724ba675SRob Herring};
83*724ba675SRob Herring
84*724ba675SRob Herring&pinctrl {
85*724ba675SRob Herring	camera_sensor {
86*724ba675SRob Herring		pinctrl_pck0_as_isi_mck: pck0_as_isi_mck-0 {
87*724ba675SRob Herring			atmel,pins =
88*724ba675SRob Herring				<AT91_PIOC 15 AT91_PERIPH_C AT91_PINCTRL_NONE>;	/* ISI_MCK */
89*724ba675SRob Herring		};
90*724ba675SRob Herring
91*724ba675SRob Herring		pinctrl_sensor_power: sensor_power-0 {
92*724ba675SRob Herring			atmel,pins =
93*724ba675SRob Herring				<AT91_PIOA 13 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>;
94*724ba675SRob Herring		};
95*724ba675SRob Herring
96*724ba675SRob Herring		pinctrl_sensor_reset: sensor_reset-0 {
97*724ba675SRob Herring			atmel,pins =
98*724ba675SRob Herring				<AT91_PIOA 7 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>;
99*724ba675SRob Herring		};
100*724ba675SRob Herring	};
101*724ba675SRob Herring
102*724ba675SRob Herring	mmc0 {
103*724ba675SRob Herring		pinctrl_board_mmc0: mmc0-board {
104*724ba675SRob Herring			atmel,pins =
105*724ba675SRob Herring				<AT91_PIOD 15 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>;	/* PD15 gpio CD pin pull up and deglitch */
106*724ba675SRob Herring		};
107*724ba675SRob Herring	};
108*724ba675SRob Herring
109*724ba675SRob Herring	mmc1 {
110*724ba675SRob Herring		pinctrl_board_mmc1: mmc1-board {
111*724ba675SRob Herring			atmel,pins =
112*724ba675SRob Herring				<AT91_PIOD 14 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>;	/* PD14 gpio CD pin pull up and deglitch */
113*724ba675SRob Herring		};
114*724ba675SRob Herring	};
115*724ba675SRob Herring
116*724ba675SRob Herring	usb2 {
117*724ba675SRob Herring		pinctrl_board_usb2: usb2-board {
118*724ba675SRob Herring			atmel,pins =
119*724ba675SRob Herring				<AT91_PIOB 16 AT91_PERIPH_GPIO AT91_PINCTRL_DEGLITCH>;		/* PB16 gpio vbus sense, deglitch */
120*724ba675SRob Herring		};
121*724ba675SRob Herring	};
122*724ba675SRob Herring};
123*724ba675SRob Herring
124*724ba675SRob Herring&spi0 {
125*724ba675SRob Herring	cs-gpios = <&pioA 14 0>, <0>, <0>, <0>;
126*724ba675SRob Herring	status = "disabled"; /* conflicts with mmc1 */
127*724ba675SRob Herring
128*724ba675SRob Herring	flash@0 {
129*724ba675SRob Herring		compatible = "atmel,at25df321a";
130*724ba675SRob Herring		spi-max-frequency = <50000000>;
131*724ba675SRob Herring		reg = <0>;
132*724ba675SRob Herring	};
133*724ba675SRob Herring};
134*724ba675SRob Herring
135*724ba675SRob Herring&ssc0 {
136*724ba675SRob Herring	status = "okay";
137*724ba675SRob Herring};
138*724ba675SRob Herring
139*724ba675SRob Herring&usart0 {
140*724ba675SRob Herring	atmel,use-dma-rx;
141*724ba675SRob Herring	atmel,use-dma-tx;
142*724ba675SRob Herring	status = "okay";
143*724ba675SRob Herring};
144*724ba675SRob Herring
145*724ba675SRob Herring&usb0 {
146*724ba675SRob Herring	num-ports = <3>;
147*724ba675SRob Herring	atmel,vbus-gpio = <0 /* &pioD 18 GPIO_ACTIVE_LOW *//* Activate to have access to port A */
148*724ba675SRob Herring			   &pioD 19 GPIO_ACTIVE_LOW
149*724ba675SRob Herring			   &pioD 20 GPIO_ACTIVE_LOW
150*724ba675SRob Herring			  >;
151*724ba675SRob Herring	status = "okay";
152*724ba675SRob Herring};
153*724ba675SRob Herring
154*724ba675SRob Herring&usb1 {
155*724ba675SRob Herring	status = "okay";
156*724ba675SRob Herring};
157*724ba675SRob Herring
158*724ba675SRob Herring&usb2 {
159*724ba675SRob Herring	pinctrl-names = "default";
160*724ba675SRob Herring	pinctrl-0 = <&pinctrl_board_usb2>;
161*724ba675SRob Herring	atmel,vbus-gpio = <&pioB 16 GPIO_ACTIVE_HIGH>;
162*724ba675SRob Herring	status = "okay";
163*724ba675SRob Herring};
164*724ba675SRob Herring
165*724ba675SRob Herring&watchdog {
166*724ba675SRob Herring	status = "okay";
167*724ba675SRob Herring};
168