Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
46 changes: 24 additions & 22 deletions boards/arduino/mkrzero/arduino_mkr_connector.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -3,34 +3,36 @@
* SPDX-License-Identifier: Apache-2.0
*/

#include <zephyr/dt-bindings/gpio/arduino-mkr-header.h>

/ {
arduino_mkr_header: connector {
compatible = "arduino-mkr-header";
#gpio-cells = <2>;
gpio-map-mask = <0xffffffff 0xffffffc0>;
gpio-map-pass-thru = <0 0x3f>;
gpio-map = <0 0 &porta 22 0>, /* D0 */
<1 0 &porta 23 0>, /* D1 */
<2 0 &porta 10 0>, /* D2 */
<3 0 &porta 11 0>, /* D3 */
<4 0 &portb 10 0>, /* D4 */
<5 0 &portb 11 0>, /* D5 */
<6 0 &porta 20 0>, /* D6 */
<7 0 &porta 21 0>, /* D7 */
<8 0 &porta 16 0>, /* D8 / SPI-COPI */
<9 0 &porta 17 0>, /* D9 / SPI-SCK */
<10 0 &porta 19 0>, /* D10 / SPI-CIPO */
<11 0 &porta 8 0>, /* D11 / I2C-SDA */
<12 0 &porta 9 0>, /* D12 / I2C-SCL */
<13 0 &portb 23 0>, /* D13 / UART-RX */
<14 0 &portb 22 0>, /* D14 / UART-TX */
<15 0 &porta 2 0>, /* D15 / A0 */
<16 0 &portb 2 0>, /* D16 / A1 */
<17 0 &portb 3 0>, /* D17 / A2 */
<18 0 &porta 4 0>, /* D18 / A3 */
<19 0 &porta 5 0>, /* D19 / A4 */
<20 0 &porta 6 0>, /* D20 / A5 */
<21 0 &porta 7 0>; /* D21 / A6 */
gpio-map = <ARDUINO_MKR_HEADER_D0 0 &porta 22 0>, /* D0 */
<ARDUINO_MKR_HEADER_D1 0 &porta 23 0>, /* D1 */
<ARDUINO_MKR_HEADER_D2 0 &porta 10 0>, /* D2 */
<ARDUINO_MKR_HEADER_D3 0 &porta 11 0>, /* D3 */
<ARDUINO_MKR_HEADER_D4 0 &portb 10 0>, /* D4 */
<ARDUINO_MKR_HEADER_D5 0 &portb 11 0>, /* D5 */
<ARDUINO_MKR_HEADER_D6 0 &porta 20 0>, /* D6 */
<ARDUINO_MKR_HEADER_D7 0 &porta 21 0>, /* D7 */
<ARDUINO_MKR_HEADER_D8 0 &porta 16 0>, /* D8 / SPI-COPI */
<ARDUINO_MKR_HEADER_D9 0 &porta 17 0>, /* D9 / SPI-SCK */
<ARDUINO_MKR_HEADER_D10 0 &porta 19 0>, /* D10 / SPI-CIPO */
<ARDUINO_MKR_HEADER_D11 0 &porta 8 0>, /* D11 / I2C-SDA */
<ARDUINO_MKR_HEADER_D12 0 &porta 9 0>, /* D12 / I2C-SCL */
<ARDUINO_MKR_HEADER_D13 0 &portb 23 0>, /* D13 / UART-RX */
<ARDUINO_MKR_HEADER_D14 0 &portb 22 0>, /* D14 / UART-TX */
<ARDUINO_MKR_HEADER_A0 0 &porta 2 0>, /* D15 / A0 */
<ARDUINO_MKR_HEADER_A1 0 &portb 2 0>, /* D16 / A1 */
<ARDUINO_MKR_HEADER_A2 0 &portb 3 0>, /* D17 / A2 */
<ARDUINO_MKR_HEADER_A3 0 &porta 4 0>, /* D18 / A3 */
<ARDUINO_MKR_HEADER_A4 0 &porta 5 0>, /* D19 / A4 */
<ARDUINO_MKR_HEADER_A5 0 &porta 6 0>, /* D20 / A5 */
<ARDUINO_MKR_HEADER_A6 0 &porta 7 0>; /* D21 / A6 */
};
};

Expand Down
33 changes: 33 additions & 0 deletions include/zephyr/dt-bindings/gpio/arduino-mkr-header.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
/**
* Copyright (c) 2025 TOKITA Hiroshi
*
* SPDX-License-Identifier: Apache-2.0
*/

#ifndef ZEPHYR_INCLUDE_DT_BINDINGS_GPIO_ARDUINO_MKR_HEADER_H_
#define ZEPHYR_INCLUDE_DT_BINDINGS_GPIO_ARDUINO_MKR_HEADER_H_

#define ARDUINO_MKR_HEADER_D0 0
#define ARDUINO_MKR_HEADER_D1 1
#define ARDUINO_MKR_HEADER_D2 2
#define ARDUINO_MKR_HEADER_D3 3
#define ARDUINO_MKR_HEADER_D4 4
#define ARDUINO_MKR_HEADER_D5 5
#define ARDUINO_MKR_HEADER_D6 6
#define ARDUINO_MKR_HEADER_D7 7
#define ARDUINO_MKR_HEADER_D8 8
#define ARDUINO_MKR_HEADER_D9 9
#define ARDUINO_MKR_HEADER_D10 10
#define ARDUINO_MKR_HEADER_D11 11
#define ARDUINO_MKR_HEADER_D12 12
#define ARDUINO_MKR_HEADER_D13 13
#define ARDUINO_MKR_HEADER_D14 14
#define ARDUINO_MKR_HEADER_A0 15
#define ARDUINO_MKR_HEADER_A1 16
#define ARDUINO_MKR_HEADER_A2 17
#define ARDUINO_MKR_HEADER_A3 18
#define ARDUINO_MKR_HEADER_A4 19
#define ARDUINO_MKR_HEADER_A5 20
#define ARDUINO_MKR_HEADER_A6 21

#endif /* ZEPHYR_INCLUDE_DT_BINDINGS_GPIO_ARDUINO_MKR_HEADER_H_ */