forked from Minki/linux
3976d758e0
As usual, the bulk of the changes for the SoC tree are devicetree file updates, and most of these changes are for 64-bit embedded machines. As before, there are a ton of style cleanups, and additional hardware support for existing machines. Looking only at the new SoC, the notable additions are: - A whole family of Broadcom broadband SoCs, both 32-bit and 64-bit: BCM63178, BCM63158, BCM4912, BCM6858, BCM6878, BCM6846, BCM63146, BCM6856, BCM6855, BCM6756, BCM63148, and BCM6813. Each SoC comes with a corresponding reference board. - The new NXP i.MX93 SoC, the follow-up to the popular i.MX6 and i.MX8 embedded SoCs, now using Cortex-A55 cores and the Ethos-U65 NPU. - Qualcomm Snapdragon 8cx Gen3 (SC8280XP), the current high end of Arm based Laptop SoCs, and its automotive cousin, the SA8540P. The SC8280XP is used in the Lenovo Thinkpad X13s laptop that also gets added here in addition to the reference boards. - Allwinner H616, a newer version of the H6 SoC, targeted at Set-top-box applications. It comes with dts files for the Orange Pi zero2 single-board computer and the X96 Mate set-top-box - Marvell Prestera 98DX2530 (AlleyCat5), a network switch chip in the Armada SoC family based on the Cortex-A55 core. New machines based on previously supported SoCs include: - Several new machines on NXP i.MX platforms: multiple Toradex Colibri boards using the "Iris" and "Ixora" carriers, DH electronics i.MX8M Plus DHCOM and PDK2, TQ-Systems TQMa8MPQL, and phytech phyBOARD-Polis-i.MX8MM. - Google Chameleon v3 FPGA board based on Intel Arria10 and Stratix 10 Software Virtual platform, both in the SoCFPGA platform. - Two new wireless devices based on Broadcom SoCs: The Asus GT-AX6000 Router and the Cisco Meraki MR26 access point - Improved Chromebook support for both the Mediatek and Qualcomm SoC families brought added machines: Acer Chromebook 514 (MT8192), Acer Chromebook Spin 513 (MT8195) and a couple of SC7180 based machines including the Lenovo IdeaPad Chromebook Duet 3. - Xiaomi Mi Mix2s, LG G7 and LG V35 are mobile phones based on Qualcomm SDM845, while Mi 5s Plus is based on MSM8996. - Finally, there are a few development board on other chips: PCB8309 (Microchip lan966x), Radxa Rock Pi S (Rockchips RK3308) DH DRC Compact (ST STM32MP1) and Inforce IFC6560 (Qualcomm SDM660) -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmLo+7MACgkQmmx57+YA GNlTQQ//QnOoW3fl2l4TvuBuP1Vxp7KW3GxZEkWBEfy7lfgkfBzksJ2GT+c96fxk +XEvSJcDsSo8zNYXXu/q0jjVKW4lEkiBtaB53NbLayNTFtJccKPiL4hccUkwSg1K zOhfu6SEgkwuYNAhtcQOfIec+gdF2PvpZSWUfuGvM2Z3rNhhyfhgoRRZCpc62eeS VQ+bVJH/7hG4XAJEcwmNK+8GoCcLbOclCa14oa9/LuEVjfYwOblfPjSflmfALzbM BoTDdeMbZoOdy3LOmLpT26Wv7zWQxLhTpiSYiSV0CI4NHUfzJj8ncNh+w9OiN+KO Z7cblHhveW5WSEP/jDp9YTf2XXA5UgpFQQjuXS8zQVECw5YxrSBB96GroQhvpcmT oSS0BVvlmp5snBRx4Oev2ldJ0BuyYYljF0DmmTrQ6s2gvB4WBlRSqplCAkDy59Im +mc5BBTqZYoxzCpzXEZR7VPzk1jzAO5wnYYd1mLJSHVExlSw8CQijy1a4YXxsvmK 4Sysrm8UbmPN/0anbiyPKeIkuNuufFUvUCR3Vm2HnMzNPza8YBJ0xm6zr8J7ecXe QcucpXyLi17GTLOm+pcyj2fQ19yVqO3xbutP4sy9StctEXLZe3rH2hY+GPK6N+Uj 83MbABMCmpUAyPMzR0AwTKx/RwWbf1jjYvcKg2VW8NNV5kkQQzM= =X6mA -----END PGP SIGNATURE----- Merge tag 'arm-dt-6.0' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc Pull ARM DT updates from Arnd Bergmann: "As usual, the bulk of the changes for the SoC tree are devicetree file updates, and most of these changes are for 64-bit embedded machines. As before, there are a ton of style cleanups, and additional hardware support for existing machines. Looking only at the new SoC, the notable additions are: - A whole family of Broadcom broadband SoCs, both 32-bit and 64-bit: BCM63178, BCM63158, BCM4912, BCM6858, BCM6878, BCM6846, BCM63146, BCM6856, BCM6855, BCM6756, BCM63148, and BCM6813. Each SoC comes with a corresponding reference board. - The new NXP i.MX93 SoC, the follow-up to the popular i.MX6 and i.MX8 embedded SoCs, now using Cortex-A55 cores and the Ethos-U65 NPU. - Qualcomm Snapdragon 8cx Gen3 (SC8280XP), the current high end of Arm based Laptop SoCs, and its automotive cousin, the SA8540P. The SC8280XP is used in the Lenovo Thinkpad X13s laptop that also gets added here in addition to the reference boards. - Allwinner H616, a newer version of the H6 SoC, targeted at Set-top-box applications. It comes with dts files for the Orange Pi zero2 single-board computer and the X96 Mate set-top-box - Marvell Prestera 98DX2530 (AlleyCat5), a network switch chip in the Armada SoC family based on the Cortex-A55 core. New machines based on previously supported SoCs include: - Several new machines on NXP i.MX platforms: multiple Toradex Colibri boards using the "Iris" and "Ixora" carriers, DH electronics i.MX8M Plus DHCOM and PDK2, TQ-Systems TQMa8MPQL, and phytech phyBOARD-Polis-i.MX8MM. - Google Chameleon v3 FPGA board based on Intel Arria10 and Stratix 10 Software Virtual platform, both in the SoCFPGA platform. - Two new wireless devices based on Broadcom SoCs: The Asus GT-AX6000 Router and the Cisco Meraki MR26 access point - Improved Chromebook support for both the Mediatek and Qualcomm SoC families brought added machines: Acer Chromebook 514 (MT8192), Acer Chromebook Spin 513 (MT8195) and a couple of SC7180 based machines including the Lenovo IdeaPad Chromebook Duet 3. - Xiaomi Mi Mix2s, LG G7 and LG V35 are mobile phones based on Qualcomm SDM845, while Mi 5s Plus is based on MSM8996. - Finally, there are a few development board on other chips: PCB8309 (Microchip lan966x), Radxa Rock Pi S (Rockchips RK3308) DH DRC Compact (ST STM32MP1) and Inforce IFC6560 (Qualcomm SDM660)" * tag 'arm-dt-6.0' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (829 commits) dt-bindings: soc: bcm: use absolute path to other schema dt-bindings: soc: bcm: drop quotes when not needed dt-bindings: soc: microchip: use absolute path to other schema dt-bindings: soc: microchip: drop quotes when not needed ARM: dts: lan966x: keep lan966 entries alphabetically sorted ARM: dts: lan966x: add support for pcb8309 dt-bindings: arm: at91: add lan966 pcb8309 board ARM: dts: lan966x: Enable network driver on pcb8291 ARM: dts: lan966x: Disable can0 on pcb8291 ARM: dts: lan966x: Add gpio-restart dt-bindings: arm: aspeed: add Aspeed Evaluation boards arm64: dts: qcom: Add support for Xiaomi Mi Mix2s dt-bindings: arm: qcom: Add Xiaomi Mi Mix2s bindings dt-bindings: arm: qcom: Document lg,judyln and lg,judyp devices dt-bindings: arm: qcom: add missing SM6350 board compatibles dt-bindings: arm: qcom: add missing SM6125 board compatibles dt-bindings: arm: qcom: add missing SDM845 board compatibles dt-bindings: arm: qcom: add missing SDM636 board compatibles dt-bindings: arm: qcom: add missing SDM630 board compatibles dt-bindings: arm: qcom: add missing QCS404 board compatibles ...
791 lines
15 KiB
Plaintext
791 lines
15 KiB
Plaintext
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
|
/*
|
|
* at91-sama5d2_icp.dts - Device Tree file for SAMA5D2-ICP board
|
|
*
|
|
* Copyright (C) 2019 Microchip Technology Inc. and its subsidiaries
|
|
*
|
|
* Author: Radu Pirea & Razvan Stefanescu,
|
|
* Codrin Ciubotariu <codrin.ciubotariu@microchip.com>,
|
|
* Cristian Birsan <cristian.birsan@microchip.com>
|
|
*/
|
|
/dts-v1/;
|
|
#include "sama5d2.dtsi"
|
|
#include "sama5d2-pinfunc.h"
|
|
#include <dt-bindings/gpio/gpio.h>
|
|
#include <dt-bindings/input/input.h>
|
|
#include <dt-bindings/mfd/atmel-flexcom.h>
|
|
|
|
/ {
|
|
model = "Microchip SAMA5D2-ICP";
|
|
compatible = "microchip,sama5d2-icp", "atmel,sama5d27", "atmel,sama5d2", "atmel,sama5";
|
|
|
|
aliases {
|
|
serial0 = &uart0; /* debug uart0 + mikro BUS 1 */
|
|
serial1 = &uart1; /* mikro BUS 3 */
|
|
serial3 = &uart3; /* mikro BUS 2 */
|
|
serial5 = &uart7; /* flx2 */
|
|
i2c0 = &i2c0;
|
|
i2c1 = &i2c1;
|
|
};
|
|
|
|
chosen {
|
|
stdout-path = "serial0:115200n8";
|
|
};
|
|
|
|
clocks {
|
|
slow_xtal {
|
|
clock-frequency = <32768>;
|
|
};
|
|
|
|
main_xtal {
|
|
clock-frequency = <12000000>;
|
|
};
|
|
};
|
|
|
|
gpio-keys {
|
|
compatible = "gpio-keys";
|
|
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&pinctrl_key_gpio_default>;
|
|
|
|
button-1 {
|
|
label = "USER_PB1";
|
|
gpios = <&pioA PIN_PD0 GPIO_ACTIVE_LOW>;
|
|
linux,code = <KEY_PROG1>;
|
|
wakeup-source;
|
|
};
|
|
};
|
|
|
|
leds {
|
|
compatible = "gpio-leds";
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&pinctrl_led_gpio_default>;
|
|
status = "okay"; /* conflict with pwm0 */
|
|
|
|
red {
|
|
label = "red";
|
|
gpios = <&pioA PIN_PB0 GPIO_ACTIVE_HIGH>;
|
|
};
|
|
|
|
green {
|
|
label = "green";
|
|
gpios = <&pioA PIN_PB1 GPIO_ACTIVE_HIGH>;
|
|
};
|
|
|
|
blue {
|
|
label = "blue";
|
|
gpios = <&pioA PIN_PA31 GPIO_ACTIVE_HIGH>;
|
|
linux,default-trigger = "heartbeat";
|
|
};
|
|
};
|
|
};
|
|
|
|
&adc {
|
|
vddana-supply = <&vdd_io_reg>;
|
|
vref-supply = <&vdd_io_reg>;
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&pinctrl_adc_default &pinctrl_adtrg_default>;
|
|
status = "okay";
|
|
};
|
|
|
|
&can0 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&pinctrl_can0_default>;
|
|
status = "okay";
|
|
};
|
|
|
|
&can1 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&pinctrl_can1_default>;
|
|
status = "okay";
|
|
};
|
|
|
|
&flx0 { /* mikrobus2 spi */
|
|
atmel,flexcom-mode = <ATMEL_FLEXCOM_MODE_SPI>;
|
|
status = "okay";
|
|
|
|
spi2: spi@400 {
|
|
dmas = <0>, <0>;
|
|
cs-gpios = <&pioA PIN_PC0 GPIO_ACTIVE_LOW>;
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&pinctrl_mikrobus2_spi &pinctrl_ksz_spi_cs>;
|
|
status = "okay";
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
|
|
switch0: ksz8563@0 {
|
|
compatible = "microchip,ksz8563";
|
|
reg = <0>;
|
|
reset-gpios = <&pioA PIN_PD4 GPIO_ACTIVE_LOW>;
|
|
|
|
spi-max-frequency = <500000>;
|
|
spi-cpha;
|
|
spi-cpol;
|
|
|
|
ports {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
port@0 {
|
|
reg = <0>;
|
|
label = "lan1";
|
|
};
|
|
|
|
port@1 {
|
|
reg = <1>;
|
|
label = "lan2";
|
|
};
|
|
|
|
port@2 {
|
|
reg = <2>;
|
|
label = "cpu";
|
|
ethernet = <&macb0>;
|
|
phy-mode = "mii";
|
|
fixed-link {
|
|
speed = <100>;
|
|
full-duplex;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
&flx2 {
|
|
atmel,flexcom-mode = <ATMEL_FLEXCOM_MODE_USART>;
|
|
status = "okay";
|
|
|
|
uart7: serial@200 {
|
|
pinctrl-0 = <&pinctrl_flx2_default>;
|
|
pinctrl-names = "default";
|
|
atmel,use-dma-rx;
|
|
atmel,use-dma-tx;
|
|
status = "okay"; /* Conflict w/ qspi1. */
|
|
};
|
|
};
|
|
|
|
&flx3 { /* mikrobus1 spi */
|
|
atmel,flexcom-mode = <ATMEL_FLEXCOM_MODE_SPI>;
|
|
status = "okay";
|
|
|
|
spi5: spi@400 {
|
|
dmas = <0>, <0>;
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&pinctrl_mikrobus1_spi &pinctrl_mikrobus1_spi_cs>;
|
|
status = "okay";
|
|
};
|
|
};
|
|
|
|
&flx4 {
|
|
atmel,flexcom-mode = <ATMEL_FLEXCOM_MODE_TWI>;
|
|
status = "okay";
|
|
|
|
i2c6: i2c@600 {
|
|
dmas = <0>, <0>;
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&pinctrl_flx4_default>;
|
|
i2c-digital-filter;
|
|
i2c-digital-filter-width-ns = <35>;
|
|
status = "okay";
|
|
|
|
mcp16502@5b {
|
|
compatible = "microchip,mcp16502";
|
|
reg = <0x5b>;
|
|
status = "okay";
|
|
lpm-gpios = <&pioBU 7 GPIO_ACTIVE_LOW>;
|
|
|
|
regulators {
|
|
vdd_io_reg: VDD_IO {
|
|
regulator-name = "VDD_IO";
|
|
regulator-min-microvolt = <1200000>;
|
|
regulator-max-microvolt = <3700000>;
|
|
regulator-initial-mode = <2>;
|
|
regulator-allowed-modes = <2>, <4>;
|
|
regulator-always-on;
|
|
|
|
regulator-state-standby {
|
|
regulator-on-in-suspend;
|
|
regulator-mode = <4>;
|
|
};
|
|
|
|
regulator-state-mem {
|
|
regulator-off-in-suspend;
|
|
regulator-mode = <4>;
|
|
};
|
|
};
|
|
|
|
VDD_DDR {
|
|
regulator-name = "VDD_DDR";
|
|
regulator-min-microvolt = <600000>;
|
|
regulator-max-microvolt = <1850000>;
|
|
regulator-initial-mode = <2>;
|
|
regulator-allowed-modes = <2>, <4>;
|
|
regulator-always-on;
|
|
|
|
regulator-state-standby {
|
|
regulator-on-in-suspend;
|
|
regulator-mode = <4>;
|
|
};
|
|
|
|
regulator-state-mem {
|
|
regulator-on-in-suspend;
|
|
regulator-mode = <4>;
|
|
};
|
|
};
|
|
|
|
VDD_CORE {
|
|
regulator-name = "VDD_CORE";
|
|
regulator-min-microvolt = <600000>;
|
|
regulator-max-microvolt = <1850000>;
|
|
regulator-initial-mode = <2>;
|
|
regulator-allowed-modes = <2>, <4>;
|
|
regulator-always-on;
|
|
|
|
regulator-state-standby {
|
|
regulator-on-in-suspend;
|
|
regulator-mode = <4>;
|
|
};
|
|
|
|
regulator-state-mem {
|
|
regulator-off-in-suspend;
|
|
regulator-mode = <4>;
|
|
};
|
|
};
|
|
|
|
VDD_OTHER {
|
|
regulator-name = "VDD_OTHER";
|
|
regulator-min-microvolt = <600000>;
|
|
regulator-max-microvolt = <1850000>;
|
|
regulator-initial-mode = <2>;
|
|
regulator-allowed-modes = <2>, <4>;
|
|
regulator-always-on;
|
|
|
|
regulator-state-standby {
|
|
regulator-on-in-suspend;
|
|
regulator-mode = <4>;
|
|
};
|
|
|
|
regulator-state-mem {
|
|
regulator-off-in-suspend;
|
|
regulator-mode = <4>;
|
|
};
|
|
};
|
|
|
|
LDO1 {
|
|
regulator-name = "LDO1";
|
|
regulator-min-microvolt = <1200000>;
|
|
regulator-max-microvolt = <3700000>;
|
|
regulator-always-on;
|
|
|
|
regulator-state-standby {
|
|
regulator-on-in-suspend;
|
|
};
|
|
|
|
regulator-state-mem {
|
|
regulator-off-in-suspend;
|
|
};
|
|
};
|
|
|
|
LDO2 {
|
|
regulator-name = "LDO2";
|
|
regulator-min-microvolt = <1200000>;
|
|
regulator-max-microvolt = <3700000>;
|
|
regulator-always-on;
|
|
|
|
regulator-state-standby {
|
|
regulator-on-in-suspend;
|
|
};
|
|
|
|
regulator-state-mem {
|
|
regulator-off-in-suspend;
|
|
};
|
|
};
|
|
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
&i2c0 { /* mikrobus i2c */
|
|
pinctrl-names = "default", "gpio";
|
|
pinctrl-0 = <&pinctrl_mikrobus_i2c>;
|
|
pinctrl-1 = <&pinctrl_i2c0_gpio>;
|
|
sda-gpios = <&pioA PIN_PD21 GPIO_ACTIVE_HIGH>;
|
|
scl-gpios = <&pioA PIN_PD22 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
|
i2c-digital-filter;
|
|
i2c-digital-filter-width-ns = <35>;
|
|
status = "okay";
|
|
};
|
|
|
|
&i2c1 {
|
|
dmas = <0>, <0>;
|
|
pinctrl-names = "default", "gpio";
|
|
pinctrl-0 = <&pinctrl_i2c1_default>;
|
|
pinctrl-1 = <&pinctrl_i2c1_gpio>;
|
|
sda-gpios = <&pioA PIN_PD19 GPIO_ACTIVE_HIGH>;
|
|
scl-gpios = <&pioA PIN_PD20 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
|
|
i2c-digital-filter;
|
|
i2c-digital-filter-width-ns = <35>;
|
|
status = "okay";
|
|
|
|
eeprom@50 {
|
|
compatible = "atmel,24c02";
|
|
reg = <0x50>;
|
|
pagesize = <16>;
|
|
status = "okay";
|
|
};
|
|
|
|
eeprom@52 {
|
|
compatible = "atmel,24c02";
|
|
reg = <0x52>;
|
|
pagesize = <16>;
|
|
status = "disabled";
|
|
};
|
|
|
|
eeprom@53 {
|
|
compatible = "atmel,24c02";
|
|
reg = <0x53>;
|
|
pagesize = <16>;
|
|
status = "disabled";
|
|
};
|
|
};
|
|
|
|
&macb0 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&pinctrl_macb0_default &pinctrl_macb0_phy_irq &pinctrl_macb0_rst>;
|
|
phy-mode = "mii";
|
|
status = "okay";
|
|
|
|
fixed-link {
|
|
speed = <100>;
|
|
full-duplex;
|
|
};
|
|
};
|
|
|
|
&pioA {
|
|
pinctrl_adc_default: adc_default {
|
|
pinmux = <PIN_PD24__GPIO>,
|
|
<PIN_PD25__GPIO>,
|
|
<PIN_PD26__GPIO>;
|
|
bias-disable;
|
|
};
|
|
|
|
/*
|
|
* The ADTRG pin can work on any edge type.
|
|
* In here it's being pulled up, so need to
|
|
* connect it to ground to get an edge e.g.
|
|
* Trigger can be configured on falling, rise
|
|
* or any edge, and the pull-up can be changed
|
|
* to pull-down or left floating according to
|
|
* needs.
|
|
*/
|
|
pinctrl_adtrg_default: adtrg_default {
|
|
pinmux = <PIN_PD31__ADTRG>;
|
|
bias-pull-up;
|
|
};
|
|
|
|
pinctrl_flx4_default: flx4_default {
|
|
pinmux = <PIN_PC28__FLEXCOM4_IO0>,
|
|
<PIN_PC29__FLEXCOM4_IO1>;
|
|
bias-disable;
|
|
};
|
|
|
|
pinctrl_can0_default: can0_default {
|
|
pinmux = <PIN_PC10__CANTX0>,
|
|
<PIN_PC11__CANRX0>;
|
|
bias-disable;
|
|
};
|
|
|
|
pinctrl_can1_default: can1_default {
|
|
pinmux = <PIN_PC26__CANTX1>,
|
|
<PIN_PC27__CANRX1>;
|
|
bias-disable;
|
|
};
|
|
|
|
pinctrl_i2c1_default: i2c1_default {
|
|
pinmux = <PIN_PD19__TWD1>,
|
|
<PIN_PD20__TWCK1>;
|
|
bias-disable;
|
|
};
|
|
|
|
pinctrl_i2c1_gpio: i2c1_gpio {
|
|
pinmux = <PIN_PD19__GPIO>,
|
|
<PIN_PD20__GPIO>;
|
|
bias-disable;
|
|
};
|
|
|
|
pinctrl_key_gpio_default: key_gpio_default {
|
|
pinmux = <PIN_PD0__GPIO>;
|
|
bias-pull-up;
|
|
};
|
|
|
|
pinctrl_led_gpio_default: led_gpio_default {
|
|
pinmux = <PIN_PB0__GPIO>,
|
|
<PIN_PB1__GPIO>,
|
|
<PIN_PA31__GPIO>;
|
|
bias-pull-up;
|
|
};
|
|
|
|
pinctrl_qspi1_default: qspi1_default {
|
|
pinmux = <PIN_PA6__QSPI1_SCK>,
|
|
<PIN_PA7__QSPI1_IO0>,
|
|
<PIN_PA8__QSPI1_IO1>,
|
|
<PIN_PA9__QSPI1_IO2>,
|
|
<PIN_PA10__QSPI1_IO3>,
|
|
<PIN_PA11__QSPI1_CS>;
|
|
bias-disable;
|
|
};
|
|
|
|
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>;
|
|
bias-disable;
|
|
};
|
|
|
|
ck_cd {
|
|
pinmux = <PIN_PA0__SDMMC0_CK>,
|
|
<PIN_PA13__SDMMC0_CD>;
|
|
bias-disable;
|
|
};
|
|
};
|
|
|
|
pinctrl_sdmmc1_default: sdmmc1_default {
|
|
cmd_data {
|
|
pinmux = <PIN_PA18__SDMMC1_DAT0>,
|
|
<PIN_PA19__SDMMC1_DAT1>,
|
|
<PIN_PA20__SDMMC1_DAT2>,
|
|
<PIN_PA21__SDMMC1_DAT3>;
|
|
bias-disable;
|
|
};
|
|
|
|
ck_cd {
|
|
pinmux = <PIN_PA22__SDMMC1_CK>,
|
|
<PIN_PA28__SDMMC1_CMD>;
|
|
bias-disable;
|
|
};
|
|
};
|
|
|
|
pinctrl_mikrobus_i2c: mikrobus_i2c {
|
|
pinmux = <PIN_PD22__TWCK0>,
|
|
<PIN_PD21__TWD0>;
|
|
bias-disable;
|
|
};
|
|
|
|
pinctrl_i2c0_gpio: i2c0_gpio {
|
|
pinmux = <PIN_PD21__GPIO>,
|
|
<PIN_PD22__GPIO>;
|
|
bias-disable;
|
|
};
|
|
|
|
pinctrl_mikrobus1_an: mikrobus1_an {
|
|
pinmux = <PIN_PD26__GPIO>;
|
|
bias-disable;
|
|
};
|
|
|
|
pinctrl_mikrobus1_rst: mikrobus1_rst {
|
|
pinmux = <PIN_PC5__GPIO>;
|
|
bias-disable;
|
|
};
|
|
|
|
pinctrl_mikrobus1_spi_cs: mikrobus1_spi_cs {
|
|
pinmux = <PIN_PC21__FLEXCOM3_IO3>;
|
|
bias-disable;
|
|
};
|
|
|
|
pinctrl_mikrobus1_spi: mikrobus1_spi {
|
|
pinmux = <PIN_PC20__FLEXCOM3_IO0>,
|
|
<PIN_PC19__FLEXCOM3_IO1>,
|
|
<PIN_PC18__FLEXCOM3_IO2>;
|
|
bias-disable;
|
|
};
|
|
|
|
pinctrl_mikrobus1_pwm: mikrobus1_pwm {
|
|
pinmux = <PIN_PC4__TIOB1>;
|
|
bias-disable;
|
|
};
|
|
|
|
pinctrl_mikrobus1_int: mikrobus1_int {
|
|
pinmux = <PIN_PC3__GPIO>;
|
|
bias-disable;
|
|
};
|
|
|
|
pinctrl_mikrobus1_uart: mikrobus1_uart {
|
|
pinmux = <PIN_PB26__URXD0>,
|
|
<PIN_PB27__UTXD0>;
|
|
bias-disable;
|
|
};
|
|
|
|
pinctrl_mikrobus2_an: mikrobus2_an {
|
|
pinmux = <PIN_PD25__GPIO>;
|
|
bias-disable;
|
|
};
|
|
|
|
pinctrl_mikrobus2_rst: mikrobus2_rst {
|
|
pinmux = <PIN_PB24__GPIO>;
|
|
bias-disable;
|
|
};
|
|
|
|
pinctrl_mikrobus2_spi_cs: mikrobus2_spi_cs {
|
|
pinmux = <PIN_PB31__FLEXCOM0_IO3>;
|
|
bias-disable;
|
|
};
|
|
|
|
pinctrl_mikrobus2_spi: mikrobus2_spi {
|
|
pinmux = <PIN_PB28__FLEXCOM0_IO0>,
|
|
<PIN_PB29__FLEXCOM0_IO1>,
|
|
<PIN_PB30__FLEXCOM0_IO2>;
|
|
bias-disable;
|
|
};
|
|
|
|
pinctrl_ksz_spi_cs: ksz_spi_cs {
|
|
pinmux = <PIN_PC0__GPIO>;
|
|
bias-disable;
|
|
};
|
|
|
|
pinctrl_mikrobus2_pwm: mikrobus2_pwm {
|
|
pinmux = <PIN_PB23__TIOB2>;
|
|
bias-disable;
|
|
};
|
|
|
|
pinctrl_mikrobus2_int: mikrobus2_int {
|
|
pinmux = <PIN_PB22__GPIO>;
|
|
bias-disable;
|
|
};
|
|
|
|
pinctrl_mikrobus2_uart: mikrobus2_uart {
|
|
pinmux = <PIN_PC12__URXD3>,
|
|
<PIN_PC13__UTXD3>;
|
|
bias-disable;
|
|
};
|
|
|
|
pinctrl_mikrobus3_an: mikrobus3_an {
|
|
pinmux = <PIN_PD24__GPIO>;
|
|
bias-disable;
|
|
};
|
|
|
|
pinctrl_mikrobus3_rst: mikrobus3_rst {
|
|
pinmux = <PIN_PB21__GPIO>;
|
|
bias-disable;
|
|
};
|
|
|
|
pinctrl_mikrobus3_spi_cs: mikrobus3_spi_cs {
|
|
pinmux = <PIN_PA17__SPI0_NPCS0>;
|
|
bias-disable;
|
|
};
|
|
|
|
pinctrl_mikrobus3_spi: mikrobus3_spi {
|
|
pinmux = <PIN_PA14__SPI0_SPCK>,
|
|
<PIN_PA16__SPI0_MISO>,
|
|
<PIN_PA15__SPI0_MOSI>;
|
|
bias-disable;
|
|
};
|
|
|
|
pinctrl_mikrobus3_pwm: mikrobus3_pwm {
|
|
pinmux = <PIN_PB20__TIOB3>;
|
|
bias-disable;
|
|
};
|
|
|
|
pinctrl_mikrobus3_int: mikrobus3_int {
|
|
pinmux = <PIN_PB18__GPIO>;
|
|
bias-disable;
|
|
};
|
|
|
|
pinctrl_mikrobus3_uart: mikrobus3_uart {
|
|
pinmux = <PIN_PC7__URXD1>,
|
|
<PIN_PC8__UTXD1>;
|
|
bias-disable;
|
|
};
|
|
|
|
pinctrl_usb_default: usb_default {
|
|
pinmux = <PIN_PC17__GPIO>;
|
|
bias-disable;
|
|
};
|
|
|
|
pinctrl_usba_vbus: usba_vbus {
|
|
pinmux = <PIN_PD23__GPIO>;
|
|
bias-disable;
|
|
};
|
|
|
|
pinctrl_pwm0_pwm2_default: pwm0_pwm2_default {
|
|
pinmux = <PIN_PB5__PWMH2>,
|
|
<PIN_PB6__PWML2>;
|
|
bias-pull-up;
|
|
};
|
|
|
|
pinctrl_macb0_default: macb0_default {
|
|
pinmux = <PIN_PD1__GRXCK>,
|
|
<PIN_PD2__GTXER>,
|
|
<PIN_PD5__GRX2>,
|
|
<PIN_PD6__GRX3>,
|
|
<PIN_PD7__GTX2>,
|
|
<PIN_PD8__GTX3>,
|
|
<PIN_PD9__GTXCK>,
|
|
<PIN_PD10__GTXEN>,
|
|
<PIN_PD11__GRXDV>,
|
|
<PIN_PD12__GRXER>,
|
|
<PIN_PD13__GRX0>,
|
|
<PIN_PD14__GRX1>,
|
|
<PIN_PD15__GTX0>,
|
|
<PIN_PD16__GTX1>,
|
|
<PIN_PD17__GMDC>,
|
|
<PIN_PD18__GMDIO>;
|
|
bias-disable;
|
|
};
|
|
|
|
pinctrl_macb0_phy_irq: macb0_phy_irq {
|
|
pinmux = <PIN_PD3__GPIO>;
|
|
bias-disable;
|
|
};
|
|
|
|
pinctrl_macb0_rst: macb0_sw_rst {
|
|
pinmux = <PIN_PD4__GPIO>;
|
|
bias-disable;
|
|
};
|
|
|
|
pinctrl_flx2_default: flx2_default {
|
|
pinmux = <PIN_PA6__FLEXCOM2_IO0>,
|
|
<PIN_PA7__FLEXCOM2_IO1>,
|
|
<PIN_PA9__FLEXCOM2_IO3>,
|
|
<PIN_PA10__FLEXCOM2_IO4>;
|
|
bias-disable;
|
|
};
|
|
};
|
|
|
|
&pwm0 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&pinctrl_pwm0_pwm2_default>;
|
|
status = "disabled"; /* conflict with leds, HSIC */
|
|
};
|
|
|
|
&qspi1 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&pinctrl_qspi1_default>;
|
|
status = "disabled"; /* Conflict with wilc_pwrseq, flx2 */
|
|
|
|
flash@0 {
|
|
#address-cells = <1>;
|
|
#size-cells = <1>;
|
|
compatible = "jedec,spi-nor";
|
|
reg = <0>;
|
|
spi-max-frequency = <80000000>;
|
|
spi-tx-bus-width = <4>;
|
|
spi-rx-bus-width = <4>;
|
|
m25p,fast-read;
|
|
|
|
at91bootstrap@0 {
|
|
label = "qspi: at91bootstrap";
|
|
reg = <0x00000000 0x00040000>;
|
|
};
|
|
|
|
bootloader@40000 {
|
|
label = "qspi: bootloader";
|
|
reg = <0x00040000 0x000c0000>;
|
|
};
|
|
|
|
bootloaderenvred@100000 {
|
|
label = "qspi: bootloader env redundant";
|
|
reg = <0x00100000 0x00040000>;
|
|
};
|
|
|
|
bootloaderenv@140000 {
|
|
label = "qspi: bootloader env";
|
|
reg = <0x00140000 0x00040000>;
|
|
};
|
|
|
|
dtb@180000 {
|
|
label = "qspi: device tree";
|
|
reg = <0x00180000 0x00080000>;
|
|
};
|
|
|
|
kernel@200000 {
|
|
label = "qspi: kernel";
|
|
reg = <0x00200000 0x00600000>;
|
|
};
|
|
};
|
|
};
|
|
|
|
&sdmmc0 {
|
|
no-1-8-v;
|
|
bus-width = <4>;
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&pinctrl_sdmmc0_default>;
|
|
status = "okay";
|
|
};
|
|
|
|
&shutdown_controller {
|
|
debounce-delay-us = <976>;
|
|
atmel,wakeup-rtc-timer;
|
|
|
|
input@0 {
|
|
reg = <0>;
|
|
};
|
|
};
|
|
|
|
&spi0 { /* mikrobus3 spi */
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&pinctrl_mikrobus3_spi &pinctrl_mikrobus3_spi_cs>;
|
|
status = "okay";
|
|
};
|
|
|
|
&tcb0 {
|
|
timer0: timer@0 {
|
|
compatible = "atmel,tcb-timer";
|
|
reg = <0>;
|
|
};
|
|
|
|
timer1: timer@1 {
|
|
compatible = "atmel,tcb-timer";
|
|
reg = <1>;
|
|
};
|
|
};
|
|
|
|
&uart0 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&pinctrl_mikrobus1_uart>;
|
|
atmel,use-dma-rx;
|
|
atmel,use-dma-tx;
|
|
status = "okay";
|
|
};
|
|
|
|
&uart1 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&pinctrl_mikrobus3_uart>;
|
|
atmel,use-dma-rx;
|
|
atmel,use-dma-tx;
|
|
status = "okay";
|
|
};
|
|
|
|
&uart3 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&pinctrl_mikrobus2_uart>;
|
|
atmel,use-dma-rx;
|
|
atmel,use-dma-tx;
|
|
status = "okay";
|
|
};
|
|
|
|
&usb0 {
|
|
atmel,vbus-gpio = <&pioA PIN_PD23 GPIO_ACTIVE_HIGH>;
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&pinctrl_usba_vbus>;
|
|
status = "okay";
|
|
};
|
|
|
|
&usb1 {
|
|
num-ports = <3>;
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&pinctrl_usb_default>;
|
|
status = "okay";
|
|
};
|
|
|
|
&usb2 {
|
|
phy_type = "hsic";
|
|
status = "okay";
|
|
};
|
|
|
|
&watchdog {
|
|
status = "okay";
|
|
};
|