]> CyberLeo.Net >> Repos - FreeBSD/releng/10.2.git/blob - sys/boot/fdt/dts/arm/beaglebone-black.dts
- Copy stable/10@285827 to releng/10.2 in preparation for 10.2-RC1
[FreeBSD/releng/10.2.git] / sys / boot / fdt / dts / arm / beaglebone-black.dts
1 /*-
2  * Copyright (c) 2012 Damjan Marion <dmarion@Freebsd.org>
3  * All rights reserved.
4  *
5  * Redistribution and use in source and binary forms, with or without
6  * modification, are permitted provided that the following conditions
7  * are met:
8  * 1. Redistributions of source code must retain the above copyright
9  *    notice, this list of conditions and the following disclaimer.
10  * 2. Redistributions in binary form must reproduce the above copyright
11  *    notice, this list of conditions and the following disclaimer in the
12  *    documentation and/or other materials provided with the distribution.
13  *
14  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
15  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
16  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
17  * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
18  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
19  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
20  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
21  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
22  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
23  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
24  * SUCH DAMAGE.
25  * 
26  * $FreeBSD$
27  */
28
29 /dts-v1/;
30
31 /include/ "am335x.dtsi"
32
33 / {
34         model = "beaglebone-black";
35         compatible = "beaglebone-black", "beaglebone", "ti,am335x";
36
37
38         aliases {
39                 soc = &SOC;
40                 uart0 = &uart0;
41         };
42
43         memory {
44                 device_type = "memory";
45                 reg = < 0x80000000 0x20000000 >;        /* 512MB RAM */
46         };
47
48         am335x {
49                 scm@44e10000 {
50                         /* Set of triplets < padname, muxname, padstate> */
51                         scm-pad-config =
52                                 /* I2C0 */
53                                 "I2C0_SDA", "I2C0_SDA","i2c",
54                                 "I2C0_SCL", "I2C0_SCL","i2c",
55                                 /* I2C1 */
56                                 "SPI0_D1", "I2C1_SDA", "i2c",
57                                 "SPI0_CS0", "I2C1_SCL", "i2c",
58                                 /* I2C2 */
59                                 "UART1_CTSn", "I2C2_SDA", "i2c",
60                                 "UART1_RTSn", "I2C2_SCL", "i2c",
61                                 /* Ethernet */
62                                 "MII1_RX_ER", "gmii1_rxerr", "input_pulldown",
63                                 "MII1_TX_EN", "gmii1_txen", "output",
64                                 "MII1_RX_DV", "gmii1_rxdv", "input_pulldown",
65                                 "MII1_TXD3", "gmii1_txd3", "output",
66                                 "MII1_TXD2", "gmii1_txd2", "output",
67                                 "MII1_TXD1", "gmii1_txd1", "output",
68                                 "MII1_TXD0", "gmii1_txd0", "output",
69                                 "MII1_TX_CLK", "gmii1_txclk", "input_pulldown",
70                                 "MII1_RX_CLK", "gmii1_rxclk", "input_pulldown",
71                                 "MII1_RXD3", "gmii1_rxd3", "input_pulldown",
72                                 "MII1_RXD2", "gmii1_rxd2", "input_pulldown",
73                                 "MII1_RXD1", "gmii1_rxd1",  "input_pulldown",
74                                 "MII1_RXD0", "gmii1_rxd0",  "input_pulldown",
75                                 "MDIO", "mdio_data", "input_pullup",
76                                 "MDC", "mdio_clk", "output_pullup",
77                                 /* MMCSD0 */
78                                 "MMC0_CMD", "mmc0_cmd", "input_pullup",
79                                 "MMC0_CLK", "mmc0_clk", "input_pullup",
80                                 "MMC0_DAT0", "mmc0_dat0", "input_pullup",
81                                 "MMC0_DAT1", "mmc0_dat1", "input_pullup",
82                                 "MMC0_DAT2", "mmc0_dat2", "input_pullup",
83                                 "MMC0_DAT3", "mmc0_dat3", "input_pullup",
84                                 /* MMC1 */
85                                 "GPMC_CSn1", "mmc1_clk", "input_pullup",
86                                 "GPMC_CSn2", "mmc1_cmd", "input_pullup",
87                                 "GPMC_CSn3", "gpio2_0", "output_pullup", /* Reset */
88                                 "GPMC_AD0", "mmc1_dat0", "input_pullup",
89                                 "GPMC_AD1", "mmc1_dat1", "input_pullup",
90                                 "GPMC_AD2", "mmc1_dat2", "input_pullup",
91                                 "GPMC_AD3", "mmc1_dat3", "input_pullup",
92                                 "GPMC_AD4", "mmc1_dat4", "input_pullup",
93                                 "GPMC_AD5", "mmc1_dat5", "input_pullup",
94                                 "GPMC_AD6", "mmc1_dat6", "input_pullup",
95                                 "GPMC_AD7", "mmc1_dat7", "input_pullup",
96                                 /* GPIO */
97                                 "ECAP0_IN_PWM0_OUT", "gpio0_7", "input_pulldown",
98                                 "GPMC_AD10", "gpio0_26", "input_pulldown",
99                                 "GPMC_AD11", "gpio0_27", "input_pulldown",
100                                 "GPMC_AD12", "gpio1_12", "input_pulldown",
101                                 "GPMC_AD13", "gpio1_13", "input_pulldown",
102                                 "GPMC_AD14", "gpio1_14", "input_pulldown",
103                                 "GPMC_AD15", "gpio1_15", "input_pulldown",
104                                 "GPMC_A0", "gpio1_16", "input_pulldown",
105                                 "GPMC_A1", "gpio1_17", "input_pulldown",
106                                 "GPMC_A5", "gpio1_21", "output", /* User LED 1 */
107                                 "GPMC_A6", "gpio1_22", "output", /* User LED 2 */
108                                 "GPMC_A7", "gpio1_23", "output", /* User LED 3 */
109                                 "GPMC_A8", "gpio1_24", "output", /* User LED 4 */
110                                 "GPMC_BEn1", "gpio1_28", "input_pulldown",
111                                 "GPMC_CSn0", "gpio1_29", "input_pulldown",
112                                 "GPMC_CLK", "gpio2_1", "input_pulldown",
113                                 "LCD_DATA0", "gpio2_6", "input_pulldown", 
114                                 "LCD_DATA1", "gpio2_7", "input_pulldown", 
115                                 "LCD_DATA2", "gpio2_8", "input_pulldown", 
116                                 "LCD_DATA3", "gpio2_9", "input_pulldown", 
117                                 "LCD_DATA4", "gpio2_10", "input_pulldown", 
118                                 "LCD_DATA5", "gpio2_11", "input_pulldown", 
119                                 "LCD_DATA6", "gpio2_12", "input_pulldown", 
120                                 "LCD_DATA7", "gpio2_13", "input_pulldown", 
121                                 "LCD_VSYNC", "gpio2_22", "input_pulldown",
122                                 "LCD_HSYNC", "gpio2_23", "input_pulldown",
123                                 "LCD_PCLK", "gpio2_24", "input_pulldown",
124                                 "LCD_AC_BIAS_EN", "gpio2_25", "input_pulldown",
125                                 "MCASP0_FSR", "gpio3_19", "input_pulldown",
126                                 "MCASP0_AHCLKX", "gpio3_21", "input_pulldown",
127                                 /* TIMERs */
128                                 "GPMC_ADVn_ALE", "timer4", "output",
129                                 "GPMC_BEn0_CLE", "timer5", "output",
130                                 "GPMC_WEn", "timer6", "output",
131                                 "GPMC_OEn_REn", "timer7", "output",
132                                 /* USB0 and USB1 */
133                                 "USB0_DRVVBUS", "USB0_DRVVBUS", "output",
134                                 "USB1_DRVVBUS", "USB1_DRVVBUS", "output",
135                                 /* PWM */
136                                 "GPMC_A2", "ehrpwm1A", "output",
137                                 "GPMC_A3", "ehrpwm1B", "output",
138                                 "GPMC_AD8", "ehrpwm2A", "output",
139                                 "GPMC_AD9", "ehrpwm2B", "output";
140                 };
141
142                 mmchs1@481D8000 {
143                         bus-width = <8>;
144                         status = "okay";
145                         non-removable;
146                 };
147  
148                 i2c@44e0b000 {
149                         pmic@48 {
150                                 compatible = "ti,am335x-pmic";
151                                 reg = <0x48>;
152                         };
153                 };
154         };
155
156         leds {
157                 compatible = "gpio-leds";
158
159                 led1 {
160                         gpios = <&GPIO 53 2 0>;
161                         name = "led1";
162                 };
163
164                 led2 {
165                         gpios = <&GPIO 54 2 0>;
166                         name = "led2";
167                 };
168
169                 led3 {
170                         gpios = <&GPIO 55 2 0>;
171                         name = "led3";
172                 };
173
174                 led4 {
175                         gpios = <&GPIO 56 2 0>;
176                         name = "led4";
177                 };
178         };
179
180         chosen {
181                 stdin = "uart0";
182                 stdout = "uart0";
183         };
184 };