/*
 * Copyright (c) 2020 Gerson Fernando Budke <nandojve@gmail.com>
 *
 * SPDX-License-Identifier: Apache-2.0
 */

#include "pinctrl_atmel_sam.h"

/ {
	soc {
		pinctrl@400e1000 {
			/* instance, signal, pio, pin, peripheral */
			DT_ATMEL_GPIO(spi, miso, a, 3, b);
			DT_ATMEL_GPIO(spi, miso, a, 21, a);
			DT_ATMEL_GPIO(spi, miso, a, 27, a);
			DT_ATMEL_GPIO(spi, miso, b, 14, b);
			DT_ATMEL_GPIO(spi, miso, c, 4, a);
			DT_ATMEL_GPIO(spi, miso, c, 28, b);
			DT_ATMEL_GPIO(spi, mosi, a, 22, a);
			DT_ATMEL_GPIO(spi, mosi, a, 28, a);
			DT_ATMEL_GPIO(spi, mosi, b, 15, b);
			DT_ATMEL_GPIO(spi, mosi, c, 5, a);
			DT_ATMEL_GPIO(spi, mosi, c, 29, b);
			DT_ATMEL_GPIO(spi, npcs0, a, 2, b);
			DT_ATMEL_GPIO(spi, npcs0, a, 24, a);
			DT_ATMEL_GPIO(spi, npcs0, a, 30, a);
			DT_ATMEL_GPIO(spi, npcs0, c, 3, a);
			DT_ATMEL_GPIO(spi, npcs0, c, 31, b);
			DT_ATMEL_GPIO(spi, npcs1, c, 13, c);
			DT_ATMEL_GPIO(spi, npcs1, a, 31, a);
			DT_ATMEL_GPIO(spi, npcs1, b, 13, b);
			DT_ATMEL_GPIO(spi, npcs1, c, 2, a);
			DT_ATMEL_GPIO(spi, npcs2, a, 14, c);
			DT_ATMEL_GPIO(spi, npcs2, b, 11, b);
			DT_ATMEL_GPIO(spi, npcs2, c, 0, a);
			DT_ATMEL_GPIO(spi, npcs3, a, 15, c);
			DT_ATMEL_GPIO(spi, npcs3, b, 12, b);
			DT_ATMEL_GPIO(spi, npcs3, c, 1, a);
			DT_ATMEL_GPIO(spi, sck, a, 23, a);
			DT_ATMEL_GPIO(spi, sck, a, 29, a);
			DT_ATMEL_GPIO(spi, sck, c, 6, a);
			DT_ATMEL_GPIO(spi, sck, c, 30, b);
			DT_ATMEL_GPIO(usart0, cts0, a, 9, a);
			DT_ATMEL_GPIO(usart0, cts0, b, 11, a);
			DT_ATMEL_GPIO(usart0, cts0, c, 2, b);
			DT_ATMEL_GPIO(usart0, rts0, a, 6, b);
			DT_ATMEL_GPIO(usart0, rts0, a, 8, a);
			DT_ATMEL_GPIO(usart0, rts0, b, 12, a);
			DT_ATMEL_GPIO(usart0, rts0, c, 1, b);
			DT_ATMEL_GPIO(usart0, rxd0, a, 5, b);
			DT_ATMEL_GPIO(usart0, rxd0, a, 11, a);
			DT_ATMEL_GPIO(usart0, rxd0, b, 0, b);
			DT_ATMEL_GPIO(usart0, rxd0, b, 14, a);
			DT_ATMEL_GPIO(usart0, rxd0, c, 2, c);
			DT_ATMEL_GPIO(usart0, clk0, a, 4, b);
			DT_ATMEL_GPIO(usart0, clk0, a, 10, a);
			DT_ATMEL_GPIO(usart0, clk0, b, 13, a);
			DT_ATMEL_GPIO(usart0, clk0, c, 0, b);
			DT_ATMEL_GPIO(usart0, txd0, a, 7, b);
			DT_ATMEL_GPIO(usart0, txd0, a, 12, a);
			DT_ATMEL_GPIO(usart0, txd0, b, 1, b);
			DT_ATMEL_GPIO(usart0, txd0, b, 15, a);
			DT_ATMEL_GPIO(usart0, txd0, c, 3, c);
			DT_ATMEL_GPIO(usart1, cts1, a, 21, b);
			DT_ATMEL_GPIO(usart1, rts1, a, 13, a);
			DT_ATMEL_GPIO(usart1, rts1, b, 2, b);
			DT_ATMEL_GPIO(usart1, rts1, c, 24, a);
			DT_ATMEL_GPIO(usart1, rxd1, a, 15, a);
			DT_ATMEL_GPIO(usart1, rxd1, b, 4, b);
			DT_ATMEL_GPIO(usart1, rxd1, c, 26, a);
			DT_ATMEL_GPIO(usart1, clk1, a, 14, a);
			DT_ATMEL_GPIO(usart1, clk1, b, 3, b);
			DT_ATMEL_GPIO(usart1, clk1, c, 25, a);
			DT_ATMEL_GPIO(usart1, txd1, a, 16, a);
			DT_ATMEL_GPIO(usart1, txd1, b, 5, b);
			DT_ATMEL_GPIO(usart1, txd1, c, 27, a);
			DT_ATMEL_GPIO(usart2, cts2, a, 22, b);
			DT_ATMEL_GPIO(usart2, cts2, c, 8, e);
			DT_ATMEL_GPIO(usart2, rts2, a, 17, a);
			DT_ATMEL_GPIO(usart2, rts2, c, 7, b);
			DT_ATMEL_GPIO(usart2, rxd2, a, 19, a);
			DT_ATMEL_GPIO(usart2, rxd2, a, 25, b);
			DT_ATMEL_GPIO(usart2, rxd2, c, 11, b);
			DT_ATMEL_GPIO(usart2, clk2, a, 18, a);
			DT_ATMEL_GPIO(usart2, clk2, c, 8, b);
			DT_ATMEL_GPIO(usart2, txd2, a, 20, a);
			DT_ATMEL_GPIO(usart2, txd2, a, 26, b);
			DT_ATMEL_GPIO(usart2, txd2, c, 12, b);
			DT_ATMEL_GPIO(usart3, cts3, a, 28, e);
			DT_ATMEL_GPIO(usart3, cts3, b, 7, a);
			DT_ATMEL_GPIO(usart3, rts3, a, 27, e);
			DT_ATMEL_GPIO(usart3, rts3, b, 6, a);
			DT_ATMEL_GPIO(usart3, rts3, c, 13, b);
			DT_ATMEL_GPIO(usart3, rts3, c, 30, a);
			DT_ATMEL_GPIO(usart3, rxd3, a, 30, a);
			DT_ATMEL_GPIO(usart3, rxd3, b, 9, a);
			DT_ATMEL_GPIO(usart3, rxd3, c, 9, a);
			DT_ATMEL_GPIO(usart3, rxd3, c, 28, a);
			DT_ATMEL_GPIO(usart3, clk3, a, 29, e);
			DT_ATMEL_GPIO(usart3, clk3, b, 8, a);
			DT_ATMEL_GPIO(usart3, clk3, c, 14, b);
			DT_ATMEL_GPIO(usart3, clk3, c, 31, a);
			DT_ATMEL_GPIO(usart3, txd3, a, 31, e);
			DT_ATMEL_GPIO(usart3, txd3, b, 10, a);
			DT_ATMEL_GPIO(usart3, txd3, c, 10, b);
			DT_ATMEL_GPIO(usart3, txd3, c, 29, a);
		};
	};
};
