aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--klippy/pins.py11
-rw-r--r--src/stm32f1/gpio.c6
2 files changed, 6 insertions, 11 deletions
diff --git a/klippy/pins.py b/klippy/pins.py
index e998f248..26d0bf67 100644
--- a/klippy/pins.py
+++ b/klippy/pins.py
@@ -13,16 +13,6 @@ class error(Exception):
# Hardware pin names
######################################################################
-def port_pins(port_count, bit_count=8):
- pins = {}
- for port in range(port_count):
- portchr = chr(65 + port)
- if portchr == 'I':
- continue
- for portbit in range(bit_count):
- pins['P%c%d' % (portchr, portbit)] = port * bit_count + portbit
- return pins
-
def named_pins(fmt, port_count, bit_count=32):
return { fmt % (port, portbit) : port * bit_count + portbit
for port in range(port_count)
@@ -34,7 +24,6 @@ def beaglebone_pins():
return gpios
MCU_PINS = {
- "stm32f103": port_pins(5, 16),
"pru": beaglebone_pins(),
"linux": {"analog%d" % i: i for i in range(8)}, # XXX
}
diff --git a/src/stm32f1/gpio.c b/src/stm32f1/gpio.c
index ed950461..ced64cd1 100644
--- a/src/stm32f1/gpio.c
+++ b/src/stm32f1/gpio.c
@@ -17,6 +17,12 @@
* Pin mappings
****************************************************************/
+DECL_ENUMERATION_RANGE("pin", "PA0", GPIO('A', 0), 16);
+DECL_ENUMERATION_RANGE("pin", "PB0", GPIO('B', 0), 16);
+DECL_ENUMERATION_RANGE("pin", "PC0", GPIO('C', 0), 16);
+DECL_ENUMERATION_RANGE("pin", "PD0", GPIO('D', 0), 16);
+DECL_ENUMERATION_RANGE("pin", "PE0", GPIO('E', 0), 16);
+
GPIO_TypeDef *const digital_regs[] = {
GPIOA, GPIOB, GPIOC, GPIOD, GPIOE
};