From aca6d68a6159136fe1f36c6430e2ffd07da13e8c Mon Sep 17 00:00:00 2001 From: Luke Kenneth Casson Leighton Date: Tue, 12 May 2020 13:07:42 +0100 Subject: [PATCH] bugfix start-point prototype pinmux for LibreSOC 180nm --- src/spec/ls180.py | 8 ++++++-- src/spec/pinfunctions.py | 9 +++++---- 2 files changed, 11 insertions(+), 6 deletions(-) diff --git a/src/spec/ls180.py b/src/spec/ls180.py index 6c987c2..77c5f1f 100644 --- a/src/spec/ls180.py +++ b/src/spec/ls180.py @@ -1,5 +1,6 @@ #!/usr/bin/env python -# aardonyx file +# see https://bugs.libre-soc.org/show_bug.cgi?id=303 + from spec.base import PinSpec from spec.ifaceprint import display, display_fns, check_functions @@ -35,6 +36,7 @@ def pinspec(): 'MSPI2': 'SPI (Serial Peripheral Interface) Master 1', 'UART1': 'UART (TX/RX) 1', 'UART3': 'UART (TX/RX) 2', + 'LPC0': 'Low Pincount Interface 0', } ps = PinSpec(pinbanks, fixedpins, function_names) @@ -67,6 +69,7 @@ def pinspec(): ps.mspi("2", ('A', 7), 1) ps.uart("1", ('A', 0), 1) ps.uart("3", ('A', 2), 1) + ps.lpc("0", ('A', 11), 3) #ps.mquadspi("1", ('B', 0), 0) @@ -77,7 +80,7 @@ def pinspec(): # using "BM:Name". Pins are removed in-order as listed from # lists (interfaces, EINTs, PWMs) from available pins. - ls180 = ['ULPI0/8', 'ULPI1', 'MMC', 'SD0', 'UART0', + ls180 = ['ULPI0/8', 'ULPI1', 'MMC', 'SD0', 'UART0', 'LPC0', 'TWI0', 'MSPI0', 'B3:SD1', ] ls180_eint = [] ls180_pwm = ['B2:PWM_0'] @@ -89,6 +92,7 @@ def pinspec(): 'E2:SD1': '', 'MSPI1': '', 'UART0': '', + 'LPC0': '', 'B1:LCD/22': '18-bit RGB/TTL LCD', 'ULPI0/8': 'user-facing: internal (on Card), USB-OTG ULPI PHY', 'ULPI1': 'dual USB2 Host ULPI PHY' diff --git a/src/spec/pinfunctions.py b/src/spec/pinfunctions.py index 1cb7f12..e46be8d 100644 --- a/src/spec/pinfunctions.py +++ b/src/spec/pinfunctions.py @@ -48,14 +48,15 @@ def i2s(suffix, bank): # XXX TODO: correct these. this is a stub for now -def lpc(suffix, bank, pincount=8): - emmcpins = ['CMD+', 'CLK+'] +# https://bugs.libre-soc.org/show_bug.cgi?id=303 +def lpc(suffix, bank, pincount=4): + lpcpins = ['CMD+', 'CLK+'] inout = [] for i in range(pincount): pname = "D%d*" % i - emmcpins.append(pname) + lpcpins.append(pname) inout.append(pname) - return (emmcpins, inout) + return (lpcpins, inout) def emmc(suffix, bank, pincount=8): -- 2.30.2