/*
 * Copyright (c) 2021 Linaro Limited
 *
 * 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 &gpioa 2 0>,	/* A1 */
			   <2 0 &gpioc 3 0>,	/* A2 */
			   <3 0 &gpiob 0 0>,	/* A3 */
			   <4 0 &gpioc 1 0>,	/* A4 */
			   <5 0 &gpioc 0 0>,	/* A5 */
			   <6 0 &gpiog 8 0>,	/* D0 */
			   <7 0 &gpiog 7 0>,	/* D1 */
			   <8 0 &gpiof 15 0>,	/* D2 */
			   <9 0 &gpioe 13 0>,	/* D3 */
			   <10 0 &gpiof 14 0>,	/* D4 */
			   <11 0 &gpioe 11 0>,	/* D5 */
			   <12 0 &gpioe 9 0>,	/* D6 */
			   <13 0 &gpiof 13 0>,	/* D7 */
			   <14 0 &gpiof 12 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 */
	};
};
