| /* |
| * Copyright (c) 2022 Kamil Serwus |
| * |
| * SPDX-License-Identifier: Apache-2.0 |
| */ |
| |
| /dts-v1/; |
| |
| #include <atmel/samc21.dtsi> |
| #include <atmel/samx2xx18.dtsi> |
| #include "atsamc21n_xpro-pinctrl.dtsi" |
| #include <zephyr/dt-bindings/input/input-event-codes.h> |
| |
| / { |
| model = "SAM C21N Xplained Pro"; |
| compatible = "atsamc21n,xpro", "atmel,samc21n18a", "atmel,samc21"; |
| |
| chosen { |
| zephyr,console = &sercom4; |
| zephyr,shell-uart = &sercom4; |
| zephyr,sram = &sram0; |
| zephyr,flash = &flash0; |
| zephyr,canbus = &can0; |
| }; |
| |
| /* 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 = <&portc 05 GPIO_ACTIVE_LOW>; |
| label = "Yellow LED"; |
| }; |
| }; |
| |
| pwmleds { |
| compatible = "pwm-leds"; |
| pwm_led0: pwm_led_0 { |
| pwms = <&tcc2 1 PWM_MSEC(20)>; |
| }; |
| }; |
| |
| buttons { |
| compatible = "gpio-keys"; |
| user_button: button_0 { |
| gpios = <&portb 19 (GPIO_PULL_UP | GPIO_ACTIVE_LOW)>; |
| label = "User Button"; |
| zephyr,code = <INPUT_KEY_0>; |
| }; |
| }; |
| |
| }; |
| |
| &cpu0 { |
| clock-frequency = <48000000>; |
| }; |
| |
| &adc0 { |
| status = "okay"; |
| pinctrl-0 = <&adc0_default>; |
| pinctrl-names = "default"; |
| }; |
| |
| &adc1 { |
| pinctrl-0 = <&adc1_default>; |
| pinctrl-names = "default"; |
| }; |
| |
| &tcc2 { |
| status = "okay"; |
| compatible = "atmel,sam0-tcc-pwm"; |
| prescaler = <256>; |
| #pwm-cells = <2>; |
| |
| pinctrl-0 = <&pwm_default>; |
| pinctrl-names = "default"; |
| }; |
| |
| &sercom0 { |
| status = "okay"; |
| compatible = "atmel,sam0-uart"; |
| current-speed = <9600>; |
| 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"; |
| }; |
| |
| &sercom2 { |
| status = "okay"; |
| compatible = "atmel,sam0-uart"; |
| current-speed = <115200>; |
| rxpo = <1>; |
| txpo = <0>; |
| |
| pinctrl-0 = <&sercom2_uart_default>; |
| pinctrl-names = "default"; |
| }; |
| |
| &sercom4 { |
| status = "okay"; |
| compatible = "atmel,sam0-uart"; |
| current-speed = <115200>; |
| rxpo = <3>; |
| txpo = <1>; |
| |
| pinctrl-0 = <&sercom4_uart_default>; |
| pinctrl-names = "default"; |
| }; |
| |
| &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"; |
| }; |
| |
| &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>; |
| }; |
| }; |
| }; |
| |
| &can0 { |
| status = "okay"; |
| |
| pinctrl-0 = <&can0_default>; |
| pinctrl-names = "default"; |
| |
| bus-speed = <125000>; |
| bus-speed-data = <1000000>; |
| |
| can-transceiver { |
| max-bitrate = <5000000>; |
| }; |
| }; |
| |
| &can1 { |
| pinctrl-0 = <&can1_default>; |
| pinctrl-names = "default"; |
| |
| bus-speed = <125000>; |
| bus-speed-data = <1000000>; |
| |
| can-transceiver { |
| max-bitrate = <5000000>; |
| }; |
| }; |