pins: Move reserved pin handling into PinResolver class

Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
This commit is contained in:
Kevin O'Connor 2019-08-09 11:42:50 -04:00 committed by KevinOConnor
parent a482ddf582
commit 395429be14
5 changed files with 35 additions and 34 deletions

View file

@ -568,10 +568,9 @@ class MCU:
# Resolve pin names
mcu_type = self._serial.get_msgparser().get_constant('MCU')
ppins = self._printer.lookup_object('pins')
reserved_pins = ppins.get_reserved_pins(self._name)
pin_resolver = pins.PinResolver(mcu_type, reserved_pins)
pin_resolver = ppins.get_pin_resolver(self._name)
if self._pin_map is not None:
pin_resolver.update_aliases(self._pin_map)
pin_resolver.add_pin_mapping(mcu_type, self._pin_map)
for i, cmd in enumerate(self._config_cmds):
self._config_cmds[i] = pin_resolver.update_command(cmd)
for i, cmd in enumerate(self._init_cmds):
@ -651,10 +650,11 @@ class MCU:
["%s=%s" % (k, v) for k, v in self.get_constants().items()]))]
logging.info("\n".join(log_info))
ppins = self._printer.lookup_object('pins')
pin_resolver = ppins.get_pin_resolver(name)
for cname, value in self.get_constants().items():
if cname.startswith("RESERVE_PINS_"):
for pin in value.split(','):
ppins.reserve_pin(name, pin, cname[13:])
pin_resolver.reserve_pin(pin, cname[13:])
self._mcu_freq = self.get_constant_float('CLOCK_FREQ')
self._stats_sumsq_base = self.get_constant_float('STATS_SUMSQ_BASE')
self._emergency_stop_cmd = self.lookup_command("emergency_stop")