#!/usr/bin/env python
-from interfaces import pins, i2s, emmc, sdmmc, spi, quadspi, i2c
+from interfaces import i2s, emmc, sdmmc, spi, quadspi, i2c
from interfaces import jtag, uart, ulpi, uartfull, rgbttl, rgmii
from interfaces import flexbus1, flexbus2, sdram1, sdram2, mcu8080
from interfaces import eint, pwm, gpio
-from interfaces import display, display_fns, check_functions
-from interfaces import pinmerge, display_fixed
+from interfaces import pinmerge
+from ifaceprint import display, display_fns, check_functions
+from ifaceprint import display_fixed
+
def pinspec():
pinouts = {}
'E': 16,
'F': 48,
'G': 24,
- }
+ }
bankspec = {}
- pkeys = pinbanks.keys()
- pkeys.sort()
+ pkeys = sorted(pinbanks.keys())
offs = 0
for kn in pkeys:
bankspec[kn] = offs
pinmerge(pinouts, i2c(bankspec, "3", ('B', 12), "B", 1))
pinmerge(pinouts, uart(bankspec, "5", ('B', 14), "B", 1))
for i in range(16):
- pinmerge(pinouts, pwm(bankspec, str(i+16), ('B', i), "B", mux=2))
+ pinmerge(pinouts, pwm(bankspec, str(i + 16), ('B', i), "B", mux=2))
# Bank C, 32-47
pinmerge(pinouts, gpio(bankspec, "", ('C', 0), "C", 0, 16, 0))
print
fixedpins = {
- 'CTRL_SYS':
- [
- 'TEST', 'BOOT_SEL',
- 'NMI#', 'RESET#',
- 'CLK24M_IN', 'CLK24M_OUT',
- 'CLK32K_IN', 'CLK32K_OUT',
- 'PLLTEST', 'PLLREGIO', 'PLLVP25',
- 'PLLDV', 'PLLVREG', 'PLLGND',
- ],
-
- 'POWER_CPU':
- ['VDD0_CPU', 'VDD1_CPU', 'VDD2_CPU', 'VDD3_CPU', 'VDD4_CPU', 'VDD5_CPU',
- 'GND0_CPU', 'GND1_CPU', 'GND2_CPU', 'GND3_CPU', 'GND4_CPU', 'GND5_CPU',
+ 'CTRL_SYS': [
+ 'TEST',
+ 'BOOT_SEL',
+ 'NMI#',
+ 'RESET#',
+ 'CLK24M_IN',
+ 'CLK24M_OUT',
+ 'CLK32K_IN',
+ 'CLK32K_OUT',
+ 'PLLTEST',
+ 'PLLREGIO',
+ 'PLLVP25',
+ 'PLLDV',
+ 'PLLVREG',
+ 'PLLGND',
],
-
- 'POWER_DLL':
- ['VDD0_DLL', 'VDD1_DLL', 'VDD2_DLL',
- 'GND0_DLL', 'GND1_DLL', 'GND2_DLL',
+ 'POWER_CPU': [
+ 'VDD0_CPU',
+ 'VDD1_CPU',
+ 'VDD2_CPU',
+ 'VDD3_CPU',
+ 'VDD4_CPU',
+ 'VDD5_CPU',
+ 'GND0_CPU',
+ 'GND1_CPU',
+ 'GND2_CPU',
+ 'GND3_CPU',
+ 'GND4_CPU',
+ 'GND5_CPU',
],
-
- 'POWER_INT':
- ['VDD0_INT', 'VDD1_INT', 'VDD2_INT', 'VDD3_INT', 'VDD4_INT',
- 'VDD5_INT', 'VDD6_INT', 'VDD7_INT', 'VDD8_INT', 'VDD9_INT',
- 'GND0_INT', 'GND1_INT', 'GND2_INT', 'GND3_INT', 'GND4_INT',
- 'GND5_INT', 'GND6_INT', 'GND7_INT', 'GND8_INT', 'GND9_INT',
+ 'POWER_DLL': [
+ 'VDD0_DLL',
+ 'VDD1_DLL',
+ 'VDD2_DLL',
+ 'GND0_DLL',
+ 'GND1_DLL',
+ 'GND2_DLL',
],
-
- 'POWER_GPIO':
- ['VDD_GPIOA', 'VDD_GPIOB', 'VDD_GPIOC',
- 'VDD_GPIOD', 'VDD_GPIOE', 'VDD_GPIOF',
- 'VDD_GPIOG',
- 'GND_GPIOA', 'GND_GPIOB', 'GND_GPIOC',
- 'GND_GPIOD', 'GND_GPIOE', 'GND_GPIOF',
- 'GND_GPIOG',
- ]
-
- }
+ 'POWER_INT': [
+ 'VDD0_INT',
+ 'VDD1_INT',
+ 'VDD2_INT',
+ 'VDD3_INT',
+ 'VDD4_INT',
+ 'VDD5_INT',
+ 'VDD6_INT',
+ 'VDD7_INT',
+ 'VDD8_INT',
+ 'VDD9_INT',
+ 'GND0_INT',
+ 'GND1_INT',
+ 'GND2_INT',
+ 'GND3_INT',
+ 'GND4_INT',
+ 'GND5_INT',
+ 'GND6_INT',
+ 'GND7_INT',
+ 'GND8_INT',
+ 'GND9_INT',
+ ],
+ 'POWER_GPIO': [
+ 'VDD_GPIOA',
+ 'VDD_GPIOB',
+ 'VDD_GPIOC',
+ 'VDD_GPIOD',
+ 'VDD_GPIOE',
+ 'VDD_GPIOF',
+ 'VDD_GPIOG',
+ 'GND_GPIOA',
+ 'GND_GPIOB',
+ 'GND_GPIOC',
+ 'GND_GPIOD',
+ 'GND_GPIOE',
+ 'GND_GPIOF',
+ 'GND_GPIOG',
+ ]}
display_fixed(fixedpins, len(pinouts))
'ULPI1': 'ULPI (USB Low Pin-count) 1',
'ULPI2': 'ULPI (USB Low Pin-count) 2',
'ULPI3': 'ULPI (USB Low Pin-count) 3',
- }
-
+ }
+
fns = display_fns(bankspec, pinouts, function_names)
print
# using "BM:Name". Pins are removed in-order as listed from
# lists (interfaces, EINTs, PWMs) from available pins.
- # Robotics scenario.
+ # Robotics scenario.
- robotics = ['FB', 'RG', 'ULPI0/8',
+ robotics = ['FB', 'RG', 'ULPI0/8',
'SD0',
- 'JTAG0', 'E1:UART0',
- 'D1:SPI0', 'E1:TWI0']
+ 'JTAG0', 'E1:UART0',
+ 'D1:SPI0', 'E1:TWI0']
robotics_pwm = []
for i in range(32):
robotics_pwm.append('PWM_%d' % i)
robotics_eint = ['EINT24', 'EINT25', 'EINT26', 'EINT27',
- 'EINT20', 'EINT21', 'EINT22', 'EINT23']
+ 'EINT20', 'EINT21', 'EINT22', 'EINT23']
robotics_eint = []
unused_pins = check_functions("Robotics", bankspec, fns, pinouts,
- robotics, robotics_eint, robotics_pwm)
+ robotics, robotics_eint, robotics_pwm)
print "# Reference Datasheets"
print