Linux Audio

Check our new training course

Embedded Linux Audio

Check our new training course
with Creative Commons CC-BY-SA
lecture materials

Bootlin logo

Elixir Cross Referencer

Loading...
/*
 * Copyright (c) 2020 Google LLC.
 *
 * SPDX-License-Identifier: Apache-2.0
 */

/dts-v1/;
#include <atmel/samd21.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>;
		};
	};

	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>;
};

&sercom2 {
	status = "okay";
	compatible = "atmel,sam0-spi";
	label = "NINA_SPI";
	dipo = <1>;
	dopo = <3>;
	#address-cells = <1>;
	#size-cells = <0>;

	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 = <&pa23c_sercom3_pad1 &pa22c_sercom3_pad0>;

	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>;

	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 = <&pb23d_sercom5_pad3 &pb22d_sercom5_pad2>;
};

&tcc2 {
	status = "okay";
	compatible = "atmel,sam0-tcc-pwm";
	prescaler = <1024>;
	#pwm-cells = <1>;
};

&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";
};