blob: ad7b3dff8507cfd9be9e9051387a05ca5684883d [file] [log] [blame]
/*
* Copyright (c) 2020 Google LLC.
*
* SPDX-License-Identifier: Apache-2.0
*/
/dts-v1/;
#include <atmel/samd21.dtsi>
#include "arduino_nano_33_iot-pinctrl.dtsi"
#include "arduino_nano_r3_connector.dtsi"
/ {
model = "Arduino Nano 33 IOT";
compatible = "arduino,nano-33-iot";
chosen {
zephyr,console = &sercom5;
zephyr,shell-uart = &sercom5;
zephyr,sram = &sram0;
zephyr,flash = &flash0;
zephyr,code-partition = &code_partition;
};
leds {
compatible = "gpio-leds";
led0: led_0 {
gpios = <&porta 17 0>;
label = "LED";
};
};
pwmleds {
compatible = "pwm-leds";
pwm_led0: pwm_led_0 {
pwms = <&tcc2 1 PWM_MSEC(20)>;
};
};
aliases {
led0 = &led0;
pwm-led0 = &pwm_led0;
};
};
&cpu0 {
clock-frequency = <48000000>;
};
&sercom1 {
status = "okay";
compatible = "atmel,sam0-spi";
dipo = <0>;
dopo = <1>;
#address-cells = <1>;
#size-cells = <0>;
pinctrl-0 = <&sercom1_spi_default>;
pinctrl-names = "default";
};
&sercom2 {
status = "okay";
compatible = "atmel,sam0-spi";
label = "NINA_SPI";
dipo = <1>;
dopo = <3>;
#address-cells = <1>;
#size-cells = <0>;
pinctrl-0 = <&sercom2_spi_default>;
pinctrl-names = "default";
cs-gpios = <&porta 14 GPIO_ACTIVE_LOW>;
nina_w102@0 {
compatible = "u-blox,nina";
reg = <0>;
label = "NINA_W102";
spi-max-frequency = <8000000>;
ready-gpios = <&porta 28 (GPIO_PULL_UP | GPIO_ACTIVE_LOW)>;
reset-gpios = <&porta 8 GPIO_ACTIVE_LOW>;
irq-gpios = <&porta 27 GPIO_PULL_DOWN>;
};
};
&sercom3 {
status = "okay";
compatible = "atmel,sam0-uart";
current-speed = <115200>;
rxpo = <1>;
txpo = <0>;
pinctrl-0 = <&sercom3_uart_default>;
pinctrl-names = "default";
nina_prog {
compatible = "espressif,esp-at";
label = "NINA_PROG";
reset-gpios = <&porta 8 GPIO_ACTIVE_LOW>;
};
};
&sercom4 {
status = "okay";
compatible = "atmel,sam0-i2c";
clock-frequency = <I2C_BITRATE_FAST>;
#address-cells = <1>;
#size-cells = <0>;
pinctrl-0 = <&sercom4_i2c_default>;
pinctrl-names = "default";
lsm6ds3@6a {
compatible = "st,lsm6ds3";
reg = <0x6a>;
label = "LSM6DS3";
};
atecc608a@15 {
compatible = "atmel,atecc608";
reg = <0x6a>;
label = "ATECC608A";
};
};
&sercom5 {
status = "okay";
compatible = "atmel,sam0-uart";
current-speed = <115200>;
rxpo = <3>;
txpo = <1>;
pinctrl-0 = <&sercom5_uart_default>;
pinctrl-names = "default";
};
&tcc2 {
status = "okay";
compatible = "atmel,sam0-tcc-pwm";
prescaler = <1024>;
#pwm-cells = <2>;
pinctrl-0 = <&pwm_default>;
pinctrl-names = "default";
};
&flash0 {
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
boot_partition: partition@0 {
label = "uf2";
reg = <0x00000000 0x2000>;
read-only;
};
code_partition: partition@2000 {
label = "code";
reg = <0x2000 0x3A000>;
read-only;
};
/*
* 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>;
};
};
};
zephyr_udc0: &usb0 {
status = "okay";
pinctrl-0 = <&usb_dc_default>;
pinctrl-names = "default";
};