From c1bba598d6505d3d849bb25e0db7310384d9f55d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Cl=C3=A9ment=20Foucher?= <cfoucher@laas.fr>
Date: Tue, 7 Feb 2023 12:15:58 +0100
Subject: [PATCH] Reorganize zephyr folder: put dts files in their correct
 place according to Zephyr documentation. Add an overlay file for Nucleo
 G474RE because it wasn't possible to use that board any more. Removed
 unnecessary compiler option from platformio.ini.

---
 README.md                                     |   2 +
 platformio.ini                                |   1 -
 .../arm/owntech_board/owntech_board.dts       |  18 +--
 zephyr/boards/nucleo_g474re.overlay           | 134 ++++++++++++++++++
 .../owntech_board => }/dts/adc-channels.dtsi  |   0
 .../arm/owntech_board => }/dts/adc.dtsi       |   0
 .../dts/bindings/adc-inputs.yaml              |   0
 .../dts/bindings/gpio-device.yaml             |   0
 .../dts/bindings/hrtim.yaml                   |   0
 .../dts/can-standby-switch.dtsi               |   0
 .../arm/owntech_board => }/dts/gpio.dtsi      |   0
 .../arm/owntech_board => }/dts/hrtim.dtsi     |   0
 .../arm/owntech_board => }/dts/led.dtsi       |   0
 .../arm/owntech_board => }/dts/ngnd.dtsi      |   0
 .../arm/owntech_board => }/dts/pinctrl.dtsi   |   0
 15 files changed, 145 insertions(+), 10 deletions(-)
 create mode 100644 zephyr/boards/nucleo_g474re.overlay
 rename zephyr/{boards/arm/owntech_board => }/dts/adc-channels.dtsi (100%)
 rename zephyr/{boards/arm/owntech_board => }/dts/adc.dtsi (100%)
 rename zephyr/{boards/arm/owntech_board => }/dts/bindings/adc-inputs.yaml (100%)
 rename zephyr/{boards/arm/owntech_board => }/dts/bindings/gpio-device.yaml (100%)
 rename zephyr/{boards/arm/owntech_board => }/dts/bindings/hrtim.yaml (100%)
 rename zephyr/{boards/arm/owntech_board => }/dts/can-standby-switch.dtsi (100%)
 rename zephyr/{boards/arm/owntech_board => }/dts/gpio.dtsi (100%)
 rename zephyr/{boards/arm/owntech_board => }/dts/hrtim.dtsi (100%)
 rename zephyr/{boards/arm/owntech_board => }/dts/led.dtsi (100%)
 rename zephyr/{boards/arm/owntech_board => }/dts/ngnd.dtsi (100%)
 rename zephyr/{boards/arm/owntech_board => }/dts/pinctrl.dtsi (100%)

diff --git a/README.md b/README.md
index 060143b..36f3077 100644
--- a/README.md
+++ b/README.md
@@ -30,7 +30,9 @@ owntech_power_api
 |  └─ owntech.ini
 └─ zephyr
 |  └─ boards
+|  └─ dts
 |  └─ modules
+|  └─ scripts
 |  └─ [...]
 └─ LICENSE
 └─ README.md
diff --git a/platformio.ini b/platformio.ini
index 057ab85..37f1f44 100644
--- a/platformio.ini
+++ b/platformio.ini
@@ -27,7 +27,6 @@ monitor_speed = 115200
 build_flags =
     -std=gnu++17
     -fsingle-precision-constant
-    -Wl,-Map,memory.map
 
 #### BOARD-SPECIFIC DEFINITIONS ###############################################
 
diff --git a/zephyr/boards/arm/owntech_board/owntech_board.dts b/zephyr/boards/arm/owntech_board/owntech_board.dts
index 8f66afb..bbe068a 100644
--- a/zephyr/boards/arm/owntech_board/owntech_board.dts
+++ b/zephyr/boards/arm/owntech_board/owntech_board.dts
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2022 OwnTech.
+ * Copyright (c) 2022-2023 OwnTech.
  *
  * SPDX-License-Identifier: LGLPV2.1
  */
@@ -11,14 +11,14 @@
 #include <st/g4/stm32g474r(b-c-e)tx-pinctrl.dtsi>
 
 // Board-related definitions
-#include "dts/pinctrl.dtsi"
-#include "dts/led.dtsi"
-#include "dts/hrtim.dtsi"
-#include "dts/adc.dtsi"
-#include "dts/adc-channels.dtsi"
-#include "dts/ngnd.dtsi"
-#include "dts/can-standby-switch.dtsi"
-#include "dts/gpio.dtsi"
+#include "pinctrl.dtsi"
+#include "led.dtsi"
+#include "hrtim.dtsi"
+#include "adc.dtsi"
+#include "adc-channels.dtsi"
+#include "ngnd.dtsi"
+#include "can-standby-switch.dtsi"
+#include "gpio.dtsi"
 
 
 / {
diff --git a/zephyr/boards/nucleo_g474re.overlay b/zephyr/boards/nucleo_g474re.overlay
new file mode 100644
index 0000000..655d3a6
--- /dev/null
+++ b/zephyr/boards/nucleo_g474re.overlay
@@ -0,0 +1,134 @@
+/*
+ * Copyright (c) 2022 OwnTech.
+ *
+ * SPDX-License-Identifier: LGLPV2.1
+ */
+
+
+
+// Board-related definitions
+#include "pinctrl.dtsi"
+#include "led.dtsi"
+#include "hrtim.dtsi"
+#include "adc.dtsi"
+#include "adc-channels.dtsi"
+#include "ngnd.dtsi"
+#include "can-standby-switch.dtsi"
+#include "gpio.dtsi"
+
+
+/*****************/
+/* Communication */
+/*****************/
+
+// UART
+
+&usart1 {
+	pinctrl-0 = <&usart1_tx_pb6 &usart1_rx_pb7>;
+	current-speed = <115200>;
+	status = "okay";
+};
+
+&lpuart1 {
+	pinctrl-0 = <&lpuart1_tx_pa2 &lpuart1_rx_pa3>;
+	current-speed = <115200>;
+	status = "okay";
+};
+
+// SPI
+
+&spi3 {
+	pinctrl-0 = <&spi3_nss_pa4 &spi3_sck_pc10 &spi3_miso_pb4 &spi3_mosi_pb5>;
+	status = "okay";
+};
+
+// CAN
+
+&can1 {
+	pinctrl-0 = <&fdcan1_rx_pb8 &fdcan1_tx_pb9>;
+	bus-speed = <500000>;
+	sjw = <1>;
+	sample-point = <875>;
+	bus-speed-data = <500000>;
+	sjw-data = <1>;
+	sample-point-data = <875>;
+	status = "okay";
+};
+
+/*********/
+/* Timer */
+/*********/
+
+&timers4 {
+	pinctrl-names = "incremental_encoder";
+	pinctrl-0 = <&tim4_etr_pb3 &tim4_ch1_pb6 &tim4_ch2_pb7 >;
+	status = "okay";
+};
+
+&timers6 {
+	status = "okay";
+};
+
+&timers7 {
+	status = "okay";
+};
+
+/*******/
+/* DMA */
+/*******/
+
+&dma1 {
+	status = "okay";
+};
+
+&dmamux1 {
+	status = "okay";
+};
+
+/*******/
+/* ADC */
+/*******/
+
+&adc1 {
+	pinctrl-0 = <&adc1_in6_pc0 &adc1_in7_pc1 &adc1_in8_pc2 &adc1_in9_pc3>;
+	status = "okay";
+};
+
+&adc2 {
+	pinctrl-0 = <&adc2_in1_pa0 &adc2_in2_pa1 &adc2_in3_pa6 &adc2_in5_pc4>;
+	status = "okay";
+};
+
+&adc3 {
+	pinctrl-0 = <&adc3_in1_pb1 >;
+	status = "okay";
+};
+
+&adc4 {
+	pinctrl-0 = <&adc4_in5_pb15 >;
+	status = "okay";
+};
+
+/*******/
+/* DAC */
+/*******/
+
+&dac1 {
+	status = "okay";
+};
+
+&dac2 {
+	status = "okay";
+};
+
+&dac3 {
+	status = "okay";
+};
+
+/********/
+/* NGND */
+/********/
+
+&ngnd {
+	status = "okay";
+};
diff --git a/zephyr/boards/arm/owntech_board/dts/adc-channels.dtsi b/zephyr/dts/adc-channels.dtsi
similarity index 100%
rename from zephyr/boards/arm/owntech_board/dts/adc-channels.dtsi
rename to zephyr/dts/adc-channels.dtsi
diff --git a/zephyr/boards/arm/owntech_board/dts/adc.dtsi b/zephyr/dts/adc.dtsi
similarity index 100%
rename from zephyr/boards/arm/owntech_board/dts/adc.dtsi
rename to zephyr/dts/adc.dtsi
diff --git a/zephyr/boards/arm/owntech_board/dts/bindings/adc-inputs.yaml b/zephyr/dts/bindings/adc-inputs.yaml
similarity index 100%
rename from zephyr/boards/arm/owntech_board/dts/bindings/adc-inputs.yaml
rename to zephyr/dts/bindings/adc-inputs.yaml
diff --git a/zephyr/boards/arm/owntech_board/dts/bindings/gpio-device.yaml b/zephyr/dts/bindings/gpio-device.yaml
similarity index 100%
rename from zephyr/boards/arm/owntech_board/dts/bindings/gpio-device.yaml
rename to zephyr/dts/bindings/gpio-device.yaml
diff --git a/zephyr/boards/arm/owntech_board/dts/bindings/hrtim.yaml b/zephyr/dts/bindings/hrtim.yaml
similarity index 100%
rename from zephyr/boards/arm/owntech_board/dts/bindings/hrtim.yaml
rename to zephyr/dts/bindings/hrtim.yaml
diff --git a/zephyr/boards/arm/owntech_board/dts/can-standby-switch.dtsi b/zephyr/dts/can-standby-switch.dtsi
similarity index 100%
rename from zephyr/boards/arm/owntech_board/dts/can-standby-switch.dtsi
rename to zephyr/dts/can-standby-switch.dtsi
diff --git a/zephyr/boards/arm/owntech_board/dts/gpio.dtsi b/zephyr/dts/gpio.dtsi
similarity index 100%
rename from zephyr/boards/arm/owntech_board/dts/gpio.dtsi
rename to zephyr/dts/gpio.dtsi
diff --git a/zephyr/boards/arm/owntech_board/dts/hrtim.dtsi b/zephyr/dts/hrtim.dtsi
similarity index 100%
rename from zephyr/boards/arm/owntech_board/dts/hrtim.dtsi
rename to zephyr/dts/hrtim.dtsi
diff --git a/zephyr/boards/arm/owntech_board/dts/led.dtsi b/zephyr/dts/led.dtsi
similarity index 100%
rename from zephyr/boards/arm/owntech_board/dts/led.dtsi
rename to zephyr/dts/led.dtsi
diff --git a/zephyr/boards/arm/owntech_board/dts/ngnd.dtsi b/zephyr/dts/ngnd.dtsi
similarity index 100%
rename from zephyr/boards/arm/owntech_board/dts/ngnd.dtsi
rename to zephyr/dts/ngnd.dtsi
diff --git a/zephyr/boards/arm/owntech_board/dts/pinctrl.dtsi b/zephyr/dts/pinctrl.dtsi
similarity index 100%
rename from zephyr/boards/arm/owntech_board/dts/pinctrl.dtsi
rename to zephyr/dts/pinctrl.dtsi
-- 
GitLab