cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

at91-sam9x60ek.dts (18108B)


      1// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
      2/*
      3 * at91-sam9x60ek.dts - Device Tree file for Microchip SAM9X60-EK board
      4 *
      5 * Copyright (C) 2019 Microchip Technology Inc. and its subsidiaries
      6 *
      7 * Author: Sandeep Sheriker M <sandeepsheriker.mallikarjun@microchip.com>
      8 */
      9/dts-v1/;
     10#include "sam9x60.dtsi"
     11#include <dt-bindings/input/input.h>
     12
     13/ {
     14	model = "Microchip SAM9X60-EK";
     15	compatible = "microchip,sam9x60ek", "microchip,sam9x60", "atmel,at91sam9";
     16
     17	aliases {
     18		i2c0 = &i2c0;
     19		i2c1 = &i2c1;
     20		serial1 = &uart1;
     21	};
     22
     23	chosen {
     24		stdout-path = "serial0:115200n8";
     25	};
     26
     27	clocks {
     28		slow_xtal {
     29			clock-frequency = <32768>;
     30		};
     31
     32		main_xtal {
     33			clock-frequency = <24000000>;
     34		};
     35	};
     36
     37	regulators: regulators {
     38		compatible = "simple-bus";
     39		#address-cells = <1>;
     40		#size-cells = <0>;
     41
     42		vdd_1v8: fixed-regulator-vdd_1v8@0 {
     43			compatible = "regulator-fixed";
     44			regulator-name = "VDD_1V8";
     45			regulator-min-microvolt = <1800000>;
     46			regulator-max-microvolt = <1800000>;
     47			regulator-always-on;
     48			status = "okay";
     49		};
     50
     51		vdd_1v15: fixed-regulator-vdd_1v15@1 {
     52			compatible = "regulator-fixed";
     53			regulator-name = "VDD_1V15";
     54			regulator-min-microvolt = <1150000>;
     55			regulator-max-microvolt = <1150000>;
     56			regulator-always-on;
     57			status = "okay";
     58		};
     59
     60		vdd1_3v3: fixed-regulator-vdd1_3v3@2 {
     61			compatible = "regulator-fixed";
     62			regulator-name = "VDD1_3V3";
     63			regulator-min-microvolt = <3300000>;
     64			regulator-max-microvolt = <3300000>;
     65			regulator-always-on;
     66			status = "okay";
     67		};
     68
     69		vdd2_3v3: regulator-fixed-vdd2_3v3@3 {
     70			compatible = "regulator-fixed";
     71			regulator-name = "VDD2_3V3";
     72			regulator-min-microvolt = <3300000>;
     73			regulator-max-microvolt = <3300000>;
     74			regulator-always-on;
     75			status = "okay";
     76		};
     77	};
     78
     79	gpio_keys {
     80		compatible = "gpio-keys";
     81		pinctrl-names = "default";
     82		pinctrl-0 = <&pinctrl_key_gpio_default>;
     83		status = "okay";
     84
     85		sw1 {
     86			label = "SW1";
     87			gpios = <&pioD 18 GPIO_ACTIVE_LOW>;
     88			linux,code=<KEY_PROG1>;
     89			wakeup-source;
     90		};
     91	};
     92
     93	leds {
     94		compatible = "gpio-leds";
     95		pinctrl-names = "default";
     96		pinctrl-0 = <&pinctrl_gpio_leds>;
     97		status = "okay"; /* Conflict with pwm0. */
     98
     99		red {
    100			label = "red";
    101			gpios = <&pioB 11 GPIO_ACTIVE_HIGH>;
    102		};
    103
    104		green {
    105			label = "green";
    106			gpios = <&pioB 12 GPIO_ACTIVE_HIGH>;
    107		};
    108
    109		blue {
    110			label = "blue";
    111			gpios = <&pioB 13 GPIO_ACTIVE_HIGH>;
    112			linux,default-trigger = "heartbeat";
    113		};
    114	};
    115};
    116
    117&adc {
    118	vddana-supply = <&vdd1_3v3>;
    119	vref-supply = <&vdd1_3v3>;
    120	pinctrl-names = "default";
    121	pinctrl-0 = <&pinctrl_adc_default &pinctrl_adtrg_default>;
    122	status = "okay";
    123};
    124
    125&can0 {
    126	pinctrl-names = "default";
    127	pinctrl-0 = <&pinctrl_can0_rx_tx>;
    128	status = "disabled"; /* Conflict with dbgu. */
    129};
    130
    131&can1 {
    132	pinctrl-names = "default";
    133	pinctrl-0 = <&pinctrl_can1_rx_tx>;
    134	status = "okay";
    135};
    136
    137&classd {
    138	pinctrl-names = "default";
    139	pinctrl-0 = <&pinctrl_classd_default>;
    140	atmel,pwm-type = "diff";
    141	atmel,non-overlap-time = <10>;
    142	status = "okay";
    143};
    144
    145&dbgu {
    146	pinctrl-names = "default";
    147	pinctrl-0 = <&pinctrl_dbgu>;
    148	status = "okay"; /* Conflict with can0. */
    149};
    150
    151&ebi {
    152	pinctrl-names = "default";
    153	pinctrl-0 = <&pinctrl_ebi_addr_nand &pinctrl_ebi_data_0_7>;
    154	status = "okay";
    155
    156	nand_controller: nand-controller {
    157		pinctrl-names = "default";
    158		pinctrl-0 = <&pinctrl_nand_oe_we &pinctrl_nand_cs &pinctrl_nand_rb>;
    159		status = "okay";
    160
    161		nand@3 {
    162			reg = <0x3 0x0 0x800000>;
    163			rb-gpios = <&pioD 5 GPIO_ACTIVE_HIGH>;
    164			cs-gpios = <&pioD 4 GPIO_ACTIVE_HIGH>;
    165			nand-bus-width = <8>;
    166			nand-ecc-mode = "hw";
    167			nand-ecc-strength = <8>;
    168			nand-ecc-step-size = <512>;
    169			nand-on-flash-bbt;
    170			label = "atmel_nand";
    171
    172			partitions {
    173				compatible = "fixed-partitions";
    174				#address-cells = <1>;
    175				#size-cells = <1>;
    176
    177				at91bootstrap@0 {
    178					label = "at91bootstrap";
    179					reg = <0x0 0x40000>;
    180				};
    181
    182				uboot@40000 {
    183					label = "u-boot";
    184					reg = <0x40000 0xc0000>;
    185				};
    186
    187				ubootenvred@100000 {
    188					label = "U-Boot Env Redundant";
    189					reg = <0x100000 0x40000>;
    190				};
    191
    192				ubootenv@140000 {
    193					label = "U-Boot Env";
    194					reg = <0x140000 0x40000>;
    195				};
    196
    197				dtb@180000 {
    198					label = "device tree";
    199					reg = <0x180000 0x80000>;
    200				};
    201
    202				kernel@200000 {
    203					label = "kernel";
    204					reg = <0x200000 0x600000>;
    205				};
    206
    207				rootfs@800000 {
    208					label = "rootfs";
    209					reg = <0x800000 0x1f800000>;
    210				};
    211			};
    212		};
    213	};
    214};
    215
    216&flx0 {
    217	atmel,flexcom-mode = <ATMEL_FLEXCOM_MODE_TWI>;
    218	status = "okay";
    219
    220	i2c0: i2c@600 {
    221		compatible = "microchip,sam9x60-i2c";
    222		reg = <0x600 0x200>;
    223		interrupts = <5 IRQ_TYPE_LEVEL_HIGH 7>;
    224		#address-cells = <1>;
    225		#size-cells = <0>;
    226		clocks = <&pmc PMC_TYPE_PERIPHERAL 5>;
    227		pinctrl-names = "default";
    228		pinctrl-0 = <&pinctrl_flx0_default>;
    229		atmel,fifo-size = <16>;
    230		i2c-analog-filter;
    231		i2c-digital-filter;
    232		i2c-digital-filter-width-ns = <35>;
    233		status = "okay";
    234
    235		eeprom@53 {
    236			compatible = "atmel,24c02";
    237			reg = <0x53>;
    238			pagesize = <16>;
    239			status = "okay";
    240		};
    241	};
    242};
    243
    244&flx4 {
    245	atmel,flexcom-mode = <ATMEL_FLEXCOM_MODE_SPI>;
    246	status = "disabled";
    247
    248	spi0: spi@400 {
    249		compatible = "microchip,sam9x60-spi", "atmel,at91rm9200-spi";
    250		reg = <0x400 0x200>;
    251		interrupts = <13 IRQ_TYPE_LEVEL_HIGH 7>;
    252		clocks = <&pmc PMC_TYPE_PERIPHERAL 13>;
    253		clock-names = "spi_clk";
    254		pinctrl-names = "default";
    255		pinctrl-0 = <&pinctrl_flx4_default>;
    256		atmel,fifo-size = <16>;
    257		#address-cells = <1>;
    258		#size-cells = <0>;
    259		status = "disabled";
    260	};
    261};
    262
    263&flx5 {
    264	atmel,flexcom-mode = <ATMEL_FLEXCOM_MODE_USART>;
    265	status = "okay";
    266
    267	uart1: serial@200 {
    268		compatible = "microchip,sam9x60-usart", "atmel,at91sam9260-usart";
    269		reg = <0x200 0x200>;
    270		interrupts = <14 IRQ_TYPE_LEVEL_HIGH 7>;
    271		dmas = <&dma0
    272			(AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
    273			 AT91_XDMAC_DT_PERID(10))>,
    274		       <&dma0
    275			(AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
    276			 AT91_XDMAC_DT_PERID(11))>;
    277		dma-names = "tx", "rx";
    278		clocks = <&pmc PMC_TYPE_PERIPHERAL 14>;
    279		clock-names = "usart";
    280		pinctrl-0 = <&pinctrl_flx5_default>;
    281		pinctrl-names = "default";
    282		atmel,use-dma-rx;
    283		atmel,use-dma-tx;
    284		status = "okay";
    285	};
    286};
    287
    288&flx6 {
    289	atmel,flexcom-mode = <ATMEL_FLEXCOM_MODE_TWI>;
    290	status = "okay";
    291
    292	i2c1: i2c@600 {
    293		compatible = "microchip,sam9x60-i2c";
    294		reg = <0x600 0x200>;
    295		interrupts = <9 IRQ_TYPE_LEVEL_HIGH 7>;
    296		#address-cells = <1>;
    297		#size-cells = <0>;
    298		clocks = <&pmc PMC_TYPE_PERIPHERAL 9>;
    299		pinctrl-names = "default";
    300		pinctrl-0 = <&pinctrl_flx6_default>;
    301		atmel,fifo-size = <16>;
    302		i2c-analog-filter;
    303		i2c-digital-filter;
    304		i2c-digital-filter-width-ns = <35>;
    305		status = "okay";
    306
    307		gpio_exp: mcp23008@20 {
    308			compatible = "microchip,mcp23008";
    309			reg = <0x20>;
    310		};
    311	};
    312};
    313
    314&gpbr {
    315	status = "okay";
    316};
    317
    318&i2s {
    319	pinctrl-names = "default";
    320	pinctrl-0 = <&pinctrl_i2s_default>;
    321	#sound-dai-cells = <0>;
    322	status = "disabled"; /* Conflict with QSPI. */
    323};
    324
    325&macb0 {
    326	phy-mode = "rmii";
    327	#address-cells = <1>;
    328	#size-cells = <0>;
    329	pinctrl-names = "default";
    330	pinctrl-0 = <&pinctrl_macb0_rmii>;
    331	status = "okay";
    332
    333	ethernet-phy@0 {
    334		reg = <0x0>;
    335	};
    336};
    337
    338&pinctrl {
    339	adc {
    340		pinctrl_adc_default: adc_default {
    341			atmel,pins = <AT91_PIOB 15 AT91_PERIPH_A AT91_PINCTRL_NONE>;
    342		};
    343
    344		pinctrl_adtrg_default: adtrg_default {
    345			atmel,pins = <AT91_PIOB 18 AT91_PERIPH_B AT91_PINCTRL_PULL_UP>;
    346		};
    347	};
    348
    349	dbgu {
    350		pinctrl_dbgu: dbgu-0 {
    351			atmel,pins = <AT91_PIOA 9 AT91_PERIPH_A AT91_PINCTRL_PULL_UP
    352				      AT91_PIOA 10 AT91_PERIPH_A AT91_PINCTRL_NONE>;
    353		};
    354	};
    355
    356	i2s {
    357		pinctrl_i2s_default: i2s {
    358			atmel,pins =
    359				<AT91_PIOB 19 AT91_PERIPH_B AT91_PINCTRL_NONE		/* I2SCK */
    360				 AT91_PIOB 20 AT91_PERIPH_B AT91_PINCTRL_NONE		/* I2SWS */
    361				 AT91_PIOB 21 AT91_PERIPH_B AT91_PINCTRL_NONE		/* I2SDIN */
    362				 AT91_PIOB 22 AT91_PERIPH_B AT91_PINCTRL_NONE		/* I2SDOUT */
    363				 AT91_PIOB 23 AT91_PERIPH_B AT91_PINCTRL_NONE>;		/* I2SMCK */
    364		};
    365	};
    366
    367	qspi {
    368		pinctrl_qspi: qspi {
    369			atmel,pins =
    370				<AT91_PIOB 19 AT91_PERIPH_A AT91_PINCTRL_SLEWRATE_DIS
    371				 AT91_PIOB 20 AT91_PERIPH_A AT91_PINCTRL_SLEWRATE_DIS
    372				 AT91_PIOB 21 AT91_PERIPH_A (AT91_PINCTRL_PULL_UP | AT91_PINCTRL_SLEWRATE_DIS)
    373				 AT91_PIOB 22 AT91_PERIPH_A (AT91_PINCTRL_PULL_UP | AT91_PINCTRL_SLEWRATE_DIS)
    374				 AT91_PIOB 23 AT91_PERIPH_A (AT91_PINCTRL_PULL_UP | AT91_PINCTRL_SLEWRATE_DIS)
    375				 AT91_PIOB 24 AT91_PERIPH_A (AT91_PINCTRL_PULL_UP | AT91_PINCTRL_SLEWRATE_DIS)>;
    376		};
    377	};
    378
    379	nand {
    380		pinctrl_nand_oe_we: nand-oe-we-0 {
    381			atmel,pins =
    382				<AT91_PIOD 0 AT91_PERIPH_A (AT91_PINCTRL_NONE | AT91_PINCTRL_SLEWRATE_DIS)
    383				 AT91_PIOD 1 AT91_PERIPH_A (AT91_PINCTRL_NONE | AT91_PINCTRL_SLEWRATE_DIS)>;
    384		};
    385
    386		pinctrl_nand_rb: nand-rb-0 {
    387			atmel,pins =
    388				<AT91_PIOD 5 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>;
    389		};
    390
    391		pinctrl_nand_cs: nand-cs-0 {
    392			atmel,pins =
    393				<AT91_PIOD 4 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>;
    394		};
    395	};
    396
    397	ebi {
    398		pinctrl_ebi_data_0_7: ebi-data-lsb-0 {
    399			atmel,pins =
    400				<AT91_PIOD 6 AT91_PERIPH_A (AT91_PINCTRL_NONE | AT91_PINCTRL_SLEWRATE_DIS)
    401				 AT91_PIOD 7 AT91_PERIPH_A (AT91_PINCTRL_NONE | AT91_PINCTRL_SLEWRATE_DIS)
    402				 AT91_PIOD 8 AT91_PERIPH_A (AT91_PINCTRL_NONE | AT91_PINCTRL_SLEWRATE_DIS)
    403				 AT91_PIOD 9 AT91_PERIPH_A (AT91_PINCTRL_NONE | AT91_PINCTRL_SLEWRATE_DIS)
    404				 AT91_PIOD 10 AT91_PERIPH_A (AT91_PINCTRL_NONE | AT91_PINCTRL_SLEWRATE_DIS)
    405				 AT91_PIOD 11 AT91_PERIPH_A (AT91_PINCTRL_NONE | AT91_PINCTRL_SLEWRATE_DIS)
    406				 AT91_PIOD 12 AT91_PERIPH_A (AT91_PINCTRL_NONE | AT91_PINCTRL_SLEWRATE_DIS)
    407				 AT91_PIOD 13 AT91_PERIPH_A (AT91_PINCTRL_NONE | AT91_PINCTRL_SLEWRATE_DIS)>;
    408		};
    409
    410		pinctrl_ebi_data_0_15: ebi-data-msb-0 {
    411			atmel,pins =
    412				<AT91_PIOD 6 AT91_PERIPH_A AT91_PINCTRL_NONE
    413				 AT91_PIOD 7 AT91_PERIPH_A AT91_PINCTRL_NONE
    414				 AT91_PIOD 8 AT91_PERIPH_A AT91_PINCTRL_NONE
    415				 AT91_PIOD 9 AT91_PERIPH_A AT91_PINCTRL_NONE
    416				 AT91_PIOD 10 AT91_PERIPH_A AT91_PINCTRL_NONE
    417				 AT91_PIOD 11 AT91_PERIPH_A AT91_PINCTRL_NONE
    418				 AT91_PIOD 12 AT91_PERIPH_A AT91_PINCTRL_NONE
    419				 AT91_PIOD 13 AT91_PERIPH_A AT91_PINCTRL_NONE
    420				 AT91_PIOD 14 AT91_PERIPH_A AT91_PINCTRL_NONE
    421				 AT91_PIOD 15 AT91_PERIPH_A AT91_PINCTRL_NONE
    422				 AT91_PIOD 16 AT91_PERIPH_A AT91_PINCTRL_NONE
    423				 AT91_PIOD 17 AT91_PERIPH_A AT91_PINCTRL_NONE
    424				 AT91_PIOD 18 AT91_PERIPH_A AT91_PINCTRL_NONE
    425				 AT91_PIOD 19 AT91_PERIPH_A AT91_PINCTRL_NONE
    426				 AT91_PIOD 20 AT91_PERIPH_A AT91_PINCTRL_NONE
    427				 AT91_PIOD 21 AT91_PERIPH_A AT91_PINCTRL_NONE>;
    428		};
    429
    430		pinctrl_ebi_addr_nand: ebi-addr-0 {
    431			atmel,pins =
    432				<AT91_PIOD 2 AT91_PERIPH_A (AT91_PINCTRL_NONE | AT91_PINCTRL_SLEWRATE_DIS)
    433				 AT91_PIOD 3 AT91_PERIPH_A (AT91_PINCTRL_NONE | AT91_PINCTRL_SLEWRATE_DIS)>;
    434		};
    435	};
    436
    437	flexcom {
    438		pinctrl_flx0_default: flx0_twi {
    439			atmel,pins =
    440				<AT91_PIOA 0 AT91_PERIPH_A AT91_PINCTRL_PULL_UP
    441				 AT91_PIOA 1 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>;
    442		};
    443
    444		pinctrl_flx4_default: flx4_spi {
    445			atmel,pins =
    446				<AT91_PIOA 11 AT91_PERIPH_A AT91_PINCTRL_NONE
    447				 AT91_PIOA 12 AT91_PERIPH_A AT91_PINCTRL_NONE
    448				 AT91_PIOA 13 AT91_PERIPH_A AT91_PINCTRL_NONE
    449				 AT91_PIOA 14 AT91_PERIPH_A AT91_PINCTRL_NONE>;
    450		};
    451
    452		pinctrl_flx5_default: flx_uart {
    453			atmel,pins =
    454				<AT91_PIOA 7 AT91_PERIPH_C AT91_PINCTRL_NONE
    455				 AT91_PIOA 8 AT91_PERIPH_B AT91_PINCTRL_NONE
    456				 AT91_PIOA 21 AT91_PERIPH_B AT91_PINCTRL_NONE
    457				 AT91_PIOA 22 AT91_PERIPH_B AT91_PINCTRL_NONE>;
    458		};
    459
    460		pinctrl_flx6_default: flx6_twi {
    461			atmel,pins =
    462				<AT91_PIOA 30 AT91_PERIPH_A AT91_PINCTRL_PULL_UP
    463				 AT91_PIOA 31 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>;
    464		};
    465	};
    466
    467	classd {
    468		pinctrl_classd_default: classd {
    469			atmel,pins =
    470				<AT91_PIOA 24 AT91_PERIPH_C AT91_PINCTRL_PULL_UP
    471				 AT91_PIOA 25 AT91_PERIPH_C AT91_PINCTRL_PULL_DOWN
    472				 AT91_PIOA 26 AT91_PERIPH_C AT91_PINCTRL_PULL_UP
    473				 AT91_PIOA 27 AT91_PERIPH_C AT91_PINCTRL_PULL_DOWN>;
    474		};
    475	};
    476
    477	can0 {
    478		pinctrl_can0_rx_tx: can0_rx_tx {
    479			atmel,pins =
    480				<AT91_PIOA 9 AT91_PERIPH_B AT91_PINCTRL_NONE	/* CANRX0 */
    481				 AT91_PIOA 10 AT91_PERIPH_B AT91_PINCTRL_NONE	/* CANTX0 */
    482				 AT91_PIOD 20 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_DOWN	/* Enable CAN0 mux */
    483				 AT91_PIOD 21 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_DOWN>;	/* Enable CAN Transceivers */
    484		};
    485	};
    486
    487	can1 {
    488		pinctrl_can1_rx_tx: can1_rx_tx {
    489			atmel,pins =
    490				<AT91_PIOA 6 AT91_PERIPH_B AT91_PINCTRL_NONE	/* CANRX1 RXD1 */
    491				 AT91_PIOA 5 AT91_PERIPH_B AT91_PINCTRL_NONE	/* CANTX1 TXD1 */
    492				 AT91_PIOD 19 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_DOWN	/* Enable CAN1 mux */
    493				 AT91_PIOD 21 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_DOWN>;	/* Enable CAN Transceivers */
    494		};
    495	};
    496
    497	macb0 {
    498		pinctrl_macb0_rmii: macb0_rmii-0 {
    499			atmel,pins =
    500				<AT91_PIOB 0 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PB0 periph A */
    501				 AT91_PIOB 1 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PB1 periph A */
    502				 AT91_PIOB 2 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PB2 periph A */
    503				 AT91_PIOB 3 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PB3 periph A */
    504				 AT91_PIOB 4 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PB4 periph A */
    505				 AT91_PIOB 5 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PB5 periph A */
    506				 AT91_PIOB 6 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PB6 periph A */
    507				 AT91_PIOB 7 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PB7 periph A */
    508				 AT91_PIOB 9 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PB9 periph A */
    509				 AT91_PIOB 10 AT91_PERIPH_A AT91_PINCTRL_NONE>;	/* PB10 periph A */
    510		};
    511	};
    512
    513	pwm0 {
    514		pinctrl_pwm0_0: pwm0_0 {
    515			atmel,pins = <AT91_PIOB 11 AT91_PERIPH_B AT91_PINCTRL_NONE>;
    516		};
    517
    518		pinctrl_pwm0_1: pwm0_1 {
    519			atmel,pins = <AT91_PIOB 12 AT91_PERIPH_B AT91_PINCTRL_NONE>;
    520		};
    521
    522		pinctrl_pwm0_2: pwm0_2 {
    523			atmel,pins = <AT91_PIOB 13 AT91_PERIPH_B AT91_PINCTRL_NONE>;
    524		};
    525
    526		pinctrl_pwm0_3: pwm0_3 {
    527			atmel,pins = <AT91_PIOB 14 AT91_PERIPH_B AT91_PINCTRL_NONE>;
    528		};
    529	};
    530
    531	sdmmc0 {
    532		pinctrl_sdmmc0_default: sdmmc0 {
    533			atmel,pins =
    534				<AT91_PIOA 17 AT91_PERIPH_A (AT91_PINCTRL_DRIVE_STRENGTH_HI)				/* PA17 CK  periph A with pullup */
    535				 AT91_PIOA 16 AT91_PERIPH_A (AT91_PINCTRL_PULL_UP | AT91_PINCTRL_DRIVE_STRENGTH_HI)	/* PA16 CMD periph A with pullup */
    536				 AT91_PIOA 15 AT91_PERIPH_A (AT91_PINCTRL_PULL_UP | AT91_PINCTRL_DRIVE_STRENGTH_HI)	/* PA15 DAT0 periph A */
    537				 AT91_PIOA 18 AT91_PERIPH_A (AT91_PINCTRL_PULL_UP | AT91_PINCTRL_DRIVE_STRENGTH_HI)	/* PA18 DAT1 periph A with pullup */
    538				 AT91_PIOA 19 AT91_PERIPH_A (AT91_PINCTRL_PULL_UP | AT91_PINCTRL_DRIVE_STRENGTH_HI)	/* PA19 DAT2 periph A with pullup */
    539				 AT91_PIOA 20 AT91_PERIPH_A (AT91_PINCTRL_PULL_UP | AT91_PINCTRL_DRIVE_STRENGTH_HI)>;	/* PA20 DAT3 periph A with pullup */
    540		};
    541		pinctrl_sdmmc0_cd: sdmmc0_cd {
    542			atmel,pins =
    543				<AT91_PIOA 23 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>;
    544		};
    545	};
    546
    547	sdmmc1 {
    548		pinctrl_sdmmc1_default: sdmmc1 {
    549			atmel,pins =
    550				<AT91_PIOA 13 AT91_PERIPH_B (AT91_PINCTRL_DRIVE_STRENGTH_HI)				/* PA13 CK periph B */
    551				 AT91_PIOA 12 AT91_PERIPH_B (AT91_PINCTRL_PULL_UP | AT91_PINCTRL_DRIVE_STRENGTH_HI)	/* PA12 CMD periph B with pullup */
    552				 AT91_PIOA 11 AT91_PERIPH_B (AT91_PINCTRL_PULL_UP | AT91_PINCTRL_DRIVE_STRENGTH_HI)	/* PA11 DAT0 periph B with pullup */
    553				 AT91_PIOA  2 AT91_PERIPH_B (AT91_PINCTRL_PULL_UP | AT91_PINCTRL_DRIVE_STRENGTH_HI)	/* PA2 DAT1 periph B with pullup */
    554				 AT91_PIOA  3 AT91_PERIPH_B (AT91_PINCTRL_PULL_UP | AT91_PINCTRL_DRIVE_STRENGTH_HI)	/* PA3 DAT2 periph B with pullup */
    555				 AT91_PIOA  4 AT91_PERIPH_B (AT91_PINCTRL_PULL_UP | AT91_PINCTRL_DRIVE_STRENGTH_HI)>;	/* PA4 DAT3 periph B with pullup */
    556		};
    557	};
    558
    559	gpio_keys {
    560		pinctrl_key_gpio_default: pinctrl_key_gpio {
    561			atmel,pins = <AT91_PIOD 18 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>;
    562		};
    563	};
    564
    565	usb0 {
    566		pinctrl_usba_vbus: usba_vbus {
    567			atmel,pins = <AT91_PIOB 16 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>;
    568		};
    569	};
    570
    571	usb1 {
    572		pinctrl_usb_default: usb_default {
    573			atmel,pins = <AT91_PIOD 15 AT91_PERIPH_GPIO AT91_PINCTRL_NONE
    574				      AT91_PIOD 16 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>;
    575		};
    576	};
    577
    578	leds {
    579		pinctrl_gpio_leds: gpio_leds {
    580			atmel,pins = <AT91_PIOB 11 AT91_PERIPH_GPIO AT91_PINCTRL_NONE
    581				      AT91_PIOB 12 AT91_PERIPH_GPIO AT91_PINCTRL_NONE
    582				      AT91_PIOB 13 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>;
    583		};
    584	};
    585}; /* pinctrl */
    586
    587&pwm0 {
    588	pinctrl-names = "default";
    589	pinctrl-0 = <&pinctrl_pwm0_0 &pinctrl_pwm0_1 &pinctrl_pwm0_2 &pinctrl_pwm0_3>;
    590	status = "disabled"; /* Conflict with leds. */
    591};
    592
    593&sdmmc0 {
    594	bus-width = <4>;
    595	pinctrl-names = "default";
    596	pinctrl-0 = <&pinctrl_sdmmc0_default &pinctrl_sdmmc0_cd>;
    597	status = "okay";
    598	cd-gpios = <&pioA 23 GPIO_ACTIVE_LOW>;
    599	disable-wp;
    600};
    601
    602&sdmmc1 {
    603	bus-width = <4>;
    604	pinctrl-names = "default";
    605	pinctrl-0 = <&pinctrl_sdmmc1_default>;
    606	no-1-8-v;
    607	non-removable;
    608	status = "disabled"; /* Conflict with flx4. */
    609};
    610
    611&qspi {
    612	pinctrl-names = "default";
    613	pinctrl-0 = <&pinctrl_qspi>;
    614	status = "okay"; /* Conflict with i2s. */
    615
    616	flash@0 {
    617		#address-cells = <1>;
    618		#size-cells = <1>;
    619		compatible = "jedec,spi-nor";
    620		reg = <0>;
    621		spi-max-frequency = <80000000>;
    622		spi-tx-bus-width = <4>;
    623		spi-rx-bus-width = <4>;
    624		m25p,fast-read;
    625
    626		at91bootstrap@0 {
    627			label = "qspi: at91bootstrap";
    628			reg = <0x0 0x40000>;
    629		};
    630
    631		bootloader@40000 {
    632			label = "qspi: bootloader";
    633			reg = <0x40000 0xc0000>;
    634		};
    635
    636		bootloaderenvred@100000 {
    637			label = "qspi: bootloader env redundant";
    638			reg = <0x100000 0x40000>;
    639		};
    640
    641		bootloaderenv@140000 {
    642			label = "qspi: bootloader env";
    643			reg = <0x140000 0x40000>;
    644		};
    645
    646		dtb@180000 {
    647			label = "qspi: device tree";
    648			reg = <0x180000 0x80000>;
    649		};
    650
    651		kernel@200000 {
    652			label = "qspi: kernel";
    653			reg = <0x200000 0x600000>;
    654		};
    655	};
    656};
    657
    658&rtt {
    659	atmel,rtt-rtc-time-reg = <&gpbr 0x0>;
    660	status = "okay";
    661};
    662
    663&shutdown_controller {
    664	debounce-delay-us = <976>;
    665	status = "okay";
    666
    667	input@0 {
    668		reg = <0>;
    669	};
    670};
    671
    672&tcb0 {
    673	timer0: timer@0 {
    674		compatible = "atmel,tcb-timer";
    675		reg = <0>;
    676	};
    677
    678	timer1: timer@1 {
    679		compatible = "atmel,tcb-timer";
    680		reg = <1>;
    681	};
    682};
    683
    684&usb0 {
    685	atmel,vbus-gpio = <&pioB 16 GPIO_ACTIVE_HIGH>;
    686	pinctrl-names = "default";
    687	pinctrl-0 = <&pinctrl_usba_vbus>;
    688	status = "okay";
    689};
    690
    691&usb1 {
    692	num-ports = <3>;
    693	atmel,vbus-gpio = <0
    694			   &pioD 15 GPIO_ACTIVE_HIGH
    695			   &pioD 16 GPIO_ACTIVE_HIGH>;
    696	pinctrl-names = "default";
    697	pinctrl-0 = <&pinctrl_usb_default>;
    698	status = "okay";
    699};
    700
    701&usb2 {
    702	status = "okay";
    703};
    704
    705&watchdog {
    706	status = "okay";
    707};
    708