/*
 * Copyright (c) 2021 Electrolance Solutions
 *
 * SPDX-License-Identifier: Apache-2.0
 */

/ {
	arduino_header: connector {
		compatible = "arduino-header-r3";
		#gpio-cells = <2>;
		gpio-map-mask = <0xffffffff 0xffffffc0>;
		gpio-map-pass-thru = <0 0x3f>;
		gpio-map = <0 0 &gpioa 3 0>,	/* A0 */
			   <1 0 &gpioc 0 0>,	/* A1 */
			   <2 0 &gpioc 3 0>,	/* A2 */
			   <3 0 &gpiob 1 0>,	/* A3 */
			   <4 0 &gpioc 2 0>,	/* A4 */
			   <5 0 &gpiof 11 0>,	/* A5 */
			   <6 0 &gpiob 7 0>,	/* D0 */
			   <7 0 &gpiob 6 0>,	/* D1 */
			   <8 0 &gpiog 14 0>,	/* D2 */
			   <9 0 &gpioe 13 0>,	/* D3 */
			   <10 0 &gpioe 14 0>,	/* D4 */
			   <11 0 &gpioe 11 0>,	/* D5 */
			   <12 0 &gpioa 8 0>,	/* D6 */
			   <13 0 &gpiog 12 0>,	/* D7 */
			   <14 0 &gpiog 9 0>,	/* D8 */
			   <15 0 &gpiod 15 0>,	/* D9 */
			   <16 0 &gpiod 14 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 */
	};
};
