530 lines
9.4 KiB
YAML
530 lines
9.4 KiB
YAML
# Copyright (c) 2022 Gerson Fernando Budke
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
#
|
|
# Sources:
|
|
# - SAM4S Datasheet (Revision K - 06/15)
|
|
#
|
|
# Pin codes:
|
|
#
|
|
# - 48 pins: a
|
|
# - 64 pins: b
|
|
# - 100 pins: c
|
|
|
|
model: atmel,sam
|
|
|
|
family: sam4s
|
|
|
|
map: SAM_PINMUX
|
|
|
|
# SAM4S, SAM4SA, SAM4SD
|
|
series: [4sX]
|
|
|
|
variants:
|
|
- pincode: a
|
|
series: [4sX]
|
|
exception: y
|
|
- pincode: b
|
|
series: [4sX]
|
|
- pincode: c
|
|
series: [4sX]
|
|
|
|
pins:
|
|
pa0:
|
|
pincodes: [a, b, c]
|
|
periph:
|
|
- [a, pwm, pwmh0]
|
|
- [b, tc0, tioa0]
|
|
- [c, ebi, a17, [a, b]]
|
|
wakeup:
|
|
- [x, supc, wkup0]
|
|
pa1:
|
|
pincodes: [a, b, c]
|
|
periph:
|
|
- [a, pwm, pwmh1]
|
|
- [b, tc0, tiob0]
|
|
- [c, ebi, a18, [a, b]]
|
|
wakeup:
|
|
- [x, supc, wkup1]
|
|
pa2:
|
|
pincodes: [a, b, c]
|
|
periph:
|
|
- [a, pwm, pwmh2]
|
|
- [b, usart0, sck]
|
|
- [c, dacc, datrg]
|
|
wakeup:
|
|
- [x, supc, wkup2]
|
|
pa3:
|
|
pincodes: [a, b, c]
|
|
periph:
|
|
- [a, twi0, twd]
|
|
- [b, spi, npcs3]
|
|
pa4:
|
|
pincodes: [a, b, c]
|
|
periph:
|
|
- [a, twi0, twck]
|
|
- [b, tc0, tclk0]
|
|
wakeup:
|
|
- [x, supc, wkup3]
|
|
pa5:
|
|
pincodes: [a, b, c]
|
|
periph:
|
|
- [a, usart0, rxd]
|
|
- [b, spi, npcs3]
|
|
wakeup:
|
|
- [x, supc, wkup4]
|
|
pa6:
|
|
pincodes: [a, b, c]
|
|
periph:
|
|
- [a, usart0, txd]
|
|
- [b, pmc, pck0]
|
|
pa7:
|
|
pincodes: [a, b, c]
|
|
periph:
|
|
- [a, usart0, rts]
|
|
- [b, pwm, pwmh3]
|
|
system:
|
|
- [s, supc, xin32]
|
|
pa8:
|
|
pincodes: [a, b, c]
|
|
periph:
|
|
- [a, usart0, cts]
|
|
- [b, adc, adtrg]
|
|
wakeup:
|
|
- [x, supc, wkup5]
|
|
system:
|
|
- [s, supc, xout32]
|
|
pa9:
|
|
pincodes: [a, b, c]
|
|
periph:
|
|
- [a, uart0, rxd]
|
|
- [b, spi, npcs1]
|
|
- [c, pwm, pwmfi0]
|
|
wakeup:
|
|
- [x, supc, wkup6]
|
|
pa10:
|
|
pincodes: [a, b, c]
|
|
periph:
|
|
- [a, uart0, txd]
|
|
- [b, spi, npcs2]
|
|
- [c, pwm, pwmfi1]
|
|
pa11:
|
|
pincodes: [a, b, c]
|
|
periph:
|
|
- [a, spi, npcs0]
|
|
- [b, pwm, pwmh0]
|
|
wakeup:
|
|
- [x, supc, wkup7]
|
|
pa12:
|
|
pincodes: [a, b, c]
|
|
periph:
|
|
- [a, spi, miso]
|
|
- [b, pwm, pwmh1]
|
|
pa13:
|
|
pincodes: [a, b, c]
|
|
periph:
|
|
- [a, spi, mosi]
|
|
- [b, pwm, pwmh2]
|
|
pa14:
|
|
pincodes: [a, b, c]
|
|
periph:
|
|
- [a, spi, spck]
|
|
- [b, pwm, pwmh3]
|
|
wakeup:
|
|
- [x, supc, wkup8]
|
|
pa15:
|
|
pincodes: [a, b, c]
|
|
periph:
|
|
- [a, ssc, tf]
|
|
- [b, tc0, tioa1]
|
|
- [c, pwm, pwml3]
|
|
extra:
|
|
- [x, pio, piodcen1]
|
|
wakeup:
|
|
- [x, supc, wkup14]
|
|
pa16:
|
|
pincodes: [a, b, c]
|
|
periph:
|
|
- [a, ssc, tk]
|
|
- [b, tc0, tiob1]
|
|
- [c, pwm, pwml2]
|
|
extra:
|
|
- [x, pio, piodcen2]
|
|
wakeup:
|
|
- [x, supc, wkup15]
|
|
pa17:
|
|
pincodes: [a, b, c]
|
|
periph:
|
|
- [a, ssc, td]
|
|
- [b, pmc, pck1]
|
|
- [c, pwm, pwmh3]
|
|
extra:
|
|
- [x, adc, ad0]
|
|
pa18:
|
|
pincodes: [a, b, c]
|
|
periph:
|
|
- [a, ssc, rd]
|
|
- [b, pmc, pck2]
|
|
- [c, ebi, a14, [a, b]]
|
|
- [d, pwm, pwmfi2]
|
|
extra:
|
|
- [x, adc, ad1]
|
|
pa19:
|
|
pincodes: [a, b, c]
|
|
periph:
|
|
- [a, ssc, rk]
|
|
- [b, pwm, pwml0]
|
|
- [c, ebi, a15, [a, b]]
|
|
extra:
|
|
- [x, adc, ad2]
|
|
wakeup:
|
|
- [x, supc, wkup9]
|
|
pa20:
|
|
pincodes: [a, b, c]
|
|
periph:
|
|
- [a, ssc, rf]
|
|
- [b, pwm, pwml1]
|
|
- [c, ebi, a16, [a, b]]
|
|
extra:
|
|
- [x, adc, ad3]
|
|
wakeup:
|
|
- [x, supc, wkup10]
|
|
pa21:
|
|
pincodes: [b, c]
|
|
periph:
|
|
- [a, usart1, rxd]
|
|
- [b, pmc, pck1]
|
|
extra:
|
|
- [x, adc, ad8]
|
|
pa22:
|
|
pincodes: [b, c]
|
|
periph:
|
|
- [a, usart1, txd]
|
|
- [b, spi, npcs3]
|
|
- [c, ebi, ncs2, [a, b]]
|
|
extra:
|
|
- [x, adc, ad9]
|
|
pa23:
|
|
pincodes: [b, c]
|
|
periph:
|
|
- [a, usart1, sck]
|
|
- [b, pwm, pwmh0]
|
|
- [c, ebi, a19, [a, b]]
|
|
extra:
|
|
- [x, pio, piodcclk]
|
|
pa24:
|
|
pincodes: [b, c]
|
|
periph:
|
|
- [a, usart1, rts]
|
|
- [b, pwm, pwmh1]
|
|
- [c, ebi, a20, [a, b]]
|
|
extra:
|
|
- [x, pio, piodc0]
|
|
pa25:
|
|
pincodes: [b, c]
|
|
periph:
|
|
- [a, usart1, cts]
|
|
- [b, pwm, pwmh2]
|
|
- [c, ebi, a23, [a, b]]
|
|
extra:
|
|
- [x, pio, piodc1]
|
|
pa26:
|
|
pincodes: [b, c]
|
|
periph:
|
|
- [a, usart1, dcd]
|
|
- [b, tc02, tioa2]
|
|
- [c, hsmci, mcda2, [a]]
|
|
extra:
|
|
- [x, pio, piodc2]
|
|
pa27:
|
|
pincodes: [b, c]
|
|
periph:
|
|
- [a, usart1, dtr]
|
|
- [b, tc0, tiob2]
|
|
- [c, hsmci, mcda3, [a]]
|
|
extra:
|
|
- [x, pio, piodc3]
|
|
pa28:
|
|
pincodes: [b, c]
|
|
periph:
|
|
- [a, usart1, dsr]
|
|
- [b, tc0, tclk1]
|
|
- [c, hsmci, mccda, [a]]
|
|
extra:
|
|
- [x, pio, piodc4]
|
|
pa29:
|
|
pincodes: [b, c]
|
|
periph:
|
|
- [a, usart1, ri1]
|
|
- [b, tc0, tclk2]
|
|
- [c, hsmci, mcck, [a]]
|
|
extra:
|
|
- [x, pio, piodc5]
|
|
pa30:
|
|
pincodes: [b, c]
|
|
periph:
|
|
- [a, pwm, pwml2]
|
|
- [b, spi, npcs2]
|
|
- [c, hsmci, mcda0, [a]]
|
|
extra:
|
|
- [x, pio, piodc6]
|
|
wakeup:
|
|
- [x, supc, wkup11]
|
|
pa31:
|
|
pincodes: [b, c]
|
|
periph:
|
|
- [a, spi, npcs1]
|
|
- [b, pmc, pck2]
|
|
- [c, hsmci, mcda1, [a]]
|
|
extra:
|
|
- [x, pio, piodc7]
|
|
pb0:
|
|
pincodes: [a, b, c]
|
|
periph:
|
|
- [a, pwm, pwmh0]
|
|
extra:
|
|
- [x, adc, ad4]
|
|
- [x, rtc, out0]
|
|
pb1:
|
|
pincodes: [a, b, c]
|
|
periph:
|
|
- [a, pwm, pwmh1]
|
|
extra:
|
|
- [x, adc, ad5]
|
|
- [x, rtc, out1]
|
|
pb2:
|
|
pincodes: [a, b, c]
|
|
periph:
|
|
- [a, uart1, rxd]
|
|
- [b, spi, npcs2]
|
|
extra:
|
|
- [x, adc, ad6]
|
|
wakeup:
|
|
- [x, supc, wkup12]
|
|
pb3:
|
|
pincodes: [a, b, c]
|
|
periph:
|
|
- [a, uart1, txd]
|
|
- [b, pmc, pck2]
|
|
extra:
|
|
- [x, adc, ad7]
|
|
pb4:
|
|
pincodes: [a, b, c]
|
|
periph:
|
|
- [a, twi1, twd]
|
|
- [b, pwm, pwmh2]
|
|
system:
|
|
- [s, jtag, tdi]
|
|
pb5:
|
|
pincodes: [a, b, c]
|
|
periph:
|
|
- [a, twi1, twck]
|
|
- [b, pwm, pwml0]
|
|
wakeup:
|
|
- [x, supc, wkup13]
|
|
system:
|
|
- [s, jtag, tdo]
|
|
- [s, swd, traceswo]
|
|
pb6:
|
|
pincodes: [a, b, c]
|
|
system:
|
|
- [s, jtag, tms]
|
|
- [s, swd, swdio]
|
|
pb7:
|
|
pincodes: [a, b, c]
|
|
system:
|
|
- [s, jtag, tck]
|
|
- [s, swd, swclk]
|
|
pb8:
|
|
pincodes: [a, b, c]
|
|
system:
|
|
- [s, supc, xout]
|
|
pb9:
|
|
pincodes: [a, b, c]
|
|
system:
|
|
- [s, supc, xin]
|
|
pb10:
|
|
pincodes: [a, b, c]
|
|
system:
|
|
- [s, udp, ddm]
|
|
pb11:
|
|
pincodes: [a, b, c]
|
|
system:
|
|
- [s, udp, ddp]
|
|
pb12:
|
|
pincodes: [a, b, c]
|
|
periph:
|
|
- [a, pwm, pwml1]
|
|
system:
|
|
- [s, flash, erase]
|
|
pb13:
|
|
pincodes: [b, c]
|
|
periph:
|
|
- [a, pwm, pwml2]
|
|
- [b, pmc, pck0]
|
|
- [d, dacc, dac0, [a]]
|
|
pb14:
|
|
pincodes: [b, c]
|
|
periph:
|
|
- [a, spi, npcs1]
|
|
- [b, pwm, pwmh3]
|
|
- [d, dacc, dac1, [a]]
|
|
pc0:
|
|
pincodes: [c]
|
|
periph:
|
|
- [a, ebi, d0, [a, b]]
|
|
- [b, pwm, pwml0]
|
|
pc1:
|
|
pincodes: [c]
|
|
periph:
|
|
- [a, ebi, d1, [a, b]]
|
|
- [b, pwm, pwml1]
|
|
pc2:
|
|
pincodes: [c]
|
|
periph:
|
|
- [a, ebi, d2, [a, b]]
|
|
- [b, pwm, pwml2]
|
|
pc3:
|
|
pincodes: [c]
|
|
periph:
|
|
- [a, ebi, d3, [a, b]]
|
|
- [b, pwm, pwml3]
|
|
pc4:
|
|
pincodes: [c]
|
|
periph:
|
|
- [a, ebi, d4, [a, b]]
|
|
- [b, spi, npcs1]
|
|
pc5:
|
|
pincodes: [c]
|
|
periph:
|
|
- [a, ebi, d5, [a, b]]
|
|
pc6:
|
|
pincodes: [c]
|
|
periph:
|
|
- [a, ebi, d6, [a, b]]
|
|
pc7:
|
|
pincodes: [c]
|
|
periph:
|
|
- [a, ebi, d7, [a, b]]
|
|
pc8:
|
|
pincodes: [c]
|
|
periph:
|
|
- [a, ebi, nwe, [a, b]]
|
|
pc9:
|
|
pincodes: [c]
|
|
periph:
|
|
- [a, ebi, nandoe, [a, b]]
|
|
pc10:
|
|
pincodes: [c]
|
|
periph:
|
|
- [a, ebi, nandwe, [a, b]]
|
|
pc11:
|
|
pincodes: [c]
|
|
periph:
|
|
- [a, ebi, nrd, [a, b]]
|
|
pc12:
|
|
pincodes: [c]
|
|
periph:
|
|
- [a, ebi, ncs3, [a, b]]
|
|
extra:
|
|
- [x, adc, ad12]
|
|
pc13:
|
|
pincodes: [c]
|
|
periph:
|
|
- [a, ebi, nwait, [a, b]]
|
|
- [b, pwm, pwml0]
|
|
extra:
|
|
- [x, adc, ad10]
|
|
pc14:
|
|
pincodes: [c]
|
|
periph:
|
|
- [a, ebi, ncs0, [a, b]]
|
|
pc15:
|
|
pincodes: [c]
|
|
periph:
|
|
- [a, ebi, ncs1, [a, b]]
|
|
- [b, pwm, pwml1]
|
|
extra:
|
|
- [x, adc, ad11]
|
|
pc16:
|
|
pincodes: [c]
|
|
periph:
|
|
- [a, ebi, a21_nandale, [a, b]]
|
|
pc17:
|
|
pincodes: [c]
|
|
periph:
|
|
- [a, ebi, a22_nandcle, [a, b]]
|
|
pc18:
|
|
pincodes: [c]
|
|
periph:
|
|
- [a, ebi, a0, [a, b]]
|
|
- [b, pwm, pwmh0]
|
|
pc19:
|
|
pincodes: [c]
|
|
periph:
|
|
- [a, ebi, a1, [a, b]]
|
|
- [b, pwm, pwmh1]
|
|
pc20:
|
|
pincodes: [c]
|
|
periph:
|
|
- [a, ebi, a2, [a, b]]
|
|
- [b, pwm, pwmh2]
|
|
pc21:
|
|
pincodes: [c]
|
|
periph:
|
|
- [a, ebi, a3, [a, b]]
|
|
- [b, pwm, pwmh3]
|
|
pc22:
|
|
pincodes: [c]
|
|
periph:
|
|
- [a, ebi, a4, [a, b]]
|
|
- [b, pwm, pwml3]
|
|
pc23:
|
|
pincodes: [c]
|
|
periph:
|
|
- [a, ebi, a5, [a, b]]
|
|
- [b, tc1, tioa3]
|
|
pc24:
|
|
pincodes: [c]
|
|
periph:
|
|
- [a, ebi, a6, [a, b]]
|
|
- [b, tc1, tiob3]
|
|
pc25:
|
|
pincodes: [c]
|
|
periph:
|
|
- [a, ebi, a7, [a, b]]
|
|
- [b, tc1, tclk3]
|
|
pc26:
|
|
pincodes: [c]
|
|
periph:
|
|
- [a, ebi, a8, [a, b]]
|
|
- [b, tc1, tioa4]
|
|
pc27:
|
|
pincodes: [c]
|
|
periph:
|
|
- [a, ebi, a9, [a, b]]
|
|
- [b, tc1, tiob4]
|
|
pc28:
|
|
pincodes: [c]
|
|
periph:
|
|
- [a, ebi, a10, [a, b]]
|
|
- [b, tc1, tclk4]
|
|
pc29:
|
|
pincodes: [c]
|
|
periph:
|
|
- [a, ebi, a11, [a, b]]
|
|
- [b, tc1, tioa5]
|
|
extra:
|
|
- [x, adc, ad13]
|
|
pc30:
|
|
pincodes: [c]
|
|
periph:
|
|
- [a, ebi, a12, [a, b]]
|
|
- [b, tc1, tiob5]
|
|
extra:
|
|
- [x, adc, ad14]
|
|
pc31:
|
|
pincodes: [c]
|
|
periph:
|
|
- [a, ebi, a13, [a, b]]
|
|
- [b, tc1, tclk5]
|