192 lines
4.1 KiB
Plaintext
192 lines
4.1 KiB
Plaintext
/*
|
|
* Copyright (c) 2020/2021 Dean Weiten <dmw@weiten.com>
|
|
*
|
|
* SPDX-License-Identifier: Apache-2.0
|
|
*/
|
|
|
|
/*
|
|
* Note: SPI2 and several GPIOs are not available in the S76S - these are connected
|
|
* to the in-package Semtech SX1276 LoRa transceiver. See the documentation for details.
|
|
*/
|
|
|
|
/dts-v1/;
|
|
#include <acsip/s76s.dtsi>
|
|
#include <zephyr/dt-bindings/input/input-event-codes.h>
|
|
|
|
/ {
|
|
model = "Ronoth LoDev";
|
|
compatible = "ronoth,lodev";
|
|
|
|
chosen {
|
|
zephyr,console = &usart1;
|
|
zephyr,shell-uart = &usart1;
|
|
zephyr,sram = &sram0;
|
|
zephyr,flash = &flash0;
|
|
};
|
|
|
|
/*
|
|
* On Ronoth LoDev and perhaps other boards,
|
|
* Red LED on PA5.
|
|
*/
|
|
leds {
|
|
compatible = "gpio-leds";
|
|
red_led_0: led_0 {
|
|
gpios = <&gpioa 5 GPIO_ACTIVE_HIGH>;
|
|
label = "User LD2";
|
|
};
|
|
};
|
|
|
|
/* Arbitrarily use PC9 as a button input. */
|
|
gpio_keys {
|
|
compatible = "gpio-keys";
|
|
user_button: button {
|
|
label = "User";
|
|
gpios = <&gpioc 9 GPIO_ACTIVE_LOW>;
|
|
zephyr,code = <INPUT_KEY_0>;
|
|
};
|
|
};
|
|
|
|
cn6_header: lodev_connector_1 {
|
|
compatible = "lodev_cn6";
|
|
#gpio-cells = <2>;
|
|
gpio-map-mask = <0xffffffff 0xffffffc0>;
|
|
gpio-map-pass-thru = <0 0x3f>;
|
|
gpio-map = /* <0 0 - - 0>, 3.3V */
|
|
/* <1 0 - - 0>, GND */
|
|
<2 0 &gpioc 1 0>, /* PC1 */
|
|
<3 0 &gpioc 0 0>, /* PC0 */
|
|
<4 0 &gpiob 8 0>, /* PB8 */
|
|
/* <5 0 - - 0>, BOOT0 */
|
|
<6 0 &gpiob 7 0>, /* PB7 */
|
|
<7 0 &gpiob 6 0>, /* PB6 */
|
|
<8 0 &gpiob 5 0>, /* PB5 */
|
|
<9 0 &gpiod 2 0>, /* PD2 */
|
|
<10 0 &gpioc 12 0>, /* PC12 */
|
|
<11 0 &gpioc 11 0>, /* PC11 */
|
|
<12 0 &gpioc 10 0>, /* PC10 */
|
|
<13 0 &gpioa 14 0>, /* PA14 / SWCLK */
|
|
<14 0 &gpioa 13 0>, /* PA13 / SWDIO */
|
|
<15 0 &gpioa 12 0>, /* PA12 */
|
|
<16 0 &gpioa 11 0>, /* PA11 */
|
|
<17 0 &gpioa 9 0>, /* PA9 (UART1 Rx connected to USB) */
|
|
<18 0 &gpioa 10 0>, /* PA10 (UART1 Tx connected to USB) */
|
|
<19 0 &gpioa 8 0>; /* PA8 */
|
|
};
|
|
|
|
cn7_header: lodev_connector_2 {
|
|
compatible = "lodev_cn7";
|
|
#gpio-cells = <2>;
|
|
gpio-map-mask = <0xffffffff 0xffffffc0>;
|
|
gpio-map-pass-thru = <0 0x3f>;
|
|
gpio-map = <0 0 &gpioc 2 0>, /* PC2 */
|
|
<1 0 &gpioc 3 0>, /* PC3 */
|
|
/* <2 0 - - 0>, nRESET */
|
|
<3 0 &gpioa 0 0>, /* PA0 */
|
|
<4 0 &gpioa 2 0>, /* PA2 */
|
|
<4 0 &gpioa 3 0>, /* PA3 */
|
|
<6 0 &gpioa 4 0>, /* PA4 */
|
|
<7 0 &gpioa 5 0>, /* PA5 - connected to red LED1 */
|
|
<8 0 &gpioa 6 0>, /* PA6 */
|
|
<9 0 &gpioa 7 0>, /* PA7 */
|
|
<10 0 &gpioc 4 0>, /* PC4 */
|
|
<11 0 &gpioc 5 0>, /* PC5 */
|
|
<12 0 &gpiob 0 0>, /* PB0 */
|
|
<13 0 &gpiob 1 0>, /* PB1 */
|
|
<14 0 &gpioc 6 0>, /* PC6 */
|
|
<15 0 &gpioc 7 0>, /* PC7 */
|
|
<16 0 &gpioc 8 0>, /* PC8 */
|
|
<17 0 &gpioc 9 0>, /* PC9 */
|
|
/* <18 0 - - 0>, GND */
|
|
<19 0 &gpioa 1 0>; /* PA1 (also used in S76S as "RF FEM CPS" */
|
|
};
|
|
|
|
aliases {
|
|
led0 = &red_led_0;
|
|
sw0 = &user_button;
|
|
eeprom-0 = &eeprom;
|
|
lora0 = &lora;
|
|
watchdog0 = &iwdg;
|
|
};
|
|
};
|
|
|
|
&clk_lsi {
|
|
status = "okay";
|
|
};
|
|
|
|
&clk_hsi48 {
|
|
status = "okay";
|
|
};
|
|
|
|
&clk_hsi {
|
|
status = "okay";
|
|
};
|
|
|
|
&rcc {
|
|
clocks = <&clk_hsi>;
|
|
clock-frequency = <DT_FREQ_M(16)>;
|
|
ahb-prescaler = <1>;
|
|
apb1-prescaler = <1>;
|
|
apb2-prescaler = <1>;
|
|
};
|
|
|
|
&usart1 {
|
|
pinctrl-0 = <&usart1_tx_pa9 &usart1_rx_pa10>;
|
|
pinctrl-names = "default";
|
|
current-speed = <115200>;
|
|
status = "okay";
|
|
};
|
|
|
|
&usart2 {
|
|
pinctrl-0 = <&usart2_tx_pa2 &usart2_rx_pa3>;
|
|
pinctrl-names = "default";
|
|
current-speed = <115200>;
|
|
status = "okay";
|
|
};
|
|
|
|
&i2c1 {
|
|
pinctrl-0 = <&i2c1_scl_pb6 &i2c1_sda_pb7>;
|
|
pinctrl-names = "default";
|
|
clock-frequency = <I2C_BITRATE_FAST>;
|
|
status = "okay";
|
|
};
|
|
|
|
&spi1 {
|
|
pinctrl-0 = <&spi1_nss_pa4 &spi1_sck_pa5 &spi1_miso_pa6 &spi1_mosi_pa7>;
|
|
pinctrl-names = "default";
|
|
status = "okay";
|
|
};
|
|
|
|
&iwdg {
|
|
status = "okay";
|
|
};
|
|
|
|
&adc1 {
|
|
pinctrl-0 = <&adc_in0_pa0>;
|
|
pinctrl-names = "default";
|
|
st,adc-clock-source = <SYNC>;
|
|
st,adc-prescaler = <4>;
|
|
status = "okay";
|
|
};
|
|
|
|
&dac1 {
|
|
status = "okay";
|
|
pinctrl-0 = <&dac_out1_pa4>;
|
|
pinctrl-names = "default";
|
|
};
|
|
|
|
&rtc {
|
|
clocks = <&rcc STM32_CLOCK_BUS_APB1 0x10000000>,
|
|
<&rcc STM32_SRC_LSI RTC_SEL(2)>;
|
|
status = "okay";
|
|
};
|
|
|
|
&rng {
|
|
clocks = <&rcc STM32_CLOCK_BUS_AHB1 0x00100000>,
|
|
<&rcc STM32_SRC_HSI48 HSI48_SEL(1)>;
|
|
status = "okay";
|
|
};
|
|
|
|
&eeprom {
|
|
status = "okay";
|
|
};
|