Linux-libre 5.3.12-gnu
[librecmc/linux-libre.git] / arch / arm / boot / dts / at91-cosino.dtsi
1 // SPDX-License-Identifier: GPL-2.0-or-later
2 /*
3  * at91-cosino.dtsi - Device Tree file for Cosino core module
4  *
5  * Copyright (C) 2013 - Rodolfo Giometti <giometti@linux.it>
6  *                      HCE Engineering
7  *
8  * Derived from at91sam9x5ek.dtsi by:
9  *      Copyright (C) 2012 Atmel,
10  *      2012 Nicolas Ferre <nicolas.ferre@atmel.com>
11  */
12
13 #include "at91sam9g35.dtsi"
14
15 / {
16         model = "HCE Cosino core module";
17         compatible = "hce,cosino", "atmel,at91sam9x5", "atmel,at91sam9";
18
19         chosen {
20                 bootargs = "console=ttyS0,115200 root=/dev/mmcblk0p2 rw rootfstype=ext3 rootwait";
21         };
22
23         memory {
24                 reg = <0x20000000 0x8000000>;
25         };
26
27         clocks {
28                 slow_xtal {
29                         clock-frequency = <32768>;
30                 };
31
32                 main_xtal {
33                         clock-frequency = <12000000>;
34                 };
35         };
36
37         ahb {
38                 apb {
39                         tcb0: timer@f8008000 {
40                                 timer@0 {
41                                         compatible = "atmel,tcb-timer";
42                                         reg = <0>;
43                                 };
44
45                                 timer@1 {
46                                         compatible = "atmel,tcb-timer";
47                                         reg = <1>;
48                                 };
49                         };
50
51                         mmc0: mmc@f0008000 {
52                                 pinctrl-0 = <
53                                         &pinctrl_board_mmc0
54                                         &pinctrl_mmc0_slot0_clk_cmd_dat0
55                                         &pinctrl_mmc0_slot0_dat1_3>;
56                                 status = "okay";
57                                 slot@0 {
58                                         reg = <0>;
59                                         bus-width = <4>;
60                                         cd-gpios = <&pioD 15 GPIO_ACTIVE_HIGH>;
61                                 };
62                         };
63
64                         dbgu: serial@fffff200 {
65                                 status = "okay";
66                         };
67
68                         usart0: serial@f801c000 {
69                                 status = "okay";
70                         };
71
72                         i2c0: i2c@f8010000 {
73                                 status = "okay";
74                         };
75
76                         adc0: adc@f804c000 {
77                                 atmel,adc-ts-wires = <4>;
78                                 atmel,adc-ts-pressure-threshold = <10000>;
79                                 status = "okay";
80                         };
81
82                         pinctrl@fffff400 {
83                                 mmc0 {
84                                         pinctrl_board_mmc0: mmc0-board {
85                                                 atmel,pins =
86                                                         <AT91_PIOD 15 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>;  /* PD15 gpio CD pin pull up and deglitch */
87                                         };
88                                 };
89                         };
90
91                         watchdog@fffffe40 {
92                                 status = "okay";
93                         };
94                 };
95
96                 ebi: ebi@10000000 {
97                         pinctrl-0 = <&pinctrl_ebi_addr_nand
98                                      &pinctrl_ebi_data_0_7>;
99                         pinctrl-names = "default";
100                         status = "okay";
101
102                         nand_controller: nand-controller {
103                                 status = "okay";
104                                 pinctrl-0 = <&pinctrl_nand_oe_we
105                                              &pinctrl_nand_cs
106                                              &pinctrl_nand_rb>;
107                                 pinctrl-names = "default";
108
109                                 nand@3 {
110                                         reg = <0x3 0x0 0x800000>;
111                                         rb-gpios = <&pioD 5 GPIO_ACTIVE_HIGH>;
112                                         cs-gpios = <&pioD 4 GPIO_ACTIVE_HIGH>;
113                                         nand-bus-width = <8>;
114                                         nand-ecc-mode = "hw";
115                                         nand-ecc-strength = <4>;
116                                         nand-ecc-step-size = <512>;
117                                         nand-on-flash-bbt;
118                                         label = "atmel_nand";
119
120                                         partitions {
121                                                 compatible = "fixed-partitions";
122                                                 #address-cells = <1>;
123                                                 #size-cells = <1>;
124
125                                                 at91bootstrap@0 {
126                                                         label = "at91bootstrap";
127                                                         reg = <0x0 0x40000>;
128                                                 };
129
130                                                 uboot@40000 {
131                                                         label = "u-boot";
132                                                         reg = <0x40000 0x80000>;
133                                                 };
134
135                                                 ubootenv@c0000 {
136                                                         label = "U-Boot Env";
137                                                         reg = <0xc0000 0x140000>;
138                                                 };
139
140                                                 kernel@200000 {
141                                                         label = "kernel";
142                                                         reg = <0x200000 0x600000>;
143                                                 };
144
145                                                 rootfs@800000 {
146                                                         label = "rootfs";
147                                                         reg = <0x800000 0x0f800000>;
148                                                 };
149                                         };
150                                 };
151                         };
152                 };
153         };
154 };