diff --git a/boards/arm/nucleo_f030r8/arduino_r3_connector.dtsi b/boards/arm/nucleo_f030r8/arduino_r3_connector.dtsi new file mode 100644 index 00000000000..4fd7cf22e03 --- /dev/null +++ b/boards/arm/nucleo_f030r8/arduino_r3_connector.dtsi @@ -0,0 +1,37 @@ +/* + * Copyright (c) 2019 Linaro Limited + * + * SPDX-License-Identifier: Apache-2.0 + */ + +/ { + arduino_header: connector { + compatible = "arduino-header-r3"; + #gpio-cells = <2>; + gpio-map = <0 0 &gpioa 0 0>, /* A0 */ + <1 0 &gpioa 1 0>, /* A1 */ + <2 0 &gpioa 4 0>, /* A2 */ + <3 0 &gpiob 0 0>, /* A3 */ + <4 0 &gpioc 1 0>, /* A4 */ + <5 0 &gpioc 0 0>, /* A5 */ + <6 0 &gpioa 3 0>, /* D0 */ + <7 0 &gpioa 2 0>, /* D1 */ + <8 0 &gpioa 10 0>, /* D2 */ + <9 0 &gpiob 3 0>, /* D3 */ + <10 0 &gpiob 5 0>, /* D4 */ + <11 0 &gpiob 4 0>, /* D5 */ + <12 0 &gpiob 10 0>, /* D6 */ + <13 0 &gpioa 8 0>, /* D7 */ + <14 0 &gpioa 9 0>, /* D8 */ + <15 0 &gpioc 7 0>, /* D9 */ + <16 0 &gpiob 6 0>, /* D10 */ + <17 0 &gpioa 7 0>, /* D11 */ + <18 0 &gpioa 6 0>, /* D12 */ + <19 0 &gpioa 5 0>, /* D13 */ + <20 0 &gpiob 9 0>, /* D14 */ + <21 0 &gpiob 8 0>; /* D15 */ + }; +}; + +arduino_i2c: &i2c1 {}; +arduino_spi: &spi1 {}; diff --git a/boards/arm/nucleo_f030r8/nucleo_f030r8.dts b/boards/arm/nucleo_f030r8/nucleo_f030r8.dts index 289e0823eba..73867015273 100644 --- a/boards/arm/nucleo_f030r8/nucleo_f030r8.dts +++ b/boards/arm/nucleo_f030r8/nucleo_f030r8.dts @@ -6,6 +6,7 @@ /dts-v1/; #include +#include "arduino_r3_connector.dtsi" / { model = "STMicroelectronics STM32F030R8-NUCLEO board"; @@ -54,7 +55,7 @@ status = "okay"; }; -arduino_i2c: &i2c1 { +&i2c1 { status = "okay"; clock-frequency = ; }; @@ -64,7 +65,7 @@ arduino_i2c: &i2c1 { clock-frequency = ; }; -arduino_spi: &spi1 { +&spi1 { status = "okay"; }; diff --git a/boards/arm/nucleo_f030r8/nucleo_f030r8.yaml b/boards/arm/nucleo_f030r8/nucleo_f030r8.yaml index 5327eed0141..7f53b9e6cf3 100644 --- a/boards/arm/nucleo_f030r8/nucleo_f030r8.yaml +++ b/boards/arm/nucleo_f030r8/nucleo_f030r8.yaml @@ -9,7 +9,9 @@ toolchain: ram: 8 flash: 64 supported: + - arduino_gpio - arduino_i2c + - arduino_spi - i2c - spi - gpio diff --git a/boards/arm/nucleo_f070rb/arduino_r3_connector.dtsi b/boards/arm/nucleo_f070rb/arduino_r3_connector.dtsi new file mode 100644 index 00000000000..4fd7cf22e03 --- /dev/null +++ b/boards/arm/nucleo_f070rb/arduino_r3_connector.dtsi @@ -0,0 +1,37 @@ +/* + * Copyright (c) 2019 Linaro Limited + * + * SPDX-License-Identifier: Apache-2.0 + */ + +/ { + arduino_header: connector { + compatible = "arduino-header-r3"; + #gpio-cells = <2>; + gpio-map = <0 0 &gpioa 0 0>, /* A0 */ + <1 0 &gpioa 1 0>, /* A1 */ + <2 0 &gpioa 4 0>, /* A2 */ + <3 0 &gpiob 0 0>, /* A3 */ + <4 0 &gpioc 1 0>, /* A4 */ + <5 0 &gpioc 0 0>, /* A5 */ + <6 0 &gpioa 3 0>, /* D0 */ + <7 0 &gpioa 2 0>, /* D1 */ + <8 0 &gpioa 10 0>, /* D2 */ + <9 0 &gpiob 3 0>, /* D3 */ + <10 0 &gpiob 5 0>, /* D4 */ + <11 0 &gpiob 4 0>, /* D5 */ + <12 0 &gpiob 10 0>, /* D6 */ + <13 0 &gpioa 8 0>, /* D7 */ + <14 0 &gpioa 9 0>, /* D8 */ + <15 0 &gpioc 7 0>, /* D9 */ + <16 0 &gpiob 6 0>, /* D10 */ + <17 0 &gpioa 7 0>, /* D11 */ + <18 0 &gpioa 6 0>, /* D12 */ + <19 0 &gpioa 5 0>, /* D13 */ + <20 0 &gpiob 9 0>, /* D14 */ + <21 0 &gpiob 8 0>; /* D15 */ + }; +}; + +arduino_i2c: &i2c1 {}; +arduino_spi: &spi1 {}; diff --git a/boards/arm/nucleo_f070rb/nucleo_f070rb.dts b/boards/arm/nucleo_f070rb/nucleo_f070rb.dts index dd7cf306bdf..67b771dc2f0 100644 --- a/boards/arm/nucleo_f070rb/nucleo_f070rb.dts +++ b/boards/arm/nucleo_f070rb/nucleo_f070rb.dts @@ -6,6 +6,7 @@ /dts-v1/; #include +#include "arduino_r3_connector.dtsi" / { model = "STMicroelectronics NUCLEO-F070RB board"; @@ -54,7 +55,7 @@ status = "okay"; }; -arduino_i2c: &i2c1 { +&i2c1 { status = "okay"; clock-frequency = ; }; @@ -64,7 +65,7 @@ arduino_i2c: &i2c1 { clock-frequency = ; }; -arduino_spi: &spi1 { +&spi1 { status = "okay"; }; diff --git a/boards/arm/nucleo_f070rb/nucleo_f070rb.yaml b/boards/arm/nucleo_f070rb/nucleo_f070rb.yaml index 732aaef469e..693e102571d 100644 --- a/boards/arm/nucleo_f070rb/nucleo_f070rb.yaml +++ b/boards/arm/nucleo_f070rb/nucleo_f070rb.yaml @@ -9,7 +9,9 @@ toolchain: - gnuarmemb - xtools supported: + - arduino_gpio - arduino_i2c + - arduino_spi - gpio - i2c - spi diff --git a/boards/arm/nucleo_f091rc/arduino_r3_connector.dtsi b/boards/arm/nucleo_f091rc/arduino_r3_connector.dtsi new file mode 100644 index 00000000000..4fd7cf22e03 --- /dev/null +++ b/boards/arm/nucleo_f091rc/arduino_r3_connector.dtsi @@ -0,0 +1,37 @@ +/* + * Copyright (c) 2019 Linaro Limited + * + * SPDX-License-Identifier: Apache-2.0 + */ + +/ { + arduino_header: connector { + compatible = "arduino-header-r3"; + #gpio-cells = <2>; + gpio-map = <0 0 &gpioa 0 0>, /* A0 */ + <1 0 &gpioa 1 0>, /* A1 */ + <2 0 &gpioa 4 0>, /* A2 */ + <3 0 &gpiob 0 0>, /* A3 */ + <4 0 &gpioc 1 0>, /* A4 */ + <5 0 &gpioc 0 0>, /* A5 */ + <6 0 &gpioa 3 0>, /* D0 */ + <7 0 &gpioa 2 0>, /* D1 */ + <8 0 &gpioa 10 0>, /* D2 */ + <9 0 &gpiob 3 0>, /* D3 */ + <10 0 &gpiob 5 0>, /* D4 */ + <11 0 &gpiob 4 0>, /* D5 */ + <12 0 &gpiob 10 0>, /* D6 */ + <13 0 &gpioa 8 0>, /* D7 */ + <14 0 &gpioa 9 0>, /* D8 */ + <15 0 &gpioc 7 0>, /* D9 */ + <16 0 &gpiob 6 0>, /* D10 */ + <17 0 &gpioa 7 0>, /* D11 */ + <18 0 &gpioa 6 0>, /* D12 */ + <19 0 &gpioa 5 0>, /* D13 */ + <20 0 &gpiob 9 0>, /* D14 */ + <21 0 &gpiob 8 0>; /* D15 */ + }; +}; + +arduino_i2c: &i2c1 {}; +arduino_spi: &spi1 {}; diff --git a/boards/arm/nucleo_f091rc/nucleo_f091rc.dts b/boards/arm/nucleo_f091rc/nucleo_f091rc.dts index 74ede8e9d5d..aea5535d27e 100644 --- a/boards/arm/nucleo_f091rc/nucleo_f091rc.dts +++ b/boards/arm/nucleo_f091rc/nucleo_f091rc.dts @@ -6,6 +6,7 @@ /dts-v1/; #include +#include "arduino_r3_connector.dtsi" / { model = "STMicroelectronics STM32F091RC-NUCLEO board"; @@ -53,7 +54,7 @@ status = "okay"; }; -arduino_i2c: &i2c1 { +&i2c1 { status = "okay"; clock-frequency = ; }; @@ -63,7 +64,7 @@ arduino_i2c: &i2c1 { clock-frequency = ; }; -arduino_spi: &spi1 { +&spi1 { status = "okay"; }; diff --git a/boards/arm/nucleo_f091rc/nucleo_f091rc.yaml b/boards/arm/nucleo_f091rc/nucleo_f091rc.yaml index fc990090a41..3e767660a05 100644 --- a/boards/arm/nucleo_f091rc/nucleo_f091rc.yaml +++ b/boards/arm/nucleo_f091rc/nucleo_f091rc.yaml @@ -9,7 +9,9 @@ toolchain: ram: 32 flash: 256 supported: + - arduino_gpio - arduino_i2c + - arduino_spi - gpio - i2c - nvs diff --git a/boards/arm/nucleo_f103rb/arduino_r3_connector.dtsi b/boards/arm/nucleo_f103rb/arduino_r3_connector.dtsi new file mode 100644 index 00000000000..e4582a301a2 --- /dev/null +++ b/boards/arm/nucleo_f103rb/arduino_r3_connector.dtsi @@ -0,0 +1,36 @@ +/* + * Copyright (c) 2019 Linaro Limited + * + * SPDX-License-Identifier: Apache-2.0 + */ + +/ { + arduino_header: connector { + compatible = "arduino-header-r3"; + #gpio-cells = <2>; + gpio-map = <0 0 &gpioa 0 0>, /* A0 */ + <1 0 &gpioa 1 0>, /* A1 */ + <2 0 &gpioa 4 0>, /* A2 */ + <3 0 &gpiob 0 0>, /* A3 */ + <4 0 &gpioc 1 0>, /* A4 */ + <5 0 &gpioc 0 0>, /* A5 */ + <6 0 &gpioa 3 0>, /* D0 */ + <7 0 &gpioa 2 0>, /* D1 */ + <8 0 &gpioa 10 0>, /* D2 */ + <9 0 &gpiob 3 0>, /* D3 */ + <10 0 &gpiob 5 0>, /* D4 */ + <11 0 &gpiob 4 0>, /* D5 */ + <12 0 &gpiob 10 0>, /* D6 */ + <13 0 &gpioa 8 0>, /* D7 */ + <14 0 &gpioa 9 0>, /* D8 */ + <15 0 &gpioc 7 0>, /* D9 */ + <16 0 &gpiob 6 0>, /* D10 */ + <17 0 &gpioa 7 0>, /* D11 */ + <18 0 &gpioa 6 0>, /* D12 */ + <19 0 &gpioa 5 0>, /* D13 */ + <20 0 &gpiob 9 0>, /* D14 */ + <21 0 &gpiob 8 0>; /* D15 */ + }; +}; + +arduino_spi: &spi1 {}; diff --git a/boards/arm/nucleo_f103rb/nucleo_f103rb.dts b/boards/arm/nucleo_f103rb/nucleo_f103rb.dts index 60395d1cb8e..775197aea1b 100644 --- a/boards/arm/nucleo_f103rb/nucleo_f103rb.dts +++ b/boards/arm/nucleo_f103rb/nucleo_f103rb.dts @@ -59,7 +59,7 @@ pinctrl-names = "default"; }; -arduino_spi: &spi1 { +&spi1 { status = "okay"; }; diff --git a/boards/arm/nucleo_f103rb/nucleo_f103rb.yaml b/boards/arm/nucleo_f103rb/nucleo_f103rb.yaml index 3e8557b091f..6d40d92ab9a 100644 --- a/boards/arm/nucleo_f103rb/nucleo_f103rb.yaml +++ b/boards/arm/nucleo_f103rb/nucleo_f103rb.yaml @@ -9,6 +9,8 @@ toolchain: ram: 20 flash: 128 supported: + - arduino_gpio + - arduino_spi - gpio - spi - pwm diff --git a/boards/arm/nucleo_f302r8/arduino_r3_connector.dtsi b/boards/arm/nucleo_f302r8/arduino_r3_connector.dtsi new file mode 100644 index 00000000000..4ad50283042 --- /dev/null +++ b/boards/arm/nucleo_f302r8/arduino_r3_connector.dtsi @@ -0,0 +1,37 @@ +/* + * Copyright (c) 2019 Linaro Limited + * + * SPDX-License-Identifier: Apache-2.0 + */ + +/ { + arduino_header: connector { + compatible = "arduino-header-r3"; + #gpio-cells = <2>; + gpio-map = <0 0 &gpioa 0 0>, /* A0 */ + <1 0 &gpioa 1 0>, /* A1 */ + <2 0 &gpioa 4 0>, /* A2 */ + <3 0 &gpiob 0 0>, /* A3 */ + <4 0 &gpioc 1 0>, /* A4 */ + <5 0 &gpioc 0 0>, /* A5 */ + <6 0 &gpioa 3 0>, /* D0 */ + <7 0 &gpioa 2 0>, /* D1 */ + <8 0 &gpioa 10 0>, /* D2 */ + <9 0 &gpiob 3 0>, /* D3 */ + <10 0 &gpiob 5 0>, /* D4 */ + <11 0 &gpiob 4 0>, /* D5 */ + <12 0 &gpiob 10 0>, /* D6 */ + <13 0 &gpioa 8 0>, /* D7 */ + <14 0 &gpioa 9 0>, /* D8 */ + <15 0 &gpioc 7 0>, /* D9 */ + <16 0 &gpiob 6 0>, /* D10 */ + <17 0 &gpiob 15 0>, /* D11 */ + <18 0 &gpiob 14 0>, /* D12 */ + <19 0 &gpiob 13 0>, /* D13 */ + <20 0 &gpiob 9 0>, /* D14 */ + <21 0 &gpiob 8 0>; /* D15 */ + }; +}; + +arduino_i2c: &i2c1 {}; +arduino_spi: &spi2 {}; diff --git a/boards/arm/nucleo_f302r8/nucleo_f302r8.dts b/boards/arm/nucleo_f302r8/nucleo_f302r8.dts index 26df28c0221..d4d94a97294 100644 --- a/boards/arm/nucleo_f302r8/nucleo_f302r8.dts +++ b/boards/arm/nucleo_f302r8/nucleo_f302r8.dts @@ -6,6 +6,7 @@ /dts-v1/; #include +#include "arduino_r3_connector.dtsi" / { model = "STMicroelectronics STM32F302R8-NUCLEO board"; @@ -40,9 +41,6 @@ }; }; -arduino_i2c: &i2c1 {}; -arduino_spi: &spi2 {}; - &i2c1 { status = "okay"; clock-frequency = ; diff --git a/boards/arm/nucleo_f302r8/nucleo_f302r8.yaml b/boards/arm/nucleo_f302r8/nucleo_f302r8.yaml index 9fc24836ab0..1471f8bdf71 100644 --- a/boards/arm/nucleo_f302r8/nucleo_f302r8.yaml +++ b/boards/arm/nucleo_f302r8/nucleo_f302r8.yaml @@ -9,7 +9,9 @@ toolchain: ram: 16 flash: 64 supported: + - arduino_gpio - arduino_i2c + - arduino_spi - i2c - spi - gpio diff --git a/boards/arm/nucleo_f334r8/arduino_r3_connector.dtsi b/boards/arm/nucleo_f334r8/arduino_r3_connector.dtsi new file mode 100644 index 00000000000..4fd7cf22e03 --- /dev/null +++ b/boards/arm/nucleo_f334r8/arduino_r3_connector.dtsi @@ -0,0 +1,37 @@ +/* + * Copyright (c) 2019 Linaro Limited + * + * SPDX-License-Identifier: Apache-2.0 + */ + +/ { + arduino_header: connector { + compatible = "arduino-header-r3"; + #gpio-cells = <2>; + gpio-map = <0 0 &gpioa 0 0>, /* A0 */ + <1 0 &gpioa 1 0>, /* A1 */ + <2 0 &gpioa 4 0>, /* A2 */ + <3 0 &gpiob 0 0>, /* A3 */ + <4 0 &gpioc 1 0>, /* A4 */ + <5 0 &gpioc 0 0>, /* A5 */ + <6 0 &gpioa 3 0>, /* D0 */ + <7 0 &gpioa 2 0>, /* D1 */ + <8 0 &gpioa 10 0>, /* D2 */ + <9 0 &gpiob 3 0>, /* D3 */ + <10 0 &gpiob 5 0>, /* D4 */ + <11 0 &gpiob 4 0>, /* D5 */ + <12 0 &gpiob 10 0>, /* D6 */ + <13 0 &gpioa 8 0>, /* D7 */ + <14 0 &gpioa 9 0>, /* D8 */ + <15 0 &gpioc 7 0>, /* D9 */ + <16 0 &gpiob 6 0>, /* D10 */ + <17 0 &gpioa 7 0>, /* D11 */ + <18 0 &gpioa 6 0>, /* D12 */ + <19 0 &gpioa 5 0>, /* D13 */ + <20 0 &gpiob 9 0>, /* D14 */ + <21 0 &gpiob 8 0>; /* D15 */ + }; +}; + +arduino_i2c: &i2c1 {}; +arduino_spi: &spi1 {}; diff --git a/boards/arm/nucleo_f334r8/nucleo_f334r8.dts b/boards/arm/nucleo_f334r8/nucleo_f334r8.dts index 6ceec836220..f31a5b44fc6 100644 --- a/boards/arm/nucleo_f334r8/nucleo_f334r8.dts +++ b/boards/arm/nucleo_f334r8/nucleo_f334r8.dts @@ -6,6 +6,7 @@ /dts-v1/; #include +#include "arduino_r3_connector.dtsi" / { model = "STMicroelectronics STM32F334R8-NUCLEO board"; @@ -60,12 +61,12 @@ pinctrl-names = "default"; }; -arduino_i2c: &i2c1 { +&i2c1 { status = "okay"; clock-frequency = ; }; -arduino_spi: &spi1 { +&spi1 { status = "okay"; }; diff --git a/boards/arm/nucleo_f334r8/nucleo_f334r8.yaml b/boards/arm/nucleo_f334r8/nucleo_f334r8.yaml index 03aa651d78a..a5300a83315 100644 --- a/boards/arm/nucleo_f334r8/nucleo_f334r8.yaml +++ b/boards/arm/nucleo_f334r8/nucleo_f334r8.yaml @@ -13,7 +13,9 @@ testing: - bluetooth - net supported: + - arduino_gpio - arduino_i2c + - arduino_spi - gpio - i2c - spi diff --git a/boards/arm/nucleo_f401re/arduino_r3_connector.dtsi b/boards/arm/nucleo_f401re/arduino_r3_connector.dtsi new file mode 100644 index 00000000000..4fd7cf22e03 --- /dev/null +++ b/boards/arm/nucleo_f401re/arduino_r3_connector.dtsi @@ -0,0 +1,37 @@ +/* + * Copyright (c) 2019 Linaro Limited + * + * SPDX-License-Identifier: Apache-2.0 + */ + +/ { + arduino_header: connector { + compatible = "arduino-header-r3"; + #gpio-cells = <2>; + gpio-map = <0 0 &gpioa 0 0>, /* A0 */ + <1 0 &gpioa 1 0>, /* A1 */ + <2 0 &gpioa 4 0>, /* A2 */ + <3 0 &gpiob 0 0>, /* A3 */ + <4 0 &gpioc 1 0>, /* A4 */ + <5 0 &gpioc 0 0>, /* A5 */ + <6 0 &gpioa 3 0>, /* D0 */ + <7 0 &gpioa 2 0>, /* D1 */ + <8 0 &gpioa 10 0>, /* D2 */ + <9 0 &gpiob 3 0>, /* D3 */ + <10 0 &gpiob 5 0>, /* D4 */ + <11 0 &gpiob 4 0>, /* D5 */ + <12 0 &gpiob 10 0>, /* D6 */ + <13 0 &gpioa 8 0>, /* D7 */ + <14 0 &gpioa 9 0>, /* D8 */ + <15 0 &gpioc 7 0>, /* D9 */ + <16 0 &gpiob 6 0>, /* D10 */ + <17 0 &gpioa 7 0>, /* D11 */ + <18 0 &gpioa 6 0>, /* D12 */ + <19 0 &gpioa 5 0>, /* D13 */ + <20 0 &gpiob 9 0>, /* D14 */ + <21 0 &gpiob 8 0>; /* D15 */ + }; +}; + +arduino_i2c: &i2c1 {}; +arduino_spi: &spi1 {}; diff --git a/boards/arm/nucleo_f401re/nucleo_f401re.dts b/boards/arm/nucleo_f401re/nucleo_f401re.dts index 9885bfbe11f..c53a04ddac0 100644 --- a/boards/arm/nucleo_f401re/nucleo_f401re.dts +++ b/boards/arm/nucleo_f401re/nucleo_f401re.dts @@ -7,6 +7,7 @@ /dts-v1/; #include +#include "arduino_r3_connector.dtsi" / { model = "STMicroelectronics STM32F401RE-NUCLEO board"; @@ -40,33 +41,6 @@ led0 = &green_led_2; sw0 = &user_button; }; - - arduino_header: connector { - compatible = "arduino-header-r3"; - #gpio-cells = <2>; - gpio-map = <0 0 &gpioa 0 0>, /* A0 */ - <1 0 &gpioa 1 0>, /* A1 */ - <2 0 &gpioa 4 0>, /* A2 */ - <3 0 &gpiob 0 0>, /* A3 */ - <4 0 &gpioc 1 0>, /* A4 */ - <5 0 &gpioc 0 0>, /* A5 */ - <6 0 &gpioa 3 0>, /* D0 */ - <7 0 &gpioa 2 0>, /* D1 */ - <8 0 &gpioa 10 0>, /* D2 */ - <9 0 &gpiob 3 0>, /* D3 */ - <10 0 &gpiob 5 0>, /* D4 */ - <11 0 &gpiob 4 0>, /* D5 */ - <12 0 &gpiob 10 0>, /* D6 */ - <13 0 &gpioa 8 0>, /* D7 */ - <14 0 &gpioa 9 0>, /* D8 */ - <15 0 &gpioc 7 0>, /* D9 */ - <16 0 &gpiob 6 0>, /* D10 */ - <17 0 &gpioa 7 0>, /* D11 */ - <18 0 &gpioa 6 0>, /* D12 */ - <19 0 &gpioa 5 0>, /* D13 */ - <20 0 &gpiob 9 0>, /* D14 */ - <21 0 &gpiob 8 0>; /* D15 */ - }; }; &usart1 { @@ -83,12 +57,12 @@ status = "okay"; }; -arduino_i2c: &i2c1 { +&i2c1 { status = "okay"; clock-frequency = ; }; -arduino_spi: &spi1 { +&spi1 { status = "okay"; }; diff --git a/boards/arm/nucleo_f401re/nucleo_f401re.yaml b/boards/arm/nucleo_f401re/nucleo_f401re.yaml index a5b4c2d4ca4..0d2fe7383cd 100644 --- a/boards/arm/nucleo_f401re/nucleo_f401re.yaml +++ b/boards/arm/nucleo_f401re/nucleo_f401re.yaml @@ -9,6 +9,7 @@ toolchain: supported: - arduino_gpio - arduino_i2c + - arduino_spi - pwm - counter - gpio diff --git a/boards/arm/nucleo_f411re/arduino_r3_connector.dtsi b/boards/arm/nucleo_f411re/arduino_r3_connector.dtsi new file mode 100644 index 00000000000..4fd7cf22e03 --- /dev/null +++ b/boards/arm/nucleo_f411re/arduino_r3_connector.dtsi @@ -0,0 +1,37 @@ +/* + * Copyright (c) 2019 Linaro Limited + * + * SPDX-License-Identifier: Apache-2.0 + */ + +/ { + arduino_header: connector { + compatible = "arduino-header-r3"; + #gpio-cells = <2>; + gpio-map = <0 0 &gpioa 0 0>, /* A0 */ + <1 0 &gpioa 1 0>, /* A1 */ + <2 0 &gpioa 4 0>, /* A2 */ + <3 0 &gpiob 0 0>, /* A3 */ + <4 0 &gpioc 1 0>, /* A4 */ + <5 0 &gpioc 0 0>, /* A5 */ + <6 0 &gpioa 3 0>, /* D0 */ + <7 0 &gpioa 2 0>, /* D1 */ + <8 0 &gpioa 10 0>, /* D2 */ + <9 0 &gpiob 3 0>, /* D3 */ + <10 0 &gpiob 5 0>, /* D4 */ + <11 0 &gpiob 4 0>, /* D5 */ + <12 0 &gpiob 10 0>, /* D6 */ + <13 0 &gpioa 8 0>, /* D7 */ + <14 0 &gpioa 9 0>, /* D8 */ + <15 0 &gpioc 7 0>, /* D9 */ + <16 0 &gpiob 6 0>, /* D10 */ + <17 0 &gpioa 7 0>, /* D11 */ + <18 0 &gpioa 6 0>, /* D12 */ + <19 0 &gpioa 5 0>, /* D13 */ + <20 0 &gpiob 9 0>, /* D14 */ + <21 0 &gpiob 8 0>; /* D15 */ + }; +}; + +arduino_i2c: &i2c1 {}; +arduino_spi: &spi1 {}; diff --git a/boards/arm/nucleo_f411re/nucleo_f411re.dts b/boards/arm/nucleo_f411re/nucleo_f411re.dts index 875fc66b131..7018697e787 100644 --- a/boards/arm/nucleo_f411re/nucleo_f411re.dts +++ b/boards/arm/nucleo_f411re/nucleo_f411re.dts @@ -6,6 +6,7 @@ /dts-v1/; #include +#include "arduino_r3_connector.dtsi" / { model = "STMicroelectronics STM32F411RE-NUCLEO board"; @@ -38,33 +39,6 @@ led0 = &green_led_2; sw0 = &user_button; }; - - arduino_header: connector { - compatible = "arduino-header-r3"; - #gpio-cells = <2>; - gpio-map = <0 0 &gpioa 0 0>, /* A0 */ - <1 0 &gpioa 1 0>, /* A1 */ - <2 0 &gpioa 4 0>, /* A2 */ - <3 0 &gpiob 0 0>, /* A3 */ - <4 0 &gpioc 1 0>, /* A4 */ - <5 0 &gpioc 0 0>, /* A5 */ - <6 0 &gpioa 3 0>, /* D0 */ - <7 0 &gpioa 2 0>, /* D1 */ - <8 0 &gpioa 10 0>, /* D2 */ - <9 0 &gpiob 3 0>, /* D3 */ - <10 0 &gpiob 5 0>, /* D4 */ - <11 0 &gpiob 4 0>, /* D5 */ - <12 0 &gpiob 10 0>, /* D6 */ - <13 0 &gpioa 8 0>, /* D7 */ - <14 0 &gpioa 9 0>, /* D8 */ - <15 0 &gpioc 7 0>, /* D9 */ - <16 0 &gpiob 6 0>, /* D10 */ - <17 0 &gpioa 7 0>, /* D11 */ - <18 0 &gpioa 6 0>, /* D12 */ - <19 0 &gpioa 5 0>, /* D13 */ - <20 0 &gpiob 9 0>, /* D14 */ - <21 0 &gpiob 8 0>; /* D15 */ - }; }; &usart1 { @@ -81,7 +55,7 @@ status = "okay"; }; -arduino_i2c: &i2c1 { +&i2c1 { status = "okay"; clock-frequency = ; }; @@ -94,7 +68,7 @@ arduino_i2c: &i2c1 { clock-frequency = ; }; -arduino_spi: &spi1 { +&spi1 { status = "okay"; }; diff --git a/boards/arm/nucleo_f411re/nucleo_f411re.yaml b/boards/arm/nucleo_f411re/nucleo_f411re.yaml index 9354c1ac57e..c11e0e869ee 100644 --- a/boards/arm/nucleo_f411re/nucleo_f411re.yaml +++ b/boards/arm/nucleo_f411re/nucleo_f411re.yaml @@ -9,6 +9,7 @@ toolchain: supported: - arduino_gpio - arduino_i2c + - arduino_spi - counter - gpio - spi diff --git a/boards/arm/nucleo_f446re/arduino_r3_connector.dtsi b/boards/arm/nucleo_f446re/arduino_r3_connector.dtsi new file mode 100644 index 00000000000..4fd7cf22e03 --- /dev/null +++ b/boards/arm/nucleo_f446re/arduino_r3_connector.dtsi @@ -0,0 +1,37 @@ +/* + * Copyright (c) 2019 Linaro Limited + * + * SPDX-License-Identifier: Apache-2.0 + */ + +/ { + arduino_header: connector { + compatible = "arduino-header-r3"; + #gpio-cells = <2>; + gpio-map = <0 0 &gpioa 0 0>, /* A0 */ + <1 0 &gpioa 1 0>, /* A1 */ + <2 0 &gpioa 4 0>, /* A2 */ + <3 0 &gpiob 0 0>, /* A3 */ + <4 0 &gpioc 1 0>, /* A4 */ + <5 0 &gpioc 0 0>, /* A5 */ + <6 0 &gpioa 3 0>, /* D0 */ + <7 0 &gpioa 2 0>, /* D1 */ + <8 0 &gpioa 10 0>, /* D2 */ + <9 0 &gpiob 3 0>, /* D3 */ + <10 0 &gpiob 5 0>, /* D4 */ + <11 0 &gpiob 4 0>, /* D5 */ + <12 0 &gpiob 10 0>, /* D6 */ + <13 0 &gpioa 8 0>, /* D7 */ + <14 0 &gpioa 9 0>, /* D8 */ + <15 0 &gpioc 7 0>, /* D9 */ + <16 0 &gpiob 6 0>, /* D10 */ + <17 0 &gpioa 7 0>, /* D11 */ + <18 0 &gpioa 6 0>, /* D12 */ + <19 0 &gpioa 5 0>, /* D13 */ + <20 0 &gpiob 9 0>, /* D14 */ + <21 0 &gpiob 8 0>; /* D15 */ + }; +}; + +arduino_i2c: &i2c1 {}; +arduino_spi: &spi1 {}; diff --git a/boards/arm/nucleo_f446re/nucleo_f446re.dts b/boards/arm/nucleo_f446re/nucleo_f446re.dts index 225ac0c925d..d71a5299934 100644 --- a/boards/arm/nucleo_f446re/nucleo_f446re.dts +++ b/boards/arm/nucleo_f446re/nucleo_f446re.dts @@ -6,6 +6,7 @@ /dts-v1/; #include +#include "arduino_r3_connector.dtsi" / { model = "STMicroelectronics STM32F446RE-NUCLEO board"; @@ -54,7 +55,7 @@ status = "okay"; }; -arduino_i2c: &i2c1 { +&i2c1 { status = "okay"; clock-frequency = ; }; @@ -69,7 +70,7 @@ arduino_i2c: &i2c1 { clock-frequency = ; }; -arduino_spi: &spi1 { +&spi1 { status = "okay"; }; diff --git a/boards/arm/nucleo_f446re/nucleo_f446re.yaml b/boards/arm/nucleo_f446re/nucleo_f446re.yaml index c24a14a095a..ec97a947d0c 100644 --- a/boards/arm/nucleo_f446re/nucleo_f446re.yaml +++ b/boards/arm/nucleo_f446re/nucleo_f446re.yaml @@ -7,7 +7,9 @@ toolchain: - gnuarmemb - xtools supported: + - arduino_gpio - arduino_i2c + - arduino_spi - counter - gpio - spi diff --git a/boards/arm/nucleo_g071rb/arduino_r3_connector.dtsi b/boards/arm/nucleo_g071rb/arduino_r3_connector.dtsi new file mode 100644 index 00000000000..32df17ee874 --- /dev/null +++ b/boards/arm/nucleo_g071rb/arduino_r3_connector.dtsi @@ -0,0 +1,34 @@ +/* + * Copyright (c) 2019 Linaro Limited + * + * SPDX-License-Identifier: Apache-2.0 + */ + +/ { + arduino_header: connector { + compatible = "arduino-header-r3"; + #gpio-cells = <2>; + gpio-map = <0 0 &gpioa 0 0>, /* A0 */ + <1 0 &gpioa 1 0>, /* A1 */ + <2 0 &gpioa 4 0>, /* A2 */ + <3 0 &gpiob 1 0>, /* A3 */ + <4 0 &gpiob 11 0>, /* A4 */ + <5 0 &gpiob 12 0>, /* A5 */ + <6 0 &gpioa 3 0>, /* D0 */ + <7 0 &gpioa 2 0>, /* D1 */ + <8 0 &gpioa 10 0>, /* D2 */ + <9 0 &gpiob 3 0>, /* D3 */ + <10 0 &gpiob 5 0>, /* D4 */ + <11 0 &gpiob 4 0>, /* D5 */ + <12 0 &gpiob 14 0>, /* D6 */ + <13 0 &gpioa 8 0>, /* D7 */ + <14 0 &gpioa 9 0>, /* D8 */ + <15 0 &gpioc 7 0>, /* D9 */ + <16 0 &gpiob 0 0>, /* D10 */ + <17 0 &gpioa 7 0>, /* D11 */ + <18 0 &gpioa 6 0>, /* D12 */ + <19 0 &gpioa 5 0>, /* D13 */ + <20 0 &gpiob 9 0>, /* D14 */ + <21 0 &gpiob 8 0>; /* D15 */ + }; +}; diff --git a/boards/arm/nucleo_g071rb/nucleo_g071rb.dts b/boards/arm/nucleo_g071rb/nucleo_g071rb.dts index d9dacc8a86b..52ac666a765 100644 --- a/boards/arm/nucleo_g071rb/nucleo_g071rb.dts +++ b/boards/arm/nucleo_g071rb/nucleo_g071rb.dts @@ -7,6 +7,7 @@ /dts-v1/; #include +#include "arduino_r3_connector.dtsi" / { model = "STMicroelectronics STM32G071RB-NUCLEO board"; diff --git a/boards/arm/nucleo_g071rb/nucleo_g071rb.yaml b/boards/arm/nucleo_g071rb/nucleo_g071rb.yaml index 3c2e14a8ccf..33871f2dff1 100644 --- a/boards/arm/nucleo_g071rb/nucleo_g071rb.yaml +++ b/boards/arm/nucleo_g071rb/nucleo_g071rb.yaml @@ -9,5 +9,6 @@ toolchain: ram: 36 flash: 128 supported: + - arduino_gpio - uart - gpio diff --git a/boards/arm/nucleo_l053r8/arduino_r3_connector.dtsi b/boards/arm/nucleo_l053r8/arduino_r3_connector.dtsi new file mode 100644 index 00000000000..4fd7cf22e03 --- /dev/null +++ b/boards/arm/nucleo_l053r8/arduino_r3_connector.dtsi @@ -0,0 +1,37 @@ +/* + * Copyright (c) 2019 Linaro Limited + * + * SPDX-License-Identifier: Apache-2.0 + */ + +/ { + arduino_header: connector { + compatible = "arduino-header-r3"; + #gpio-cells = <2>; + gpio-map = <0 0 &gpioa 0 0>, /* A0 */ + <1 0 &gpioa 1 0>, /* A1 */ + <2 0 &gpioa 4 0>, /* A2 */ + <3 0 &gpiob 0 0>, /* A3 */ + <4 0 &gpioc 1 0>, /* A4 */ + <5 0 &gpioc 0 0>, /* A5 */ + <6 0 &gpioa 3 0>, /* D0 */ + <7 0 &gpioa 2 0>, /* D1 */ + <8 0 &gpioa 10 0>, /* D2 */ + <9 0 &gpiob 3 0>, /* D3 */ + <10 0 &gpiob 5 0>, /* D4 */ + <11 0 &gpiob 4 0>, /* D5 */ + <12 0 &gpiob 10 0>, /* D6 */ + <13 0 &gpioa 8 0>, /* D7 */ + <14 0 &gpioa 9 0>, /* D8 */ + <15 0 &gpioc 7 0>, /* D9 */ + <16 0 &gpiob 6 0>, /* D10 */ + <17 0 &gpioa 7 0>, /* D11 */ + <18 0 &gpioa 6 0>, /* D12 */ + <19 0 &gpioa 5 0>, /* D13 */ + <20 0 &gpiob 9 0>, /* D14 */ + <21 0 &gpiob 8 0>; /* D15 */ + }; +}; + +arduino_i2c: &i2c1 {}; +arduino_spi: &spi1 {}; diff --git a/boards/arm/nucleo_l053r8/nucleo_l053r8.dts b/boards/arm/nucleo_l053r8/nucleo_l053r8.dts index 6be9f30d561..da9973b4c83 100644 --- a/boards/arm/nucleo_l053r8/nucleo_l053r8.dts +++ b/boards/arm/nucleo_l053r8/nucleo_l053r8.dts @@ -6,6 +6,7 @@ /dts-v1/; #include +#include "arduino_r3_connector.dtsi" / { model = "STMicroelectronics STM32L053R8-NUCLEO board"; @@ -53,11 +54,11 @@ status = "okay"; }; -arduino_i2c: &i2c1 { +&i2c1 { status = "okay"; clock-frequency = ; }; -arduino_spi: &spi1 { +&spi1 { status = "okay"; }; diff --git a/boards/arm/nucleo_l053r8/nucleo_l053r8.yaml b/boards/arm/nucleo_l053r8/nucleo_l053r8.yaml index 09126d8524e..33bdd9074e1 100644 --- a/boards/arm/nucleo_l053r8/nucleo_l053r8.yaml +++ b/boards/arm/nucleo_l053r8/nucleo_l053r8.yaml @@ -7,7 +7,9 @@ toolchain: - gnuarmemb - xtools supported: + - arduino_gpio - arduino_i2c + - arduino_spi - gpio - i2c - spi diff --git a/boards/arm/nucleo_l073rz/arduino_r3_connector.dtsi b/boards/arm/nucleo_l073rz/arduino_r3_connector.dtsi new file mode 100644 index 00000000000..4fd7cf22e03 --- /dev/null +++ b/boards/arm/nucleo_l073rz/arduino_r3_connector.dtsi @@ -0,0 +1,37 @@ +/* + * Copyright (c) 2019 Linaro Limited + * + * SPDX-License-Identifier: Apache-2.0 + */ + +/ { + arduino_header: connector { + compatible = "arduino-header-r3"; + #gpio-cells = <2>; + gpio-map = <0 0 &gpioa 0 0>, /* A0 */ + <1 0 &gpioa 1 0>, /* A1 */ + <2 0 &gpioa 4 0>, /* A2 */ + <3 0 &gpiob 0 0>, /* A3 */ + <4 0 &gpioc 1 0>, /* A4 */ + <5 0 &gpioc 0 0>, /* A5 */ + <6 0 &gpioa 3 0>, /* D0 */ + <7 0 &gpioa 2 0>, /* D1 */ + <8 0 &gpioa 10 0>, /* D2 */ + <9 0 &gpiob 3 0>, /* D3 */ + <10 0 &gpiob 5 0>, /* D4 */ + <11 0 &gpiob 4 0>, /* D5 */ + <12 0 &gpiob 10 0>, /* D6 */ + <13 0 &gpioa 8 0>, /* D7 */ + <14 0 &gpioa 9 0>, /* D8 */ + <15 0 &gpioc 7 0>, /* D9 */ + <16 0 &gpiob 6 0>, /* D10 */ + <17 0 &gpioa 7 0>, /* D11 */ + <18 0 &gpioa 6 0>, /* D12 */ + <19 0 &gpioa 5 0>, /* D13 */ + <20 0 &gpiob 9 0>, /* D14 */ + <21 0 &gpiob 8 0>; /* D15 */ + }; +}; + +arduino_i2c: &i2c1 {}; +arduino_spi: &spi1 {}; diff --git a/boards/arm/nucleo_l073rz/nucleo_l073rz.dts b/boards/arm/nucleo_l073rz/nucleo_l073rz.dts index 1dd3216afa9..7a61b233b47 100644 --- a/boards/arm/nucleo_l073rz/nucleo_l073rz.dts +++ b/boards/arm/nucleo_l073rz/nucleo_l073rz.dts @@ -6,6 +6,7 @@ /dts-v1/; #include +#include "arduino_r3_connector.dtsi" / { model = "STMicroelectronics STM32L073RZ-NUCLEO board"; @@ -53,12 +54,12 @@ status = "okay"; }; -arduino_i2c: &i2c1 { +&i2c1 { status = "okay"; clock-frequency = ; }; -arduino_spi: &spi1 { +&spi1 { status = "okay"; }; diff --git a/boards/arm/nucleo_l073rz/nucleo_l073rz.yaml b/boards/arm/nucleo_l073rz/nucleo_l073rz.yaml index df2d0266093..ba7e320923f 100644 --- a/boards/arm/nucleo_l073rz/nucleo_l073rz.yaml +++ b/boards/arm/nucleo_l073rz/nucleo_l073rz.yaml @@ -9,7 +9,9 @@ toolchain: ram: 20 flash: 192 supported: + - arduino_gpio - arduino_i2c + - arduino_spi - gpio - i2c - spi diff --git a/boards/arm/nucleo_l476rg/arduino_r3_connector.dtsi b/boards/arm/nucleo_l476rg/arduino_r3_connector.dtsi new file mode 100644 index 00000000000..60e54929c4e --- /dev/null +++ b/boards/arm/nucleo_l476rg/arduino_r3_connector.dtsi @@ -0,0 +1,36 @@ +/* + * Copyright (c) 2019 Linaro Limited + * + * SPDX-License-Identifier: Apache-2.0 + */ + +/ { + arduino_header: connector { + compatible = "arduino-header-r3"; + #gpio-cells = <2>; + gpio-map = <0 0 &gpioa 0 0>, /* A0 */ + <1 0 &gpioa 1 0>, /* A1 */ + <2 0 &gpioa 4 0>, /* A2 */ + <3 0 &gpiob 0 0>, /* A3 */ + <4 0 &gpioc 1 0>, /* A4 */ + <5 0 &gpioc 0 0>, /* A5 */ + <6 0 &gpioa 3 0>, /* D0 */ + <7 0 &gpioa 2 0>, /* D1 */ + <8 0 &gpioa 10 0>, /* D2 */ + <9 0 &gpiob 3 0>, /* D3 */ + <10 0 &gpiob 5 0>, /* D4 */ + <11 0 &gpiob 4 0>, /* D5 */ + <12 0 &gpiob 10 0>, /* D6 */ + <13 0 &gpioa 8 0>, /* D7 */ + <14 0 &gpioa 9 0>, /* D8 */ + <15 0 &gpioc 7 0>, /* D9 */ + <16 0 &gpiob 6 0>, /* D10 */ + <17 0 &gpioa 7 0>, /* D11 */ + <18 0 &gpioa 6 0>, /* D12 */ + <19 0 &gpioa 5 0>, /* D13 */ + <20 0 &gpiob 9 0>, /* D14 */ + <21 0 &gpiob 8 0>; /* D15 */ + }; +}; + +arduino_i2c: &i2c1 {}; diff --git a/boards/arm/nucleo_l476rg/nucleo_l476rg.dts b/boards/arm/nucleo_l476rg/nucleo_l476rg.dts index e8fdf6d2faa..161b7bd229d 100644 --- a/boards/arm/nucleo_l476rg/nucleo_l476rg.dts +++ b/boards/arm/nucleo_l476rg/nucleo_l476rg.dts @@ -6,6 +6,7 @@ /dts-v1/; #include +#include "arduino_r3_connector.dtsi" / { model = "STMicroelectronics STM32L476RG-NUCLEO board"; @@ -54,7 +55,7 @@ status = "okay"; }; -arduino_i2c: &i2c1 { +&i2c1 { status = "okay"; clock-frequency = ; }; diff --git a/boards/arm/nucleo_l476rg/nucleo_l476rg.yaml b/boards/arm/nucleo_l476rg/nucleo_l476rg.yaml index 57c63eaaabd..676e5fcf80f 100644 --- a/boards/arm/nucleo_l476rg/nucleo_l476rg.yaml +++ b/boards/arm/nucleo_l476rg/nucleo_l476rg.yaml @@ -7,6 +7,7 @@ toolchain: - gnuarmemb - xtools supported: + - arduino_gpio - arduino_i2c - pwm - gpio