/*
 * Copyright (c) 2020 Linaro Limited
 *
 * SPDX-License-Identifier: Apache-2.0
 */

#include "pinctrl_atmel_sam.h"

/ {
	soc {
		pinctrl@400e0e00 {
			/* instance, signal, pio, pin, peripheral */
			DT_ATMEL_PIN(gmac, gcol, d, 13, a);
			DT_ATMEL_PIN(gmac, gcrs, d, 10, a);
			DT_ATMEL_PIN(gmac, gcrsdv, d, 4, a);
			DT_ATMEL_PIN(gmac, grxdv, d, 4, a);
			DT_ATMEL_PIN(gmac, gmdc, d, 8, a);
			DT_ATMEL_PIN(gmac, gmdio, d, 9, a);
			DT_ATMEL_PIN(gmac, grx0, d, 5, a);
			DT_ATMEL_PIN(gmac, grx1, d, 6, a);
			DT_ATMEL_PIN(gmac, grx2, d, 11, a);
			DT_ATMEL_PIN(gmac, grx3, d, 12, a);
			DT_ATMEL_PIN(gmac, grxck, d, 14, a);
			DT_ATMEL_PIN(gmac, grxer, d, 7, a);
			DT_ATMEL_PIN(gmac, gtx0, d, 2, a);
			DT_ATMEL_PIN(gmac, gtx1, d, 3, a);
			DT_ATMEL_PIN(gmac, gtx2, d, 15, a);
			DT_ATMEL_PIN(gmac, gtx3, d, 16, a);
			DT_ATMEL_PIN(gmac, gtxck, d, 0, a);
			DT_ATMEL_PIN(gmac, grefck, d, 0, a);
			DT_ATMEL_PIN(gmac, gtxen, d, 1, a);
			DT_ATMEL_PIN(gmac, gtxer, d, 17, a);
			DT_ATMEL_PIN(spi, miso, a, 12, a);
			DT_ATMEL_PIN(spi, mosi, a, 13, a);
			DT_ATMEL_PIN(spi, npcs0, a, 11, a);
			DT_ATMEL_PIN(spi, npcs1, a, 9, b);
			DT_ATMEL_PIN(spi, npcs1, a, 31, a);
			DT_ATMEL_PIN(spi, npcs1, b, 14, a);
			DT_ATMEL_PIN(spi, npcs1, c, 4, b);
			DT_ATMEL_PIN(spi, npcs2, a, 10, b);
			DT_ATMEL_PIN(spi, npcs2, a, 30, b);
			DT_ATMEL_PIN(spi, npcs2, b, 2, b);
			DT_ATMEL_PIN(spi, npcs3, a, 3, b);
			DT_ATMEL_PIN(spi, npcs3, a, 5, b);
			DT_ATMEL_PIN(spi, npcs3, a, 22, b);
			DT_ATMEL_PIN(spi, spck, a, 14, a);
			DT_ATMEL_PIN(twi0, twck0, a, 4, a);
			DT_ATMEL_PIN(twi0, twd0, a, 3, a);
			DT_ATMEL_PIN(twi1, twck1, b, 5, a);
			DT_ATMEL_PIN(twi1, twd1, b, 4, a);
			DT_ATMEL_PIN(uart0, urxd0, a, 9, a);
			DT_ATMEL_PIN(uart0, utxd0, a, 10, a);
			DT_ATMEL_PIN(uart1, urxd1, a, 5, c);
			DT_ATMEL_PIN(uart1, utxd1, a, 6, c);
			DT_ATMEL_PIN(usart0, cts0, b, 2, c);
			DT_ATMEL_PIN(usart0, rts0, b, 3, c);
			DT_ATMEL_PIN(usart0, rxd0, b, 0, c);
			DT_ATMEL_PIN(usart0, sck0, b, 13, c);
			DT_ATMEL_PIN(usart0, txd0, b, 1, c);
			DT_ATMEL_PIN(usart1, cts1, a, 25, a);
			DT_ATMEL_PIN(usart1, dcd1, a, 26, a);
			DT_ATMEL_PIN(usart1, dsr1, a, 28, a);
			DT_ATMEL_PIN(usart1, dtr1, a, 27, a);
			DT_ATMEL_PIN(usart1, ri1, a, 29, a);
			DT_ATMEL_PIN(usart1, rts1, a, 24, a);
			DT_ATMEL_PIN(usart1, rxd1, a, 21, a);
			DT_ATMEL_PIN(usart1, sck1, a, 23, a);
			DT_ATMEL_PIN(usart1, txd1, a, 22, a);
		};
	};
};
