mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-12-12 13:34:10 +08:00
DT for 4.16
- New boards: - Axentia Nattis with Natte power - sama5d2 PTC ek - Document and use extended TCB bindings -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEXx9Viay1+e7J/aM4AyWl4gNJNJIFAlpI+YcACgkQAyWl4gNJ NJK2pQ//eU4LdURm9h8u7UVubWKy6Ctv3URM+EmKlPOuxThKd9KjLk9oI4snoXcf kfpq8U0dASEMeURf5iqyfYWD+yj17aKUCiSNNn7fTqAItn+DHmz0CM4al1c1coB/ Kkr8Ux9zTM0/HjV74EQnsjwuzdUtJ7VXT7PnjGQHrxlImGxOIF/dZRplgm+4p6FK JL5zvbW6riBT++zoVwCGyVgjM8OjguZ6ZnCaiNExFVp9VXaPRqR09sjMed/qJurz KCp7w8sopJJBPfsL1Gf0PsWW31Jsj8rD1lYqQex2hmjeP11VPAXgQquCGWkgeZxA 3kONaXo5FnoDhIc7AQfZ3syaz9+vGOaLF3of4UEMO4/VwQe4phd2Yh3Hrw2cg3xd GP0RulpVOTIhVASJoSQyphAeQZvpch8M+AvJjBQWS7+mPA/iGXzoXc1fM9eKezfb jvh+3+l25KbkYZ/QkbMd+Nm7fSvUPSHbYQrkMe0O+mzSy1JN/uwq3Hg97e5O2STp 5US1jWWF1PfKrvbRNvkA67fVLWkKssAMXF8aLf1538dq74Jpe5lXfE2EuXarOR2b 9WGrWDZ9tkpbcFplXxFnxt8pgbQ9A7p9SCWQY1Z9qgRP6EhD5457/CvElqHcAem+ tbe4ayugVOHb5KigPti7XGZOcHR9o+DO/qFdaPE8jRKV/3yndS4= =BW4/ -----END PGP SIGNATURE----- Merge tag 'at91-ab-4.16-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux into next/dt DT for 4.16 - New boards: - Axentia Nattis with Natte power - sama5d2 PTC ek - Document and use extended TCB bindings * tag 'at91-ab-4.16-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux: (50 commits) ARM: dts: at91: sama5d2_ptc_ek: use TCB0 as timers ARM: dts: at91: sama5d27_som1_ek: use TCB0 as timers ARM: dts: at91: sama5d2 Xplained: use TCB0 as timers ARM: dts: at91: sama5d2: TC blocks are also simple-mfd and syscon devices ARM: dts: at91: vinco: use TCB2 as timers ARM: dts: at91: ma5d4: use TCB2 as timers ARM: dts: at91: sama5d4 Xplained: use TCB2 as timers ARM: dts: at91: sama5d4ek: use TCB2 as timers ARM: dts: at91: sama5d4: Add TCB2 ARM: dts: at91: sama5d4: TC blocks are also simple-mfd and syscon devices ARM: dts: at91: linea/tse850-3: use TCB0 as timers ARM: dts: at91: sama5d3xek_cmp: use TCB0 as timers ARM: dts: at91: kizbox2: use TCB0 as timers ARM: dts: at91: sama5d3 Xplained: use TCB0 as timers ARM: dts: at91: sama5d3xek: use TCB0 as timers ARM: dts: at91: sama5d3: TC blocks are also simple-mfd and syscon devices ARM: dts: at91: kizboxmini: use TCB0 as timers ARM: dts: at91: cosino: use TCB0 as timers ARM: dts: at91: acme/g25: use TCB0 as timers ARM: dts: at91: at91sam9x5cm: use TCB0 as timers ... Signed-off-by: Olof Johansson <olof@lixom.net>
This commit is contained in:
commit
8ef9aea80d
@ -90,38 +90,6 @@ System Timer (ST) required properties:
|
||||
Its subnodes can be:
|
||||
- watchdog: compatible should be "atmel,at91rm9200-wdt"
|
||||
|
||||
TC/TCLIB Timer required properties:
|
||||
- compatible: Should be "atmel,<chip>-tcb".
|
||||
<chip> can be "at91rm9200" or "at91sam9x5"
|
||||
- reg: Should contain registers location and length
|
||||
- interrupts: Should contain all interrupts for the TC block
|
||||
Note that you can specify several interrupt cells if the TC
|
||||
block has one interrupt per channel.
|
||||
- clock-names: tuple listing input clock names.
|
||||
Required elements: "t0_clk", "slow_clk"
|
||||
Optional elements: "t1_clk", "t2_clk"
|
||||
- clocks: phandles to input clocks.
|
||||
|
||||
Examples:
|
||||
|
||||
One interrupt per TC block:
|
||||
tcb0: timer@fff7c000 {
|
||||
compatible = "atmel,at91rm9200-tcb";
|
||||
reg = <0xfff7c000 0x100>;
|
||||
interrupts = <18 4>;
|
||||
clocks = <&tcb0_clk>;
|
||||
clock-names = "t0_clk";
|
||||
};
|
||||
|
||||
One interrupt per TC channel in a TC block:
|
||||
tcb1: timer@fffdc000 {
|
||||
compatible = "atmel,at91rm9200-tcb";
|
||||
reg = <0xfffdc000 0x100>;
|
||||
interrupts = <26 4 27 4 28 4>;
|
||||
clocks = <&tcb1_clk>;
|
||||
clock-names = "t0_clk";
|
||||
};
|
||||
|
||||
RSTC Reset Controller required properties:
|
||||
- compatible: Should be "atmel,<chip>-rstc".
|
||||
<chip> can be "at91sam9260" or "at91sam9g45" or "sama5d3"
|
||||
|
@ -10,6 +10,15 @@ compatible = "axentia,linea",
|
||||
and following the rules from atmel-at91.txt for a sama5d31 SoC.
|
||||
|
||||
|
||||
Nattis v2 board with Natte v2 power board
|
||||
-----------------------------------------
|
||||
|
||||
Required root node properties:
|
||||
compatible = "axentia,nattis-2", "axentia,natte-2", "axentia,linea",
|
||||
"atmel,sama5d31", "atmel,sama5d3", "atmel,sama5";
|
||||
and following the rules from above for the axentia,linea CPU module.
|
||||
|
||||
|
||||
TSE-850 v3 board
|
||||
----------------
|
||||
|
||||
|
56
Documentation/devicetree/bindings/mfd/atmel-tcb.txt
Normal file
56
Documentation/devicetree/bindings/mfd/atmel-tcb.txt
Normal file
@ -0,0 +1,56 @@
|
||||
* Device tree bindings for Atmel Timer Counter Blocks
|
||||
- compatible: Should be "atmel,<chip>-tcb", "simple-mfd", "syscon".
|
||||
<chip> can be "at91rm9200" or "at91sam9x5"
|
||||
- reg: Should contain registers location and length
|
||||
- #address-cells: has to be 1
|
||||
- #size-cells: has to be 0
|
||||
- interrupts: Should contain all interrupts for the TC block
|
||||
Note that you can specify several interrupt cells if the TC
|
||||
block has one interrupt per channel.
|
||||
- clock-names: tuple listing input clock names.
|
||||
Required elements: "t0_clk", "slow_clk"
|
||||
Optional elements: "t1_clk", "t2_clk"
|
||||
- clocks: phandles to input clocks.
|
||||
|
||||
The TCB can expose multiple subdevices:
|
||||
* a timer
|
||||
- compatible: Should be "atmel,tcb-timer"
|
||||
- reg: Should contain the TCB channels to be used. If the
|
||||
counter width is 16 bits (at91rm9200-tcb), two consecutive
|
||||
channels are needed. Else, only one channel will be used.
|
||||
|
||||
Examples:
|
||||
|
||||
One interrupt per TC block:
|
||||
tcb0: timer@fff7c000 {
|
||||
compatible = "atmel,at91rm9200-tcb", "simple-mfd", "syscon";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
reg = <0xfff7c000 0x100>;
|
||||
interrupts = <18 4>;
|
||||
clocks = <&tcb0_clk>, <&clk32k>;
|
||||
clock-names = "t0_clk", "slow_clk";
|
||||
|
||||
timer@0 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <0>, <1>;
|
||||
};
|
||||
|
||||
timer@2 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <2>;
|
||||
};
|
||||
};
|
||||
|
||||
One interrupt per TC channel in a TC block:
|
||||
tcb1: timer@fffdc000 {
|
||||
compatible = "atmel,at91rm9200-tcb", "simple-mfd", "syscon";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
reg = <0xfffdc000 0x100>;
|
||||
interrupts = <26 4>, <27 4>, <28 4>;
|
||||
clocks = <&tcb1_clk>, <&clk32k>;
|
||||
clock-names = "t0_clk", "slow_clk";
|
||||
};
|
||||
|
||||
|
@ -2501,6 +2501,8 @@ L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
|
||||
S: Maintained
|
||||
F: Documentation/devicetree/bindings/arm/axentia.txt
|
||||
F: arch/arm/boot/dts/at91-linea.dtsi
|
||||
F: arch/arm/boot/dts/at91-natte.dtsi
|
||||
F: arch/arm/boot/dts/at91-nattis-2-natte-2.dts
|
||||
F: arch/arm/boot/dts/at91-tse850-3.dts
|
||||
|
||||
AXENTIA ASOC DRIVERS
|
||||
|
@ -45,7 +45,9 @@ dtb-$(CONFIG_SOC_AT91SAM9) += \
|
||||
at91sam9x35ek.dtb
|
||||
dtb-$(CONFIG_SOC_SAM_V7) += \
|
||||
at91-kizbox2.dtb \
|
||||
at91-nattis-2-natte-2.dtb \
|
||||
at91-sama5d27_som1_ek.dtb \
|
||||
at91-sama5d2_ptc_ek.dtb \
|
||||
at91-sama5d2_xplained.dtb \
|
||||
at91-sama5d3_xplained.dtb \
|
||||
at91-tse850-3.dtb \
|
||||
|
@ -43,6 +43,18 @@
|
||||
|
||||
ahb {
|
||||
apb {
|
||||
tcb0: timer@fffa0000 {
|
||||
timer@0 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <0>, <1>;
|
||||
};
|
||||
|
||||
timer@2 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <2>;
|
||||
};
|
||||
};
|
||||
|
||||
usart0: serial@fffb0000 {
|
||||
pinctrl-0 = <&pinctrl_usart0 &pinctrl_usart0_rts>;
|
||||
linux,rs485-enabled-at-boot-time;
|
||||
|
@ -58,6 +58,18 @@
|
||||
};
|
||||
};
|
||||
|
||||
tcb0: timer@f8008000 {
|
||||
timer@0 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <0>;
|
||||
};
|
||||
|
||||
timer@1 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <1>;
|
||||
};
|
||||
};
|
||||
|
||||
i2c0: i2c@f8010000 {
|
||||
status = "okay";
|
||||
};
|
||||
|
@ -46,6 +46,18 @@
|
||||
};
|
||||
};
|
||||
|
||||
tcb0: timer@f8008000 {
|
||||
timer@0 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <0>;
|
||||
};
|
||||
|
||||
timer@1 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <1>;
|
||||
};
|
||||
};
|
||||
|
||||
usb2: gadget@f803c000 {
|
||||
status = "okay";
|
||||
};
|
||||
|
@ -37,6 +37,18 @@
|
||||
|
||||
ahb {
|
||||
apb {
|
||||
tcb0: timer@f8008000 {
|
||||
timer@0 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <0>;
|
||||
};
|
||||
|
||||
timer@1 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <1>;
|
||||
};
|
||||
};
|
||||
|
||||
mmc0: mmc@f0008000 {
|
||||
pinctrl-0 = <
|
||||
&pinctrl_board_mmc0
|
||||
|
@ -34,6 +34,18 @@
|
||||
|
||||
ahb {
|
||||
apb {
|
||||
tcb0: timer@fffa0000 {
|
||||
timer@0 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <0>, <1>;
|
||||
};
|
||||
|
||||
timer@2 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <2>;
|
||||
};
|
||||
};
|
||||
|
||||
usb1: gadget@fffa4000 {
|
||||
atmel,vbus-gpio = <&pioC 6 GPIO_ACTIVE_HIGH>;
|
||||
status = "okay";
|
||||
|
@ -31,6 +31,18 @@
|
||||
|
||||
ahb {
|
||||
apb {
|
||||
tcb0: timer@fffa0000 {
|
||||
timer@0 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <0>, <1>;
|
||||
};
|
||||
|
||||
timer@2 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <2>;
|
||||
};
|
||||
};
|
||||
|
||||
macb0: ethernet@fffc4000 {
|
||||
phy-mode = "mii";
|
||||
pinctrl-0 = <&pinctrl_macb_rmii
|
||||
|
@ -94,6 +94,18 @@
|
||||
};
|
||||
};
|
||||
|
||||
tcb0: timer@f0010000 {
|
||||
timer@0 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <0>;
|
||||
};
|
||||
|
||||
timer@1 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <1>;
|
||||
};
|
||||
};
|
||||
|
||||
usart0: serial@f001c000 {
|
||||
status = "okay";
|
||||
};
|
||||
|
@ -34,6 +34,18 @@
|
||||
|
||||
ahb {
|
||||
apb {
|
||||
tcb0: timer@f8008000 {
|
||||
timer@0 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <0>;
|
||||
};
|
||||
|
||||
timer@1 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <1>;
|
||||
};
|
||||
};
|
||||
|
||||
usart0: serial@f801c000 {
|
||||
status = "okay";
|
||||
};
|
||||
|
@ -27,6 +27,18 @@
|
||||
clock-frequency = <12000000>;
|
||||
};
|
||||
|
||||
&tcb0 {
|
||||
timer@0 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <0>;
|
||||
};
|
||||
|
||||
timer@1 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <1>;
|
||||
};
|
||||
};
|
||||
|
||||
&i2c0 {
|
||||
status = "okay";
|
||||
|
||||
|
244
arch/arm/boot/dts/at91-natte.dtsi
Normal file
244
arch/arm/boot/dts/at91-natte.dtsi
Normal file
@ -0,0 +1,244 @@
|
||||
// SPDX-License-Identifier: GPL-2.0+
|
||||
/*
|
||||
* at91-natte.dts - Device Tree include file for the Natte board
|
||||
*
|
||||
* Copyright (C) 2017 Axentia Technologies AB
|
||||
*
|
||||
* Author: Peter Rosin <peda@axentia.se>
|
||||
*/
|
||||
|
||||
/ {
|
||||
mux: mux-controller {
|
||||
compatible = "gpio-mux";
|
||||
#mux-control-cells = <0>;
|
||||
|
||||
mux-gpios = <&ioexp 0 GPIO_ACTIVE_HIGH>,
|
||||
<&ioexp 1 GPIO_ACTIVE_HIGH>,
|
||||
<&ioexp 2 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
batntc-mux {
|
||||
compatible = "io-channel-mux";
|
||||
io-channels = <&adc 5>;
|
||||
io-channel-names = "parent";
|
||||
mux-controls = <&mux>;
|
||||
|
||||
channels =
|
||||
"batntc0", "batntc1", "batntc2", "batntc3",
|
||||
"batntc4", "batntc5", "batntc6", "batntc7";
|
||||
};
|
||||
|
||||
batv-mux {
|
||||
compatible = "io-channel-mux";
|
||||
io-channels = <&adc 6>;
|
||||
io-channel-names = "parent";
|
||||
mux-controls = <&mux>;
|
||||
|
||||
channels =
|
||||
"batv0", "batv1", "batv2", "batv3",
|
||||
"batv4", "batv5", "batv6", "batv7";
|
||||
};
|
||||
|
||||
iout-mux {
|
||||
compatible = "io-channel-mux";
|
||||
io-channels = <&adc 7>;
|
||||
io-channel-names = "parent";
|
||||
mux-controls = <&mux>;
|
||||
|
||||
channels =
|
||||
"iout0", "iout1", "iout2", "iout3",
|
||||
"iout4", "iout5", "iout6", "iout7";
|
||||
};
|
||||
|
||||
i2c-mux {
|
||||
compatible = "i2c-mux";
|
||||
mux-locked;
|
||||
i2c-parent = <&i2c0>;
|
||||
mux-controls = <&mux>;
|
||||
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
i2c@0 {
|
||||
reg = <0>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
charger@9 {
|
||||
compatible = "ti,bq24735";
|
||||
reg = <0x9>;
|
||||
|
||||
ti,charge-current = <2000>;
|
||||
ti,charge-voltage = <16800>;
|
||||
|
||||
poll-interval = <20000>;
|
||||
};
|
||||
};
|
||||
|
||||
i2c@1 {
|
||||
reg = <1>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
charger@9 {
|
||||
compatible = "ti,bq24735";
|
||||
reg = <0x9>;
|
||||
|
||||
ti,charge-current = <2000>;
|
||||
ti,charge-voltage = <16800>;
|
||||
|
||||
poll-interval = <20000>;
|
||||
};
|
||||
};
|
||||
|
||||
i2c@2 {
|
||||
reg = <2>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
charger@9 {
|
||||
compatible = "ti,bq24735";
|
||||
reg = <0x9>;
|
||||
|
||||
ti,charge-current = <2000>;
|
||||
ti,charge-voltage = <16800>;
|
||||
|
||||
poll-interval = <20000>;
|
||||
};
|
||||
};
|
||||
|
||||
i2c@3 {
|
||||
reg = <3>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
charger@9 {
|
||||
compatible = "ti,bq24735";
|
||||
reg = <0x9>;
|
||||
|
||||
ti,charge-current = <2000>;
|
||||
ti,charge-voltage = <16800>;
|
||||
|
||||
poll-interval = <20000>;
|
||||
};
|
||||
};
|
||||
|
||||
i2c@4 {
|
||||
reg = <4>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
charger@9 {
|
||||
compatible = "ti,bq24735";
|
||||
reg = <0x9>;
|
||||
|
||||
ti,charge-current = <2000>;
|
||||
ti,charge-voltage = <16800>;
|
||||
|
||||
poll-interval = <20000>;
|
||||
};
|
||||
};
|
||||
|
||||
i2c@5 {
|
||||
reg = <5>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
charger@9 {
|
||||
compatible = "ti,bq24735";
|
||||
reg = <0x9>;
|
||||
|
||||
ti,charge-current = <2000>;
|
||||
ti,charge-voltage = <16800>;
|
||||
|
||||
poll-interval = <20000>;
|
||||
};
|
||||
};
|
||||
|
||||
i2c@6 {
|
||||
reg = <6>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
charger@9 {
|
||||
compatible = "ti,bq24735";
|
||||
reg = <0x9>;
|
||||
|
||||
ti,charge-current = <2000>;
|
||||
ti,charge-voltage = <16800>;
|
||||
|
||||
poll-interval = <20000>;
|
||||
};
|
||||
};
|
||||
|
||||
i2c@7 {
|
||||
reg = <7>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
charger@9 {
|
||||
compatible = "ti,bq24735";
|
||||
reg = <0x9>;
|
||||
|
||||
ti,charge-current = <2000>;
|
||||
ti,charge-voltage = <16800>;
|
||||
|
||||
poll-interval = <20000>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&i2c0 {
|
||||
status = "okay";
|
||||
|
||||
ioexp: ioexp@20 {
|
||||
#gpio-cells = <2>;
|
||||
compatible = "semtech,sx1502q";
|
||||
reg = <0x20>;
|
||||
|
||||
gpio-controller;
|
||||
ngpios = <8>;
|
||||
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&gpio3_cfg_pins>;
|
||||
|
||||
gpio3_cfg_pins: gpio3_cfg {
|
||||
pins = "gpio3";
|
||||
bias-pull-up;
|
||||
};
|
||||
};
|
||||
|
||||
adc: adc@48 {
|
||||
compatible = "ti,ads1015";
|
||||
reg = <0x48>;
|
||||
#io-channel-cells = <1>;
|
||||
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
channel@4 {
|
||||
reg = <4>;
|
||||
ti,gain = <2>;
|
||||
ti,datarate = <4>;
|
||||
};
|
||||
|
||||
channel@5 {
|
||||
reg = <5>;
|
||||
ti,gain = <2>;
|
||||
ti,datarate = <4>;
|
||||
};
|
||||
|
||||
channel@6 {
|
||||
reg = <6>;
|
||||
ti,gain = <1>;
|
||||
ti,datarate = <4>;
|
||||
};
|
||||
|
||||
channel@7 {
|
||||
reg = <7>;
|
||||
ti,gain = <3>;
|
||||
ti,datarate = <4>;
|
||||
};
|
||||
};
|
||||
};
|
258
arch/arm/boot/dts/at91-nattis-2-natte-2.dts
Normal file
258
arch/arm/boot/dts/at91-nattis-2-natte-2.dts
Normal file
@ -0,0 +1,258 @@
|
||||
// SPDX-License-Identifier: GPL-2.0+
|
||||
/*
|
||||
* at91-nattis-2-natte-2.dts - Device Tree file for the Linea/Nattis board
|
||||
*
|
||||
* Copyright (C) 2017 Axentia Technologies AB
|
||||
*
|
||||
* Author: Peter Rosin <peda@axentia.se>
|
||||
*/
|
||||
/dts-v1/;
|
||||
#include "at91-linea.dtsi"
|
||||
#include "sama5d3_lcd.dtsi"
|
||||
#include "at91-natte.dtsi"
|
||||
|
||||
/ {
|
||||
model = "Axentia Linea-Nattis v2 Natte v2";
|
||||
compatible = "axentia,nattis-2", "axentia,natte-2", "axentia,linea",
|
||||
"atmel,sama5d31", "atmel,sama5d3", "atmel,sama5";
|
||||
|
||||
ahb {
|
||||
apb {
|
||||
pinctrl@fffff200 {
|
||||
nattis {
|
||||
pinctrl_usba_vbus: usba_vbus {
|
||||
atmel,pins =
|
||||
<AT91_PIOD 28
|
||||
AT91_PERIPH_GPIO
|
||||
AT91_PINCTRL_DEGLITCH>;
|
||||
};
|
||||
|
||||
pinctrl_mmc0_cd: mmc0_cd {
|
||||
atmel,pins =
|
||||
<AT91_PIOD 5
|
||||
AT91_PERIPH_GPIO
|
||||
AT91_PINCTRL_PULL_UP_DEGLITCH>;
|
||||
};
|
||||
|
||||
pinctrl_lcd_prlud0: lcd_prlud0 {
|
||||
atmel,pins =
|
||||
<AT91_PIOA 21
|
||||
AT91_PERIPH_GPIO
|
||||
AT91_PINCTRL_OUTPUT_VAL(0)>;
|
||||
};
|
||||
|
||||
pinctrl_lcd_hipow0: lcd_hipow0 {
|
||||
atmel,pins =
|
||||
<AT91_PIOA 23
|
||||
AT91_PERIPH_GPIO
|
||||
AT91_PINCTRL_OUTPUT_VAL(0)>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
watchdog@fffffe40 {
|
||||
status = "okay";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
gpio-keys {
|
||||
compatible = "gpio-keys";
|
||||
|
||||
wakeup {
|
||||
label = "Wakeup";
|
||||
linux,code = <10>;
|
||||
gpio-key,wakeup;
|
||||
gpios = <&pioB 27 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
};
|
||||
|
||||
panel_reg: panel-regulator {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "panel-VCC";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
};
|
||||
|
||||
bl_reg: backlight-regulator {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "panel-VDD";
|
||||
regulator-min-microvolt = <12000000>;
|
||||
regulator-max-microvolt = <12000000>;
|
||||
};
|
||||
|
||||
panel_bl: backlight {
|
||||
compatible = "pwm-backlight";
|
||||
pwms = <&hlcdc_pwm 0 100000 0>;
|
||||
|
||||
brightness-levels = < 0 1 2 3 4 5 6 7 8 9
|
||||
10 11 12 13 14 15 16 17 18 19
|
||||
20 21 22 23 24 25 26 27 28 29
|
||||
30 31 32 33 34 35 36 37 38 39
|
||||
40 41 42 43 44 45 46 47 48 49
|
||||
50 51 52 53 54 55 56 57 58 59
|
||||
60 61 62 63 64 65 66 67 68 69
|
||||
70 71 72 73 74 75 76 77 78 79
|
||||
80 81 82 83 84 85 86 87 88 89
|
||||
90 91 92 93 94 95 96 97 98 99
|
||||
100>;
|
||||
default-brightness-level = <40>;
|
||||
|
||||
power-supply = <&bl_reg>;
|
||||
enable-gpios = <&pioA 20 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
panel: panel {
|
||||
compatible = "sharp,lq150x1lg11";
|
||||
backlight = <&panel_bl>;
|
||||
power-supply = <&panel_reg>;
|
||||
|
||||
port {
|
||||
panel_input: endpoint {
|
||||
remote-endpoint = <&hlcdc_panel_output>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
sound {
|
||||
compatible = "simple-audio-card";
|
||||
|
||||
simple-audio-card,name = "nattis-tfa9879";
|
||||
simple-audio-card,format = "i2s";
|
||||
simple-audio-card,bitclock-master = <&cpu_dai>;
|
||||
simple-audio-card,frame-master = <&cpu_dai>;
|
||||
simple-audio-card,widgets = "Line", "Line Out Jack";
|
||||
simple-audio-card,routing = "Line Out Jack", "LINEOUT";
|
||||
|
||||
cpu_dai: simple-audio-card,cpu {
|
||||
sound-dai = <&ssc0>;
|
||||
};
|
||||
|
||||
simple-audio-card,codec {
|
||||
sound-dai = <&>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&i2c0 {
|
||||
status = "okay";
|
||||
|
||||
clock-frequency = <100000>;
|
||||
|
||||
temp@18 {
|
||||
compatible = "nxp,se97b", "jedec,jc-42.4-temp";
|
||||
reg = <0x18>;
|
||||
smbus-timeout-disable;
|
||||
};
|
||||
|
||||
eeprom@50 {
|
||||
compatible = "nxp,24c02";
|
||||
reg = <0x50>;
|
||||
pagesize = <16>;
|
||||
};
|
||||
|
||||
amp: amplifier@6c {
|
||||
compatible = "nxp,tfa9879";
|
||||
reg = <0x6c>;
|
||||
#sound-dai-cells = <0>;
|
||||
};
|
||||
};
|
||||
|
||||
&ssc0 {
|
||||
status = "okay";
|
||||
|
||||
atmel,clk-from-rk-pin;
|
||||
#sound-dai-cells = <0>;
|
||||
};
|
||||
|
||||
&hlcdc {
|
||||
status = "okay";
|
||||
|
||||
hlcdc-display-controller {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_lcd_base
|
||||
&pinctrl_lcd_rgb565
|
||||
&pinctrl_lcd_prlud0
|
||||
&pinctrl_lcd_hipow0>;
|
||||
|
||||
port@0 {
|
||||
hlcdc_panel_output: endpoint {
|
||||
remote-endpoint = <&panel_input>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&mmc0 {
|
||||
status = "okay";
|
||||
|
||||
pinctrl-0 = <&pinctrl_mmc0_clk_cmd_dat0
|
||||
&pinctrl_mmc0_dat1_3
|
||||
&pinctrl_mmc0_cd>;
|
||||
|
||||
slot@0 {
|
||||
reg = <0>;
|
||||
bus-width = <4>;
|
||||
cd-gpios = <&pioD 5 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
};
|
||||
|
||||
&usart0 {
|
||||
status = "okay";
|
||||
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usart0>;
|
||||
atmel,use-dma-rx;
|
||||
};
|
||||
|
||||
&nand {
|
||||
partitions {
|
||||
compatible = "fixed-partitions";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
|
||||
at91bootstrap@0 {
|
||||
label = "at91bootstrap";
|
||||
reg = <0x0 0x40000>;
|
||||
};
|
||||
|
||||
bootloader@40000 {
|
||||
label = "bootloader";
|
||||
reg = <0x40000 0x80000>;
|
||||
};
|
||||
|
||||
bootloaderenv@c0000 {
|
||||
label = "bootloader env";
|
||||
reg = <0xc0000 0xc0000>;
|
||||
};
|
||||
|
||||
dtb@180000 {
|
||||
label = "device tree";
|
||||
reg = <0x180000 0x80000>;
|
||||
};
|
||||
|
||||
kernel@200000 {
|
||||
label = "kernel";
|
||||
reg = <0x200000 0x600000>;
|
||||
};
|
||||
|
||||
rootfs@800000 {
|
||||
label = "rootfs";
|
||||
reg = <0x800000 0x0f800000>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&dbgu {
|
||||
status = "okay";
|
||||
|
||||
atmel,use-dma-rx;
|
||||
};
|
||||
|
||||
&usb0 {
|
||||
status = "okay";
|
||||
|
||||
atmel,vbus-gpio = <&pioD 28 GPIO_ACTIVE_HIGH>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usba_vbus>;
|
||||
};
|
@ -31,6 +31,18 @@
|
||||
|
||||
ahb {
|
||||
apb {
|
||||
tcb0: timer@fffa0000 {
|
||||
timer@0 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <0>, <1>;
|
||||
};
|
||||
|
||||
timer@2 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <2>;
|
||||
};
|
||||
};
|
||||
|
||||
usb1: gadget@fffa4000 {
|
||||
atmel,vbus-gpio = <&pioC 5 GPIO_ACTIVE_HIGH>;
|
||||
status = "okay";
|
||||
|
@ -32,6 +32,18 @@
|
||||
|
||||
ahb {
|
||||
apb {
|
||||
tcb0: timer@fffa0000 {
|
||||
timer@0 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <0>, <1>;
|
||||
};
|
||||
|
||||
timer@2 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <2>;
|
||||
};
|
||||
};
|
||||
|
||||
mmc0: mmc@fffa8000 {
|
||||
pinctrl-0 = <
|
||||
&pinctrl_board_mmc0
|
||||
|
@ -119,6 +119,18 @@
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
tcb0: timer@f800c000 {
|
||||
timer0: timer@0 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <0>;
|
||||
};
|
||||
|
||||
timer1: timer@1 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <1>;
|
||||
};
|
||||
};
|
||||
|
||||
uart1: serial@f8020000 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_uart1_default>;
|
||||
|
413
arch/arm/boot/dts/at91-sama5d2_ptc_ek.dts
Normal file
413
arch/arm/boot/dts/at91-sama5d2_ptc_ek.dts
Normal file
@ -0,0 +1,413 @@
|
||||
// SPDX-License-Identifier: (GPL-2.0+ OR X11)
|
||||
/*
|
||||
* at91-sama5d2_ptc_ek.dts - Device Tree file for SAMA5D2 PTC EK board
|
||||
*
|
||||
* Copyright (C) 2017 Microchip/Atmel,
|
||||
* 2017 Wenyou Yang <wenyou.yang@microchip.com>
|
||||
* 2017 Ludovic Desroches <ludovic.desroches@microchip.com>
|
||||
*/
|
||||
/dts-v1/;
|
||||
#include "sama5d2.dtsi"
|
||||
#include "sama5d2-pinfunc.h"
|
||||
#include <dt-bindings/mfd/atmel-flexcom.h>
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
|
||||
/ {
|
||||
model = "Atmel SAMA5D2 PTC EK";
|
||||
compatible = "atmel,sama5d2-ptc_ek", "atmel,sama5d2", "atmel,sama5";
|
||||
|
||||
aliases {
|
||||
serial0 = &uart0;
|
||||
i2c0 = &i2c0;
|
||||
i2c1 = &i2c1;
|
||||
i2c2 = &i2c2;
|
||||
};
|
||||
|
||||
chosen {
|
||||
stdout-path = "serial0:115200n8";
|
||||
};
|
||||
|
||||
clocks {
|
||||
slow_xtal {
|
||||
clock-frequency = <32768>;
|
||||
};
|
||||
|
||||
main_xtal {
|
||||
clock-frequency = <24000000>;
|
||||
};
|
||||
};
|
||||
|
||||
ahb {
|
||||
usb0: gadget@300000 {
|
||||
atmel,vbus-gpio = <&pioA PIN_PA27 GPIO_ACTIVE_HIGH>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usba_vbus>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
usb1: ohci@400000 {
|
||||
num-ports = <3>;
|
||||
atmel,vbus-gpio = <0
|
||||
&pioA PIN_PB12 GPIO_ACTIVE_HIGH
|
||||
0
|
||||
>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_usb_default>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
usb2: ehci@500000 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
ebi: ebi@10000000 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_nand_default>;
|
||||
status = "okay"; /* conflicts with sdmmc1 and qspi0 */
|
||||
|
||||
nand_controller: nand-controller {
|
||||
status = "okay";
|
||||
|
||||
nand@3 {
|
||||
reg = <0x3 0x0 0x2>;
|
||||
atmel,rb = <0>;
|
||||
nand-bus-width = <8>;
|
||||
nand-ecc-mode = "hw";
|
||||
nand-on-flash-bbt;
|
||||
label = "atmel_nand";
|
||||
|
||||
partitions {
|
||||
compatible = "fixed-partitions";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
|
||||
at91bootstrap@0 {
|
||||
label = "bootstrap";
|
||||
reg = <0x0 0x40000>;
|
||||
};
|
||||
|
||||
bootloader@40000 {
|
||||
label = "bootloader";
|
||||
reg = <0x40000 0xc0000>;
|
||||
};
|
||||
|
||||
bootloaderenv@0x100000 {
|
||||
label = "bootloader env";
|
||||
reg = <0x100000 0x40000>;
|
||||
};
|
||||
|
||||
bootloaderenvred@0x140000 {
|
||||
label = "bootloader env redundant";
|
||||
reg = <0x140000 0x40000>;
|
||||
};
|
||||
|
||||
dtb@180000 {
|
||||
label = "device tree";
|
||||
reg = <0x180000 0x80000>;
|
||||
};
|
||||
|
||||
kernel@200000 {
|
||||
label = "kernel";
|
||||
reg = <0x200000 0x600000>;
|
||||
};
|
||||
|
||||
rootfs@800000 {
|
||||
label = "rootfs";
|
||||
reg = <0x800000 0x1f800000>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
sdmmc0: sdio-host@a0000000 {
|
||||
bus-width = <8>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_sdmmc0_default>;
|
||||
non-removable;
|
||||
mmc-ddr-1_8v;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
apb {
|
||||
spi0: spi@f8000000 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_spi0_default>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
macb0: ethernet@f8008000 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_macb0_default &pinctrl_macb0_phy_irq>;
|
||||
phy-mode = "rmii";
|
||||
status = "okay";
|
||||
|
||||
ethernet-phy@1 {
|
||||
reg = <0x1>;
|
||||
interrupt-parent = <&pioA>;
|
||||
interrupts = <56 IRQ_TYPE_LEVEL_LOW>;
|
||||
};
|
||||
};
|
||||
|
||||
tcb0: timer@f800c000 {
|
||||
timer0: timer@0 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <0>;
|
||||
};
|
||||
|
||||
timer1: timer@1 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <1>;
|
||||
};
|
||||
};
|
||||
|
||||
uart0: serial@f801c000 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_uart0_default>;
|
||||
atmel,use-dma-rx;
|
||||
atmel,use-dma-tx;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
uart2: serial@f8024000 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_uart2_default>;
|
||||
atmel,use-dma-rx;
|
||||
atmel,use-dma-tx;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
i2c0: i2c@f8028000 {
|
||||
dmas = <0>, <0>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_i2c0_default>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
flx0: flexcom@f8034000 {
|
||||
atmel,flexcom-mode = <ATMEL_FLEXCOM_MODE_TWI>;
|
||||
status = "okay";
|
||||
|
||||
i2c2: i2c@600 {
|
||||
compatible = "atmel,sama5d2-i2c";
|
||||
reg = <0x600 0x200>;
|
||||
interrupts = <19 IRQ_TYPE_LEVEL_HIGH 7>;
|
||||
dmas = <0>, <0>;
|
||||
dma-names = "tx", "rx";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
clocks = <&flx0_clk>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_flx0_default>;
|
||||
atmel,fifo-size = <16>;
|
||||
status = "okay";
|
||||
};
|
||||
};
|
||||
|
||||
shdwc@f8048010 {
|
||||
atmel,shdwc-debouncer = <976>;
|
||||
|
||||
input@0 {
|
||||
reg = <0>;
|
||||
atmel,wakeup-type = "low";
|
||||
};
|
||||
};
|
||||
|
||||
watchdog@f8048040 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
spi1: spi@fc000000 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_spi1_default>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
i2c1: i2c@fc028000 {
|
||||
dmas = <0>, <0>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_i2c1_default>;
|
||||
status = "okay";
|
||||
|
||||
at24@50 {
|
||||
compatible = "24c02";
|
||||
reg = <0x50>;
|
||||
pagesize = <8>;
|
||||
};
|
||||
};
|
||||
|
||||
pinctrl@fc038000 {
|
||||
pinctrl_flx0_default: flx0_default {
|
||||
pinmux = <PIN_PB28__FLEXCOM0_IO0>,
|
||||
<PIN_PB29__FLEXCOM0_IO1>;
|
||||
bias-disable;
|
||||
};
|
||||
|
||||
pinctrl_i2c0_default: i2c0_default {
|
||||
pinmux = <PIN_PD21__TWD0>,
|
||||
<PIN_PD22__TWCK0>;
|
||||
bias-disable;
|
||||
};
|
||||
|
||||
pinctrl_i2c1_default: i2c1_default {
|
||||
pinmux = <PIN_PC6__TWD1>,
|
||||
<PIN_PC7__TWCK1>;
|
||||
bias-disable;
|
||||
};
|
||||
|
||||
pinctrl_key_gpio_default: key_gpio_default {
|
||||
pinmux = <PIN_PA10__GPIO>;
|
||||
bias-pull-up;
|
||||
};
|
||||
|
||||
pinctrl_led_gpio_default: led_gpio_default {
|
||||
pinmux = <PIN_PB6__GPIO>,
|
||||
<PIN_PB8__GPIO>,
|
||||
<PIN_PB10__GPIO>;
|
||||
bias-pull-up;
|
||||
};
|
||||
|
||||
pinctrl_macb0_default: macb0_default {
|
||||
pinmux = <PIN_PB14__GTXCK>,
|
||||
<PIN_PB15__GTXEN>,
|
||||
<PIN_PB16__GRXDV>,
|
||||
<PIN_PB17__GRXER>,
|
||||
<PIN_PB18__GRX0>,
|
||||
<PIN_PB19__GRX1>,
|
||||
<PIN_PB20__GTX0>,
|
||||
<PIN_PB21__GTX1>,
|
||||
<PIN_PB22__GMDC>,
|
||||
<PIN_PB23__GMDIO>;
|
||||
bias-disable;
|
||||
};
|
||||
|
||||
pinctrl_macb0_phy_irq: macb0_phy_irq {
|
||||
pinmux = <PIN_PB24__GPIO>;
|
||||
bias-disable;
|
||||
};
|
||||
|
||||
pinctrl_nand_default: nand_default {
|
||||
re_we_data {
|
||||
pinmux = <PIN_PA22__D0>,
|
||||
<PIN_PA23__D1>,
|
||||
<PIN_PA24__D2>,
|
||||
<PIN_PA25__D3>,
|
||||
<PIN_PA26__D4>,
|
||||
<PIN_PA27__D5>,
|
||||
<PIN_PA28__D6>,
|
||||
<PIN_PA29__D7>,
|
||||
<PIN_PA30__NWE_NANDWE>,
|
||||
<PIN_PB2__NRD_NANDOE>;
|
||||
bias-pull-up;
|
||||
};
|
||||
|
||||
ale_cle_rdy_cs {
|
||||
pinmux = <PIN_PB0__A21_NANDALE>,
|
||||
<PIN_PB1__A22_NANDCLE>,
|
||||
<PIN_PC8__NANDRDY>,
|
||||
<PIN_PA31__NCS3>;
|
||||
bias-pull-up;
|
||||
};
|
||||
};
|
||||
|
||||
pinctrl_sdmmc0_default: sdmmc0_default {
|
||||
cmd_data {
|
||||
pinmux = <PIN_PA1__SDMMC0_CMD>,
|
||||
<PIN_PA2__SDMMC0_DAT0>,
|
||||
<PIN_PA3__SDMMC0_DAT1>,
|
||||
<PIN_PA4__SDMMC0_DAT2>,
|
||||
<PIN_PA5__SDMMC0_DAT3>,
|
||||
<PIN_PA6__SDMMC0_DAT4>,
|
||||
<PIN_PA7__SDMMC0_DAT5>,
|
||||
<PIN_PA8__SDMMC0_DAT6>,
|
||||
<PIN_PA9__SDMMC0_DAT7>;
|
||||
bias-pull-up;
|
||||
};
|
||||
|
||||
ck_cd_vddsel {
|
||||
pinmux = <PIN_PA0__SDMMC0_CK>,
|
||||
<PIN_PA11__SDMMC0_VDDSEL>,
|
||||
<PIN_PA13__SDMMC0_CD>;
|
||||
bias-disable;
|
||||
};
|
||||
};
|
||||
|
||||
pinctrl_spi0_default: spi0_default {
|
||||
pinmux = <PIN_PA14__SPI0_SPCK>,
|
||||
<PIN_PA15__SPI0_MOSI>,
|
||||
<PIN_PA16__SPI0_MISO>,
|
||||
<PIN_PA17__SPI0_NPCS0>;
|
||||
bias-disable;
|
||||
};
|
||||
|
||||
pinctrl_spi1_default: spi1_default {
|
||||
pinmux = <PIN_PC1__SPI1_SPCK>,
|
||||
<PIN_PC2__SPI1_MOSI>,
|
||||
<PIN_PC3__SPI1_MISO>,
|
||||
<PIN_PC4__SPI1_NPCS0>;
|
||||
bias-disable;
|
||||
};
|
||||
|
||||
pinctrl_uart0_default: uart0_default {
|
||||
pinmux = <PIN_PB26__URXD0>,
|
||||
<PIN_PB27__UTXD0>;
|
||||
bias-disable;
|
||||
};
|
||||
|
||||
pinctrl_uart2_default: uart2_default {
|
||||
pinmux = <PIN_PD23__URXD2>,
|
||||
<PIN_PD24__UTXD2>;
|
||||
bias-disable;
|
||||
};
|
||||
|
||||
pinctrl_usb_default: usb_default {
|
||||
pinmux = <PIN_PB12__GPIO>;
|
||||
bias-disable;
|
||||
};
|
||||
|
||||
pinctrl_usba_vbus: usba_vbus {
|
||||
pinmux = <PIN_PB11__GPIO>;
|
||||
bias-disable;
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
};
|
||||
};
|
||||
|
||||
gpio_keys {
|
||||
compatible = "gpio-keys";
|
||||
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_key_gpio_default>;
|
||||
|
||||
bp1 {
|
||||
label = "PB_USER";
|
||||
gpios = <&pioA PIN_PA10 GPIO_ACTIVE_LOW>;
|
||||
linux,code = <0x104>;
|
||||
};
|
||||
};
|
||||
|
||||
leds {
|
||||
compatible = "gpio-leds";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_led_gpio_default>;
|
||||
status = "okay";
|
||||
|
||||
red {
|
||||
label = "red";
|
||||
gpios = <&pioA PIN_PB10 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
green {
|
||||
label = "green";
|
||||
gpios = <&pioA PIN_PB8 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
blue {
|
||||
label = "blue";
|
||||
gpios = <&pioA PIN_PB6 GPIO_ACTIVE_HIGH>;
|
||||
linux,default-trigger = "heartbeat";
|
||||
};
|
||||
};
|
||||
};
|
@ -133,6 +133,18 @@
|
||||
};
|
||||
};
|
||||
|
||||
tcb0: timer@f800c000 {
|
||||
timer0: timer@0 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <0>;
|
||||
};
|
||||
|
||||
timer1: timer@1 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <1>;
|
||||
};
|
||||
};
|
||||
|
||||
pdmic@f8018000 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_pdmic_default>;
|
||||
|
@ -65,6 +65,18 @@
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
tcb0: timer@f0010000 {
|
||||
timer0: timer@0 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <0>;
|
||||
};
|
||||
|
||||
timer1: timer@1 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <1>;
|
||||
};
|
||||
};
|
||||
|
||||
i2c0: i2c@f0014000 {
|
||||
pinctrl-0 = <&pinctrl_i2c0_pu>;
|
||||
status = "okay";
|
||||
|
@ -89,6 +89,18 @@
|
||||
};
|
||||
};
|
||||
|
||||
tcb2: timer@fc024000 {
|
||||
timer@0 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <0>;
|
||||
};
|
||||
|
||||
timer@1 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <1>;
|
||||
};
|
||||
};
|
||||
|
||||
adc0: adc@fc034000 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <
|
||||
|
@ -130,6 +130,18 @@
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
tcb2: timer@fc024000 {
|
||||
timer0: timer@0 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <0>;
|
||||
};
|
||||
|
||||
timer1: timer@1 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <1>;
|
||||
};
|
||||
};
|
||||
|
||||
adc0: adc@fc034000 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <
|
||||
|
@ -174,6 +174,18 @@
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
tcb2: timer@fc024000 {
|
||||
timer@0 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <0>;
|
||||
};
|
||||
|
||||
timer@1 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <1>;
|
||||
};
|
||||
};
|
||||
|
||||
watchdog@fc068640 {
|
||||
status = "okay";
|
||||
};
|
||||
|
@ -151,6 +151,18 @@
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
tcb2: timer@fc024000 {
|
||||
timer@0 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <0>;
|
||||
};
|
||||
|
||||
timer@1 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <1>;
|
||||
};
|
||||
};
|
||||
|
||||
macb1: ethernet@fc028000 {
|
||||
phy-mode = "rmii";
|
||||
status = "okay";
|
||||
|
@ -375,7 +375,9 @@
|
||||
};
|
||||
|
||||
tcb0: timer@fffa0000 {
|
||||
compatible = "atmel,at91rm9200-tcb";
|
||||
compatible = "atmel,at91rm9200-tcb", "simple-mfd", "syscon";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
reg = <0xfffa0000 0x100>;
|
||||
interrupts = <17 IRQ_TYPE_LEVEL_HIGH 0
|
||||
18 IRQ_TYPE_LEVEL_HIGH 0
|
||||
@ -385,7 +387,9 @@
|
||||
};
|
||||
|
||||
tcb1: timer@fffa4000 {
|
||||
compatible = "atmel,at91rm9200-tcb";
|
||||
compatible = "atmel,at91rm9200-tcb", "simple-mfd", "syscon";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
reg = <0xfffa4000 0x100>;
|
||||
interrupts = <20 IRQ_TYPE_LEVEL_HIGH 0
|
||||
21 IRQ_TYPE_LEVEL_HIGH 0
|
||||
|
@ -32,6 +32,18 @@
|
||||
|
||||
ahb {
|
||||
apb {
|
||||
tcb0: timer@fffa0000 {
|
||||
timer@0 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <0>, <1>;
|
||||
};
|
||||
|
||||
timer@2 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <2>;
|
||||
};
|
||||
};
|
||||
|
||||
usb1: gadget@fffb0000 {
|
||||
atmel,vbus-gpio = <&pioD 4 GPIO_ACTIVE_HIGH>;
|
||||
atmel,pullup-gpio = <&pioD 5 GPIO_ACTIVE_HIGH>;
|
||||
|
@ -386,7 +386,9 @@
|
||||
};
|
||||
|
||||
tcb0: timer@fffa0000 {
|
||||
compatible = "atmel,at91rm9200-tcb";
|
||||
compatible = "atmel,at91rm9200-tcb", "simple-mfd", "syscon";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
reg = <0xfffa0000 0x100>;
|
||||
interrupts = <17 IRQ_TYPE_LEVEL_HIGH 0
|
||||
18 IRQ_TYPE_LEVEL_HIGH 0
|
||||
@ -396,7 +398,9 @@
|
||||
};
|
||||
|
||||
tcb1: timer@fffdc000 {
|
||||
compatible = "atmel,at91rm9200-tcb";
|
||||
compatible = "atmel,at91rm9200-tcb", "simple-mfd", "syscon";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
reg = <0xfffdc000 0x100>;
|
||||
interrupts = <26 IRQ_TYPE_LEVEL_HIGH 0
|
||||
27 IRQ_TYPE_LEVEL_HIGH 0
|
||||
|
@ -69,6 +69,18 @@
|
||||
|
||||
ahb {
|
||||
apb {
|
||||
tcb0: timer@fffa0000 {
|
||||
timer@0 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <0>, <1>;
|
||||
};
|
||||
|
||||
timer@2 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <2>;
|
||||
};
|
||||
};
|
||||
|
||||
usb1: gadget@fffa4000 {
|
||||
atmel,vbus-gpio = <&pioC 5 GPIO_ACTIVE_HIGH>;
|
||||
status = "okay";
|
||||
|
@ -80,7 +80,7 @@
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
fb0: fb@0x00600000 {
|
||||
fb0: fb@600000 {
|
||||
compatible = "atmel,at91sam9261-lcdc";
|
||||
reg = <0x00600000 0x1000>;
|
||||
interrupts = <21 IRQ_TYPE_LEVEL_HIGH 3>;
|
||||
@ -125,7 +125,9 @@
|
||||
ranges;
|
||||
|
||||
tcb0: timer@fffa0000 {
|
||||
compatible = "atmel,at91rm9200-tcb";
|
||||
compatible = "atmel,at91rm9200-tcb", "simple-mfd", "syscon";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
reg = <0xfffa0000 0x100>;
|
||||
interrupts = <17 IRQ_TYPE_LEVEL_HIGH 0>,
|
||||
<18 IRQ_TYPE_LEVEL_HIGH 0>,
|
||||
|
@ -15,6 +15,14 @@
|
||||
chosen {
|
||||
bootargs = "rootfstype=ubifs ubi.mtd=5 root=ubi0:rootfs rw";
|
||||
stdout-path = "serial0:115200n8";
|
||||
|
||||
clocksource {
|
||||
timer = <&timer0>;
|
||||
};
|
||||
|
||||
clockevent {
|
||||
timer = <&timer1>;
|
||||
};
|
||||
};
|
||||
|
||||
memory {
|
||||
@ -36,7 +44,7 @@
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
fb0: fb@0x00600000 {
|
||||
fb0: fb@600000 {
|
||||
display = <&display0>;
|
||||
atmel,power-control-gpio = <&pioA 12 GPIO_ACTIVE_LOW>;
|
||||
status = "okay";
|
||||
@ -125,6 +133,18 @@
|
||||
};
|
||||
|
||||
apb {
|
||||
tcb0: timer@fffa0000 {
|
||||
timer0: timer@0 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <0>, <1>;
|
||||
};
|
||||
|
||||
timer1: timer@2 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <2>;
|
||||
};
|
||||
};
|
||||
|
||||
usb1: gadget@fffa4000 {
|
||||
atmel,vbus-gpio = <&pioB 29 GPIO_ACTIVE_HIGH>;
|
||||
status = "okay";
|
||||
|
@ -389,7 +389,9 @@
|
||||
};
|
||||
|
||||
tcb0: timer@fff7c000 {
|
||||
compatible = "atmel,at91rm9200-tcb";
|
||||
compatible = "atmel,at91rm9200-tcb", "simple-mfd", "syscon";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
reg = <0xfff7c000 0x100>;
|
||||
interrupts = <19 IRQ_TYPE_LEVEL_HIGH 0>;
|
||||
clocks = <&tcb_clk>, <&slow_xtal>;
|
||||
@ -999,7 +1001,7 @@
|
||||
};
|
||||
};
|
||||
|
||||
fb0: fb@0x00700000 {
|
||||
fb0: fb@700000 {
|
||||
compatible = "atmel,at91sam9263-lcdc";
|
||||
reg = <0x00700000 0x1000>;
|
||||
interrupts = <26 IRQ_TYPE_LEVEL_HIGH 3>;
|
||||
|
@ -37,6 +37,18 @@
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
tcb0: timer@fff7c000 {
|
||||
timer@0 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <0>, <1>;
|
||||
};
|
||||
|
||||
timer@2 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <2>;
|
||||
};
|
||||
};
|
||||
|
||||
usart0: serial@fff8c000 {
|
||||
pinctrl-0 = <
|
||||
&pinctrl_usart0
|
||||
@ -95,7 +107,7 @@
|
||||
};
|
||||
};
|
||||
|
||||
fb0: fb@0x00700000 {
|
||||
fb0: fb@700000 {
|
||||
display = <&display0>;
|
||||
status = "okay";
|
||||
|
||||
|
@ -51,6 +51,18 @@
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
tcb0: timer@fffa0000 {
|
||||
timer@0 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <0>, <1>;
|
||||
};
|
||||
|
||||
timer@2 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <2>;
|
||||
};
|
||||
};
|
||||
|
||||
usart0: serial@fffb0000 {
|
||||
pinctrl-0 =
|
||||
<&pinctrl_usart0
|
||||
|
@ -25,7 +25,7 @@
|
||||
};
|
||||
|
||||
i2c0: i2c@f8010000 {
|
||||
ov2640: camera@0x30 {
|
||||
ov2640: camera@30 {
|
||||
compatible = "ovti,ov2640";
|
||||
reg = <0x30>;
|
||||
pinctrl-names = "default";
|
||||
|
@ -415,7 +415,9 @@
|
||||
};
|
||||
|
||||
tcb0: timer@fff7c000 {
|
||||
compatible = "atmel,at91rm9200-tcb";
|
||||
compatible = "atmel,at91rm9200-tcb", "simple-mfd", "syscon";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
reg = <0xfff7c000 0x100>;
|
||||
interrupts = <18 IRQ_TYPE_LEVEL_HIGH 0>;
|
||||
clocks = <&tcb0_clk>, <&tcb0_clk>, <&tcb0_clk>, <&clk32k>;
|
||||
@ -423,7 +425,9 @@
|
||||
};
|
||||
|
||||
tcb1: timer@fffd4000 {
|
||||
compatible = "atmel,at91rm9200-tcb";
|
||||
compatible = "atmel,at91rm9200-tcb", "simple-mfd", "syscon";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
reg = <0xfffd4000 0x100>;
|
||||
interrupts = <18 IRQ_TYPE_LEVEL_HIGH 0>;
|
||||
clocks = <&tcb0_clk>, <&tcb0_clk>, <&tcb0_clk>, <&clk32k>;
|
||||
@ -1302,7 +1306,7 @@
|
||||
};
|
||||
};
|
||||
|
||||
fb0: fb@0x00500000 {
|
||||
fb0: fb@500000 {
|
||||
compatible = "atmel,at91sam9g45-lcdc";
|
||||
reg = <0x00500000 0x1000>;
|
||||
interrupts = <23 IRQ_TYPE_LEVEL_HIGH 3>;
|
||||
|
@ -39,6 +39,18 @@
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
tcb0: timer@fff7c000 {
|
||||
timer@0 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <0>, <1>;
|
||||
};
|
||||
|
||||
timer@2 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <2>;
|
||||
};
|
||||
};
|
||||
|
||||
usart1: serial@fff90000 {
|
||||
pinctrl-0 =
|
||||
<&pinctrl_usart1
|
||||
@ -220,7 +232,7 @@
|
||||
};
|
||||
};
|
||||
|
||||
fb0: fb@0x00500000 {
|
||||
fb0: fb@500000 {
|
||||
display = <&display0>;
|
||||
status = "okay";
|
||||
|
||||
|
@ -446,7 +446,9 @@
|
||||
};
|
||||
|
||||
tcb0: timer@f8008000 {
|
||||
compatible = "atmel,at91sam9x5-tcb";
|
||||
compatible = "atmel,at91sam9x5-tcb", "simple-mfd", "syscon";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
reg = <0xf8008000 0x100>;
|
||||
interrupts = <17 IRQ_TYPE_LEVEL_HIGH 0>;
|
||||
clocks = <&tcb_clk>, <&clk32k>;
|
||||
@ -454,7 +456,9 @@
|
||||
};
|
||||
|
||||
tcb1: timer@f800c000 {
|
||||
compatible = "atmel,at91sam9x5-tcb";
|
||||
compatible = "atmel,at91sam9x5-tcb", "simple-mfd", "syscon";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
reg = <0xf800c000 0x100>;
|
||||
interrupts = <17 IRQ_TYPE_LEVEL_HIGH 0>;
|
||||
clocks = <&tcb_clk>, <&clk32k>;
|
||||
|
@ -42,6 +42,18 @@
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
tcb0: timer@f8008000 {
|
||||
timer@0 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <0>;
|
||||
};
|
||||
|
||||
timer@1 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <1>;
|
||||
};
|
||||
};
|
||||
|
||||
i2c0: i2c@f8010000 {
|
||||
status = "okay";
|
||||
|
||||
|
@ -124,7 +124,9 @@
|
||||
ranges;
|
||||
|
||||
tcb0: timer@fffa0000 {
|
||||
compatible = "atmel,at91rm9200-tcb";
|
||||
compatible = "atmel,at91rm9200-tcb", "simple-mfd", "syscon";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
reg = <0xfffa0000 0x100>;
|
||||
interrupts = <16 IRQ_TYPE_LEVEL_HIGH 0>,
|
||||
<17 IRQ_TYPE_LEVEL_HIGH 0>,
|
||||
|
@ -124,6 +124,18 @@
|
||||
};
|
||||
|
||||
apb {
|
||||
tcb0: timer@fffa0000 {
|
||||
timer@0 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <0>, <1>;
|
||||
};
|
||||
|
||||
timer@2 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <2>;
|
||||
};
|
||||
};
|
||||
|
||||
mmc0: mmc@fffa4000 {
|
||||
pinctrl-0 = <
|
||||
&pinctrl_board_mmc0
|
||||
|
@ -433,7 +433,9 @@
|
||||
};
|
||||
|
||||
tcb0: timer@f8008000 {
|
||||
compatible = "atmel,at91sam9x5-tcb";
|
||||
compatible = "atmel,at91sam9x5-tcb", "simple-mfd", "syscon";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
reg = <0xf8008000 0x100>;
|
||||
interrupts = <17 IRQ_TYPE_LEVEL_HIGH 0>;
|
||||
clocks = <&tcb0_clk>, <&clk32k>;
|
||||
@ -441,7 +443,9 @@
|
||||
};
|
||||
|
||||
tcb1: timer@f800c000 {
|
||||
compatible = "atmel,at91sam9x5-tcb";
|
||||
compatible = "atmel,at91sam9x5-tcb", "simple-mfd", "syscon";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
reg = <0xf800c000 0x100>;
|
||||
interrupts = <17 IRQ_TYPE_LEVEL_HIGH 0>;
|
||||
clocks = <&tcb0_clk>, <&clk32k>;
|
||||
|
@ -24,6 +24,18 @@
|
||||
|
||||
ahb {
|
||||
apb {
|
||||
tcb0: timer@f8008000 {
|
||||
timer@0 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <0>;
|
||||
};
|
||||
|
||||
timer@1 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <1>;
|
||||
};
|
||||
};
|
||||
|
||||
pinctrl@fffff400 {
|
||||
1wire_cm {
|
||||
pinctrl_1wire_cm: 1wire_cm-0 {
|
||||
|
@ -36,6 +36,18 @@
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
tcb0: timer@fffa0000 {
|
||||
timer@0 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <0>, <1>;
|
||||
};
|
||||
|
||||
timer@2 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <2>;
|
||||
};
|
||||
};
|
||||
|
||||
usart0: serial@fffb0000 {
|
||||
status = "okay";
|
||||
};
|
||||
|
@ -18,6 +18,18 @@
|
||||
|
||||
ahb {
|
||||
apb {
|
||||
tcb0: timer@fffa0000 {
|
||||
timer@0 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <0>, <1>;
|
||||
};
|
||||
|
||||
timer@2 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <2>;
|
||||
};
|
||||
};
|
||||
|
||||
dbgu: serial@fffff200 {
|
||||
status = "okay";
|
||||
};
|
||||
|
@ -32,6 +32,18 @@
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
tcb0: timer@fffa0000 {
|
||||
timer@0 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <0>, <1>;
|
||||
};
|
||||
|
||||
timer@2 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <2>;
|
||||
};
|
||||
};
|
||||
|
||||
macb0: ethernet@fffbc000 {
|
||||
phy-mode = "rmii";
|
||||
status = "okay";
|
||||
|
@ -52,6 +52,18 @@
|
||||
};
|
||||
};
|
||||
|
||||
tcb0: timer@fff7c000 {
|
||||
timer@0 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <0>, <1>;
|
||||
};
|
||||
|
||||
timer@2 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <2>;
|
||||
};
|
||||
};
|
||||
|
||||
mmc0: mmc@fff80000 {
|
||||
pinctrl-0 = <
|
||||
&pinctrl_board_mmc
|
||||
|
@ -1094,7 +1094,9 @@
|
||||
};
|
||||
|
||||
tcb0: timer@f800c000 {
|
||||
compatible = "atmel,at91sam9x5-tcb";
|
||||
compatible = "atmel,at91sam9x5-tcb", "simple-mfd", "syscon";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
reg = <0xf800c000 0x100>;
|
||||
interrupts = <35 IRQ_TYPE_LEVEL_HIGH 0>;
|
||||
clocks = <&tcb0_clk>, <&clk32k>;
|
||||
@ -1102,7 +1104,9 @@
|
||||
};
|
||||
|
||||
tcb1: timer@f8010000 {
|
||||
compatible = "atmel,at91sam9x5-tcb";
|
||||
compatible = "atmel,at91sam9x5-tcb", "simple-mfd", "syscon";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
reg = <0xf8010000 0x100>;
|
||||
interrupts = <36 IRQ_TYPE_LEVEL_HIGH 0>;
|
||||
clocks = <&tcb1_clk>, <&clk32k>;
|
||||
@ -1427,6 +1431,8 @@
|
||||
interrupts = <40 IRQ_TYPE_LEVEL_HIGH 7>;
|
||||
clocks = <&adc_clk>;
|
||||
clock-names = "adc_clk";
|
||||
dmas = <&dma0 (AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) | AT91_XDMAC_DT_PERID(25))>;
|
||||
dma-names = "rx";
|
||||
atmel,min-sample-rate-hz = <200000>;
|
||||
atmel,max-sample-rate-hz = <20000000>;
|
||||
atmel,startup-time-ms = <4>;
|
||||
|
@ -142,7 +142,9 @@
|
||||
};
|
||||
|
||||
tcb0: timer@f0010000 {
|
||||
compatible = "atmel,at91sam9x5-tcb";
|
||||
compatible = "atmel,at91sam9x5-tcb", "simple-mfd", "syscon";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
reg = <0xf0010000 0x100>;
|
||||
interrupts = <26 IRQ_TYPE_LEVEL_HIGH 0>;
|
||||
clocks = <&tcb0_clk>, <&clk32k>;
|
||||
|
@ -28,7 +28,9 @@
|
||||
};
|
||||
|
||||
tcb1: timer@f8014000 {
|
||||
compatible = "atmel,at91sam9x5-tcb";
|
||||
compatible = "atmel,at91sam9x5-tcb", "simple-mfd", "syscon";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
reg = <0xf8014000 0x100>;
|
||||
interrupts = <27 IRQ_TYPE_LEVEL_HIGH 0>;
|
||||
clocks = <&tcb1_clk>, <&clk32k>;
|
||||
|
@ -34,6 +34,18 @@
|
||||
spi0: spi@f0004000 {
|
||||
cs-gpios = <&pioD 13 0>, <0>, <0>, <0>;
|
||||
};
|
||||
|
||||
tcb0: timer@f0010000 {
|
||||
timer@0 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <0>;
|
||||
};
|
||||
|
||||
timer@1 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <1>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
ebi@10000000 {
|
||||
|
@ -69,6 +69,18 @@
|
||||
cs-gpios = <&pioD 13 0>, <0>, <0>, <0>;
|
||||
};
|
||||
|
||||
tcb0: timer@f0010000 {
|
||||
timer@0 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <0>;
|
||||
};
|
||||
|
||||
timer@1 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <1>;
|
||||
};
|
||||
};
|
||||
|
||||
macb0: ethernet@f0028000 {
|
||||
phy-mode = "rgmii";
|
||||
#address-cells = <1>;
|
||||
|
@ -53,7 +53,7 @@
|
||||
};
|
||||
|
||||
i2c1: i2c@f0018000 {
|
||||
ov2640: camera@0x30 {
|
||||
ov2640: camera@30 {
|
||||
compatible = "ovti,ov2640";
|
||||
reg = <0x30>;
|
||||
pinctrl-names = "default";
|
||||
|
@ -88,7 +88,7 @@
|
||||
};
|
||||
|
||||
i2c1: i2c@f0018000 {
|
||||
ov2640: camera@0x30 {
|
||||
ov2640: camera@30 {
|
||||
compatible = "ovti,ov2640";
|
||||
reg = <0x30>;
|
||||
pinctrl-names = "default";
|
||||
|
@ -960,7 +960,9 @@
|
||||
};
|
||||
|
||||
tcb0: timer@f801c000 {
|
||||
compatible = "atmel,at91sam9x5-tcb";
|
||||
compatible = "atmel,at91sam9x5-tcb", "simple-mfd", "syscon";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
reg = <0xf801c000 0x100>;
|
||||
interrupts = <40 IRQ_TYPE_LEVEL_HIGH 0>;
|
||||
clocks = <&tcb0_clk>, <&clk32k>;
|
||||
@ -1188,13 +1190,25 @@
|
||||
};
|
||||
|
||||
tcb1: timer@fc020000 {
|
||||
compatible = "atmel,at91sam9x5-tcb";
|
||||
compatible = "atmel,at91sam9x5-tcb", "simple-mfd", "syscon";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
reg = <0xfc020000 0x100>;
|
||||
interrupts = <41 IRQ_TYPE_LEVEL_HIGH 0>;
|
||||
clocks = <&tcb1_clk>, <&clk32k>;
|
||||
clock-names = "t0_clk", "slow_clk";
|
||||
};
|
||||
|
||||
tcb2: timer@fc024000 {
|
||||
compatible = "atmel,at91sam9x5-tcb", "simple-mfd", "syscon";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
reg = <0xfc024000 0x100>;
|
||||
interrupts = <42 IRQ_TYPE_LEVEL_HIGH 0>;
|
||||
clocks = <&tcb2_clk>, <&clk32k>;
|
||||
clock-names = "t0_clk", "slow_clk";
|
||||
};
|
||||
|
||||
macb1: ethernet@fc028000 {
|
||||
compatible = "atmel,sama5d4-gem";
|
||||
reg = <0xfc028000 0x100>;
|
||||
|
@ -27,6 +27,18 @@
|
||||
|
||||
ahb {
|
||||
apb {
|
||||
tcb0: timer@fffa0000 {
|
||||
timer@0 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <0>, <1>;
|
||||
};
|
||||
|
||||
timer@2 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <2>;
|
||||
};
|
||||
};
|
||||
|
||||
dbgu: serial@fffff200 {
|
||||
status = "okay";
|
||||
};
|
||||
|
@ -36,6 +36,18 @@
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
tcb0: timer@fff7c000 {
|
||||
timer@0 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <0>, <1>;
|
||||
};
|
||||
|
||||
timer@2 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <2>;
|
||||
};
|
||||
};
|
||||
|
||||
usb1: gadget@fff78000 {
|
||||
atmel,vbus-gpio = <&pioB 11 GPIO_ACTIVE_HIGH>;
|
||||
status = "okay";
|
||||
|
@ -23,6 +23,18 @@
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
tcb0: timer@fffa0000 {
|
||||
timer@0 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <0>, <1>;
|
||||
};
|
||||
|
||||
timer@2 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <2>;
|
||||
};
|
||||
};
|
||||
|
||||
macb0: ethernet@fffc4000 {
|
||||
phy-mode = "rmii";
|
||||
status = "okay";
|
||||
|
@ -36,6 +36,18 @@
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
tcb0: timer@fff7c000 {
|
||||
timer@0 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <0>, <1>;
|
||||
};
|
||||
|
||||
timer@2 {
|
||||
compatible = "atmel,tcb-timer";
|
||||
reg = <2>;
|
||||
};
|
||||
};
|
||||
|
||||
macb0: ethernet@fffbc000 {
|
||||
phy-mode = "rmii";
|
||||
status = "okay";
|
||||
|
Loading…
Reference in New Issue
Block a user