| /* |
| * Copyright (c) 2020 STMicroelectronics |
| * |
| * SPDX-License-Identifier: Apache-2.0 |
| */ |
| |
| /dts-v1/; |
| #include <st/l4/stm32l4s5Xi.dtsi> |
| #include <st/l4/stm32l4s5vitx-pinctrl.dtsi> |
| #include "arduino_r3_connector.dtsi" |
| #include <zephyr/dt-bindings/input/input-event-codes.h> |
| |
| / { |
| model = "STMicroelectronics B-L4S5I-IOT01A discovery kit"; |
| compatible = "st,b-l4s5i-iot01a"; |
| |
| chosen { |
| zephyr,console = &usart1; |
| zephyr,shell-uart = &usart1; |
| zephyr,sram = &sram0; |
| zephyr,flash = &flash0; |
| zephyr,code-partition = &slot0_partition; |
| zephyr,flash-controller = &mx25r6435f; |
| zephyr,bt-c2h-uart = &usart1; |
| zephyr,bt-hci = &hci_spi; |
| }; |
| |
| leds { |
| compatible = "gpio-leds"; |
| green_led_1: led_1 { |
| gpios = <&gpioa 5 GPIO_ACTIVE_HIGH>; |
| label = "User LD1"; |
| }; |
| green_led_2: led_2 { |
| gpios = <&gpiob 14 GPIO_ACTIVE_HIGH>; |
| label = "User LD2"; |
| }; |
| }; |
| |
| gpio_keys { |
| compatible = "gpio-keys"; |
| user_button: button { |
| label = "User"; |
| gpios = <&gpioc 13 GPIO_ACTIVE_LOW>; |
| zephyr,code = <INPUT_KEY_0>; |
| }; |
| }; |
| |
| aliases { |
| led0 = &green_led_1; |
| sw0 = &user_button; |
| watchdog0 = &iwdg; |
| accel0 = &lsm6dsl; |
| }; |
| }; |
| |
| &clk_lsi { |
| status = "okay"; |
| }; |
| |
| &clk_hsi48 { |
| status = "okay"; |
| }; |
| |
| &clk_hsi { |
| status = "okay"; |
| }; |
| |
| &pll { |
| div-m = <4>; |
| mul-n = <40>; |
| div-q = <2>; |
| div-r = <2>; |
| clocks = <&clk_hsi>; |
| status = "okay"; |
| }; |
| |
| &rcc { |
| clocks = <&pll>; |
| clock-frequency = <DT_FREQ_M(80)>; |
| ahb-prescaler = <1>; |
| apb1-prescaler = <1>; |
| apb2-prescaler = <1>; |
| }; |
| |
| &usart1 { |
| pinctrl-0 = <&usart1_tx_pb6 &usart1_rx_pb7>; |
| pinctrl-names = "default"; |
| current-speed = <115200>; |
| status = "okay"; |
| }; |
| |
| &uart4 { |
| pinctrl-0 = <&uart4_tx_pa0 &uart4_rx_pa1>; |
| pinctrl-names = "default"; |
| current-speed = <115200>; |
| }; |
| |
| &i2c1 { |
| pinctrl-0 = <&i2c1_scl_pb8 &i2c1_sda_pb9>; |
| pinctrl-names = "default"; |
| status = "okay"; |
| clock-frequency = <I2C_BITRATE_FAST>; |
| }; |
| |
| &i2c2 { |
| pinctrl-0 = <&i2c2_scl_pb10 &i2c2_sda_pb11>; |
| pinctrl-names = "default"; |
| status = "okay"; |
| clock-frequency = <I2C_BITRATE_FAST>; |
| |
| lis3mdl-magn@1e { |
| compatible = "st,lis3mdl-magn"; |
| reg = <0x1e>; |
| }; |
| |
| hts221@5f { |
| compatible = "st,hts221"; |
| reg = <0x5f>; |
| }; |
| |
| lps22hb-press@5d { |
| compatible = "st,lps22hb-press"; |
| reg = <0x5d>; |
| }; |
| |
| lsm6dsl: lsm6dsl@6a { |
| compatible = "st,lsm6dsl"; |
| reg = <0x6a>; |
| irq-gpios = <&gpiod 11 GPIO_ACTIVE_HIGH>; |
| }; |
| |
| vl53l0x@29 { |
| compatible = "st,vl53l0x"; |
| reg = <0x29>; |
| xshut-gpios = <&gpioc 6 GPIO_ACTIVE_LOW>; |
| }; |
| }; |
| |
| &spi1 { |
| pinctrl-0 = <&spi1_sck_pa5 &spi1_miso_pa6 &spi1_mosi_pa7>; |
| pinctrl-names = "default"; |
| cs-gpios = <&gpioa 2 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>; |
| status = "okay"; |
| }; |
| |
| &spi3 { |
| pinctrl-0 = <&spi3_sck_pc10 &spi3_miso_pc11 &spi3_mosi_pc12>; |
| pinctrl-names = "default"; |
| status = "okay"; |
| |
| cs-gpios = <&gpiod 13 GPIO_ACTIVE_LOW>, |
| <&gpioe 0 GPIO_ACTIVE_LOW>; |
| |
| hci_spi: spbtle-rf@0 { |
| compatible = "st,hci-spi-v1"; |
| reg = <0>; |
| reset-gpios = <&gpioa 8 GPIO_ACTIVE_LOW>; |
| irq-gpios = <&gpioe 6 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>; |
| spi-max-frequency = <DT_FREQ_M(2)>; |
| spi-hold-cs; |
| }; |
| |
| wifi0: ism43362@1 { |
| compatible = "inventek,eswifi"; |
| spi-max-frequency = <2000000>; |
| reg = <1>; |
| resetn-gpios = <&gpioe 8 GPIO_ACTIVE_HIGH>; |
| boot0-gpios = <&gpiob 12 GPIO_ACTIVE_HIGH>; |
| wakeup-gpios = <&gpiob 13 GPIO_ACTIVE_HIGH>; |
| data-gpios = <&gpioe 1 GPIO_ACTIVE_HIGH>; |
| }; |
| }; |
| |
| &flash0 { |
| |
| partitions { |
| compatible = "fixed-partitions"; |
| #address-cells = <1>; |
| #size-cells = <1>; |
| |
| boot_partition: partition@0 { |
| label = "mcuboot"; |
| reg = <0x00000000 DT_SIZE_K(64)>; |
| read-only; |
| }; |
| |
| /* |
| * The flash starting at offset 0x10000 and ending at |
| * offset 0x1ffff is reserved for use by the application. |
| */ |
| |
| slot0_partition: partition@20000 { |
| label = "image-0"; |
| reg = <0x00020000 DT_SIZE_K(432)>; |
| }; |
| slot1_partition: partition@8c000 { |
| label = "image-1"; |
| reg = <0x0008C000 DT_SIZE_K(432)>; |
| }; |
| scratch_partition: partition@f8000 { |
| label = "image-scratch"; |
| reg = <0x000F8000 DT_SIZE_K(16)>; |
| }; |
| |
| storage_partition: partition@fc000 { |
| label = "storage"; |
| reg = <0x000fc000 DT_SIZE_K(16)>; |
| }; |
| }; |
| }; |
| |
| &timers2 { |
| status = "okay"; |
| |
| pwm2: pwm { |
| status = "okay"; |
| pinctrl-0 = <&tim2_ch1_pa15>; |
| pinctrl-names = "default"; |
| }; |
| }; |
| |
| &rtc { |
| clocks = <&rcc STM32_CLOCK_BUS_APB1 0x10000000>, |
| <&rcc STM32_SRC_LSI RTC_SEL(2)>; |
| status = "okay"; |
| }; |
| |
| zephyr_udc0: &usbotg_fs { |
| pinctrl-0 = <&usb_otg_fs_dm_pa11 &usb_otg_fs_dp_pa12 |
| &usb_otg_fs_id_pa10>; |
| pinctrl-names = "default"; |
| status = "okay"; |
| }; |
| |
| &iwdg { |
| status = "okay"; |
| }; |
| |
| &rng { |
| status = "okay"; |
| }; |
| |
| &octospi1 { |
| pinctrl-0 = <&octospim_p1_clk_pe10 &octospim_p1_ncs_pe11 |
| &octospim_p1_io0_pe12 &octospim_p1_io1_pe13 |
| &octospim_p1_io2_pe14 &octospim_p1_io3_pe15>; |
| pinctrl-names = "default"; |
| |
| dmas = <&dma1 0 40 0x480>; /* request 40 for OCTOSPI1 */ |
| dma-names = "tx_rx"; |
| |
| status = "okay"; |
| |
| mx25r6435f: ospi-nor-flash@90000000 { |
| compatible = "st,stm32-ospi-nor"; |
| reg = <0x90000000 DT_SIZE_M(8)>; /* 64 Megabits */ |
| ospi-max-frequency = <DT_FREQ_M(26)>; /* for Voltage Range 2 */ |
| spi-bus-width = <OSPI_QUAD_MODE>; |
| data-rate = <OSPI_STR_TRANSFER>; |
| writeoc="PP_1_4_4"; |
| |
| status = "okay"; |
| |
| partitions { |
| compatible = "fixed-partitions"; |
| #address-cells = <1>; |
| #size-cells = <1>; |
| |
| store_partition: partition@000 { |
| label = "store"; |
| reg = <0x00000000 DT_SIZE_M(8)>; |
| }; |
| }; |
| }; |
| }; |
| |
| &dma1 { |
| status = "okay"; |
| }; |
| |
| &dmamux1 { |
| status = "okay"; |
| }; |