When running tests on sam0 platform was detected that pinctrl for ADC
were not defined for some boards. To force an error at build time
nodes should be explicity disabled. This explicity disable nodes on
devicetree that require some user configuration.
In addition, the adc feature were excluded in some boards and
samr21-xpro was correct updated.
Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
(cherry picked from commit 162f728787)
235 lines
5.4 KiB
Plaintext
235 lines
5.4 KiB
Plaintext
/*
|
|
* Copyright (c) 2019 Benjamin Valentin
|
|
* Copyright (c) 2019-2024 Gerson Fernando Budke <nandojve@gmail.com>
|
|
*
|
|
* SPDX-License-Identifier: Apache-2.0
|
|
*/
|
|
|
|
/dts-v1/;
|
|
#include <atmel/samr21.dtsi>
|
|
#include <atmel/samx2xx18.dtsi>
|
|
#include "samr21_xpro-pinctrl.dtsi"
|
|
#include <zephyr/dt-bindings/input/input-event-codes.h>
|
|
|
|
/ {
|
|
model = "SAM R21 Xplained Pro";
|
|
compatible = "samr21,xpro", "atmel,samr21g18a", "atmel,samr21";
|
|
|
|
chosen {
|
|
zephyr,console = &sercom0;
|
|
zephyr,shell-uart = &sercom0;
|
|
zephyr,sram = &sram0;
|
|
zephyr,flash = &flash0;
|
|
zephyr,ieee802154 = &ieee802154;
|
|
};
|
|
|
|
/* These aliases are provided for compatibility with samples */
|
|
aliases {
|
|
led0 = &led0;
|
|
pwm-led0 = &pwm_led0;
|
|
sw0 = &user_button;
|
|
i2c-0 = &sercom1;
|
|
};
|
|
|
|
leds {
|
|
compatible = "gpio-leds";
|
|
led0: led_0 {
|
|
gpios = <&porta 19 GPIO_ACTIVE_LOW>;
|
|
label = "Yellow LED";
|
|
};
|
|
};
|
|
|
|
pwmleds {
|
|
compatible = "pwm-leds";
|
|
pwm_led0: pwm_led_0 {
|
|
pwms = <&tcc0 3 PWM_MSEC(20)>;
|
|
};
|
|
};
|
|
|
|
buttons {
|
|
compatible = "gpio-keys";
|
|
user_button: button_0 {
|
|
gpios = <&porta 28 (GPIO_PULL_UP | GPIO_ACTIVE_LOW)>;
|
|
label = "SW0";
|
|
zephyr,code = <INPUT_KEY_0>;
|
|
};
|
|
};
|
|
|
|
ext1_header: xplained-pro-connector1 {
|
|
compatible = "atmel-xplained-pro-header";
|
|
#gpio-cells = <2>;
|
|
gpio-map-mask = <0xffffffff 0xffffffc0>;
|
|
gpio-map-pass-thru = <0 0x3f>; /* Shared */
|
|
gpio-map = <0 0 &porta 6 0>, /* ADC6 */
|
|
<1 0 &porta 7 0>, /* ADC7 */
|
|
<2 0 &porta 13 0>, /* GPIO */
|
|
<3 0 &porta 28 0>, /* GPIO */
|
|
<4 0 &porta 18 0>, /* PWM_T0_W2 */
|
|
<5 0 &porta 19 0>, /* PWM_T0_W3 */
|
|
<6 0 &porta 22 0>, /* GPIO */
|
|
<7 0 &porta 23 0>, /* GPIO */
|
|
<8 0 &porta 16 0>, /* TWD1 EXT2 */
|
|
<9 0 &porta 17 0>, /* TWCK1 EXT2 */
|
|
<10 0 &porta 5 0>, /* RXD0 */
|
|
<11 0 &porta 4 0>, /* TXD0 */
|
|
<12 0 &portb 3 0>, /* SPI5(SS) */
|
|
<13 0 &portb 22 0>, /* SPI5(MOSI) EXTx */
|
|
<14 0 &portb 2 0>, /* SPI5(MISO) EXTx */
|
|
<15 0 &portb 23 0>; /* SPI5(SCK) EXTx */
|
|
};
|
|
|
|
ext2_header: xplained-pro-connector2 {
|
|
compatible = "atmel-xplained-pro-header";
|
|
#gpio-cells = <2>;
|
|
gpio-map-mask = <0xffffffff 0xffffffc0>;
|
|
gpio-map-pass-thru = <0 0x3f>; /* Shared */
|
|
gpio-map = /*<0 0 - - 0>, - */
|
|
/*<1 0 - - 0>, - */
|
|
<2 0 &porta 15 0>, /* GPIO */
|
|
/*<3 0 - - 0>, - */
|
|
/*<4 0 - - 0>, - */
|
|
/*<5 0 - - 0>, - */
|
|
/*<6 0 - - 0>, - */
|
|
<7 0 &porta 8 0>, /* GPIO */
|
|
<8 0 &porta 16 0>, /* TWD1 EXT1 */
|
|
<9 0 &porta 17 0>, /* TWCK1 EXT1 */
|
|
/*<11 0 - - 0>, - */
|
|
/*<12 0 - - 0>, - */
|
|
<12 0 &porta 14 0>, /* GPIO */
|
|
<13 0 &portb 22 0>, /* SPI5(MOSI) EXTx */
|
|
<14 0 &portb 2 0>, /* SPI5(MISO) EXTx */
|
|
<15 0 &portb 23 0>; /* SPI5(SCK) EXTx */
|
|
};
|
|
};
|
|
|
|
&cpu0 {
|
|
clock-frequency = <48000000>;
|
|
};
|
|
|
|
&adc {
|
|
status = "okay";
|
|
pinctrl-0 = <&adc_default>;
|
|
pinctrl-names = "default";
|
|
};
|
|
|
|
&tcc0 {
|
|
status = "okay";
|
|
compatible = "atmel,sam0-tcc-pwm";
|
|
prescaler = <4>;
|
|
#pwm-cells = <2>;
|
|
|
|
pinctrl-0 = <&pwm_default>;
|
|
pinctrl-names = "default";
|
|
};
|
|
|
|
&sercom0 {
|
|
status = "okay";
|
|
compatible = "atmel,sam0-uart";
|
|
current-speed = <115200>;
|
|
rxpo = <1>;
|
|
txpo = <0>;
|
|
|
|
pinctrl-0 = <&sercom0_uart_default>;
|
|
pinctrl-names = "default";
|
|
};
|
|
|
|
&sercom1 {
|
|
status = "okay";
|
|
compatible = "atmel,sam0-i2c";
|
|
clock-frequency = <I2C_BITRATE_FAST>;
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
|
|
pinctrl-0 = <&sercom1_i2c_default>;
|
|
pinctrl-names = "default";
|
|
};
|
|
|
|
&sercom4 {
|
|
status = "okay";
|
|
compatible = "atmel,sam0-spi";
|
|
/*
|
|
* CS-PB31; MOSI-PB30; MISO-PC19; SCLK-PC18
|
|
* PAD[1]; PAD[2]; PAD[0]; PAD[3]
|
|
*/
|
|
dipo = <0>;
|
|
dopo = <1>;
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
|
|
pinctrl-0 = <&sercom4_spi_default>;
|
|
pinctrl-names = "default";
|
|
|
|
cs-gpios = <&portb 31 GPIO_ACTIVE_LOW>;
|
|
|
|
ieee802154: rf2xx@0 {
|
|
compatible = "atmel,rf2xx";
|
|
reg = <0x0>;
|
|
spi-max-frequency = <6000000>;
|
|
irq-gpios = <&portb 0 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>;
|
|
reset-gpios = <&portb 15 GPIO_ACTIVE_LOW>;
|
|
slptr-gpios = <&porta 20 GPIO_ACTIVE_HIGH>;
|
|
dig2-gpios = <&portb 17 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>;
|
|
status = "okay";
|
|
tx-pwr-min = [01 11]; /* -17.0 dBm */
|
|
tx-pwr-max = [00 04]; /* 4.0 dBm */
|
|
tx-pwr-table = [00 01 03 04 05 05 06 06
|
|
07 07 07 08 08 09 09 0a
|
|
0a 0a 0b 0b 0b 0b 0c 0c
|
|
0c 0c 0d 0d 0d 0d 0d 0d
|
|
0d 0d 0e 0e 0e 0e 0e 0e
|
|
0e 0e 0e 0e 0e 0e 0f 0f];
|
|
};
|
|
};
|
|
|
|
&sercom5 {
|
|
status = "okay";
|
|
compatible = "atmel,sam0-spi";
|
|
dipo = <0>;
|
|
dopo = <2>;
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
|
|
pinctrl-0 = <&sercom5_spi_default>;
|
|
pinctrl-names = "default";
|
|
};
|
|
|
|
zephyr_udc0: &usb0 {
|
|
status = "okay";
|
|
|
|
pinctrl-0 = <&usb_dc_default>;
|
|
pinctrl-names = "default";
|
|
};
|
|
|
|
ext1_spi: &sercom5 {
|
|
};
|
|
|
|
ext1_i2c: &sercom1 {
|
|
};
|
|
|
|
ext1_serial: &sercom0 {
|
|
};
|
|
|
|
ext2_spi: &sercom5 {
|
|
};
|
|
|
|
ext2_i2c: &sercom1 {
|
|
};
|
|
|
|
&flash0 {
|
|
partitions {
|
|
compatible = "fixed-partitions";
|
|
#address-cells = <1>;
|
|
#size-cells = <1>;
|
|
|
|
/*
|
|
* The final 16 KiB is reserved for the application.
|
|
* Storage partition will be used by FCB/LittleFS/NVS
|
|
* if enabled.
|
|
*/
|
|
storage_partition: partition@3c000 {
|
|
label = "storage";
|
|
reg = <0x0003c000 0x00004000>;
|
|
};
|
|
};
|
|
};
|