summaryrefslogtreecommitdiff
path: root/app
diff options
context:
space:
mode:
authorPeter Johanson <peter@peterjohanson.com>2021-03-24 21:54:41 -0400
committerPete Johanson <peter@peterjohanson.com>2021-07-17 17:04:25 -0400
commitb2d64fe598d562af13ece92deb555af2e2498eaa (patch)
tree3faeab23351bf10338fa0960af5870578f452b1f /app
parentd7475f792fd08a4a1d8fa011526284e979ff039a (diff)
refactor(boards): Switch proton_c to newer pinmux approach.
See: https://github.com/zephyrproject-rtos/zephyr/issues/28999 PR: https://github.com/zmkfirmware/zmk/pull/736
Diffstat (limited to 'app')
-rw-r--r--app/boards/arm/proton_c/CMakeLists.txt7
-rw-r--r--app/boards/arm/proton_c/arduino_pro_micro_pins.dtsi2
-rw-r--r--app/boards/arm/proton_c/pinmux.c67
-rw-r--r--app/boards/arm/proton_c/proton_c.dts13
4 files changed, 14 insertions, 75 deletions
diff --git a/app/boards/arm/proton_c/CMakeLists.txt b/app/boards/arm/proton_c/CMakeLists.txt
deleted file mode 100644
index 940af1f..0000000
--- a/app/boards/arm/proton_c/CMakeLists.txt
+++ /dev/null
@@ -1,7 +0,0 @@
-# SPDX-License-Identifier: MIT
-
-if(CONFIG_PINMUX)
-zephyr_library()
-zephyr_library_sources(pinmux.c)
-zephyr_library_include_directories(${ZEPHYR_BASE}/drivers)
-endif()
diff --git a/app/boards/arm/proton_c/arduino_pro_micro_pins.dtsi b/app/boards/arm/proton_c/arduino_pro_micro_pins.dtsi
index 9b2a475..2c32319 100644
--- a/app/boards/arm/proton_c/arduino_pro_micro_pins.dtsi
+++ b/app/boards/arm/proton_c/arduino_pro_micro_pins.dtsi
@@ -48,5 +48,5 @@
};
pro_micro_i2c: &i2c1 {};
-pro_micro_spi: &spi1 {};
+pro_micro_spi: &spi2 {};
pro_micro_serial: &usart1 {};
diff --git a/app/boards/arm/proton_c/pinmux.c b/app/boards/arm/proton_c/pinmux.c
deleted file mode 100644
index 4e32b32..0000000
--- a/app/boards/arm/proton_c/pinmux.c
+++ /dev/null
@@ -1,67 +0,0 @@
-/*
- * Copyright (c) 2017 I-SENSE group of ICCS
- *
- * SPDX-License-Identifier: MIT
- */
-
-#include <kernel.h>
-#include <device.h>
-#include <init.h>
-#include <drivers/pinmux.h>
-#include <sys/sys_io.h>
-
-#include <pinmux/stm32/pinmux_stm32.h>
-
-/* pin assignments for STM32F3DISCOVERY board */
-static const struct pin_config pinconf[] = {
-#if DT_NODE_HAS_STATUS(DT_NODELABEL(usart1), okay) && CONFIG_SERIAL
- {STM32_PIN_PC4, STM32F3_PINMUX_FUNC_PC4_USART1_TX},
- {STM32_PIN_PC5, STM32F3_PINMUX_FUNC_PC5_USART1_RX},
-#endif
-#if DT_NODE_HAS_STATUS(DT_NODELABEL(usart2), okay) && CONFIG_SERIAL
- {STM32_PIN_PA2, STM32F3_PINMUX_FUNC_PA2_USART2_TX},
- {STM32_PIN_PA3, STM32F3_PINMUX_FUNC_PA3_USART2_RX},
-#endif
-#if DT_NODE_HAS_STATUS(DT_NODELABEL(i2c1), okay) && CONFIG_I2C
- {STM32_PIN_PB6, STM32F3_PINMUX_FUNC_PB6_I2C1_SCL},
- {STM32_PIN_PB7, STM32F3_PINMUX_FUNC_PB7_I2C1_SDA},
-#endif
-#if DT_NODE_HAS_STATUS(DT_NODELABEL(i2c2), okay) && CONFIG_I2C
- {STM32_PIN_PA9, STM32F3_PINMUX_FUNC_PA9_I2C2_SCL},
- {STM32_PIN_PA10, STM32F3_PINMUX_FUNC_PA10_I2C2_SDA},
-#endif
-#if DT_NODE_HAS_STATUS(DT_NODELABEL(spi1), okay) && CONFIG_SPI
-#ifdef CONFIG_SPI_STM32_USE_HW_SS
- {STM32_PIN_PA4, STM32F3_PINMUX_FUNC_PA4_SPI1_NSS},
-#endif /* CONFIG_SPI_STM32_USE_HW_SS */
- {STM32_PIN_PA5, STM32F3_PINMUX_FUNC_PA5_SPI1_SCK},
- {STM32_PIN_PA6, STM32F3_PINMUX_FUNC_PA6_SPI1_MISO},
- {STM32_PIN_PA7, STM32F3_PINMUX_FUNC_PA7_SPI1_MOSI},
-#endif
-#if DT_NODE_HAS_STATUS(DT_NODELABEL(spi2), okay) && CONFIG_SPI
-#ifdef CONFIG_SPI_STM32_USE_HW_SS
- {STM32_PIN_PB12, STM32F3_PINMUX_FUNC_PB12_SPI2_NSS},
-#endif /* CONFIG_SPI_STM32_USE_HW_SS */
- {STM32_PIN_PB13, STM32F3_PINMUX_FUNC_PB13_SPI2_SCK},
- {STM32_PIN_PB14, STM32F3_PINMUX_FUNC_PB14_SPI2_MISO},
- {STM32_PIN_PB15, STM32F3_PINMUX_FUNC_PB15_SPI2_MOSI},
-#endif
-#ifdef CONFIG_USB_DC_STM32
- {STM32_PIN_PA11, STM32F3_PINMUX_FUNC_PA11_USB_DM},
- {STM32_PIN_PA12, STM32F3_PINMUX_FUNC_PA12_USB_DP},
-#endif /* CONFIG_USB_DC_STM32 */
-#if DT_NODE_HAS_STATUS(DT_NODELABEL(can1), okay) && CONFIG_CAN
- {STM32_PIN_PD0, STM32F3_PINMUX_FUNC_PD0_CAN1_RX},
- {STM32_PIN_PD1, STM32F3_PINMUX_FUNC_PD1_CAN1_TX},
-#endif
-};
-
-static int pinmux_stm32_init(const struct device *port) {
- ARG_UNUSED(port);
-
- stm32_setup_pins(pinconf, ARRAY_SIZE(pinconf));
-
- return 0;
-}
-
-SYS_INIT(pinmux_stm32_init, PRE_KERNEL_1, CONFIG_PINMUX_STM32_DEVICE_INITIALIZATION_PRIORITY);
diff --git a/app/boards/arm/proton_c/proton_c.dts b/app/boards/arm/proton_c/proton_c.dts
index 2ec57ad..5a367d4 100644
--- a/app/boards/arm/proton_c/proton_c.dts
+++ b/app/boards/arm/proton_c/proton_c.dts
@@ -6,6 +6,7 @@
/dts-v1/;
#include <st/f3/stm32f303Xc.dtsi>
+#include <st/f3/stm32f303c(b-c)tx-pinctrl.dtsi>
#include "arduino_pro_micro_pins.dtsi"
/ {
@@ -26,6 +27,18 @@
};
};
+&usart1 {
+ pinctrl-0 = <&usart1_tx_pa9 &usart1_rx_pa10>;
+};
+
+&spi2 {
+ pinctrl-0 = <&spi2_sck_pb13 &spi2_miso_pb14 &spi2_mosi_pb15>;
+};
+
+&i2c1 {
+ pinctrl-0 = <&i2c1_scl_pb6 &i2c1_sda_pb7>;
+};
+
&usb {
status = "okay";
};