gateware.uart,applet.interface.uart: remove ad-hoc inversion.
No longer needed as the same result can be achieved with `--pin-rx 0#`
and `--pin-tx 1#`.
by
whitequark
9 months 1 week
access.direct: implement selective pin inversion with `--pin-x 0#`.
Amaranth supports inversion for any pin and for any I/O core on the I/O
buffer level. This mechanism obviates the need for ad-hoc inversion in
any applets, but was not exposed until now. Any pin can now be inverted
via the command-line interface using one of the following syntaxes:
* single pin: `--pin-x 0#`
* pin range: `--pins-x 0:8#` (inverts all of them)
* pin list: `--pins-x 0,1#,2#,3` (inverts only specified pins)
Pull-ups configured for a pin with inversion get converted to pull-downs
and vice versa.
by
whitequark
9 months 1 week
access: reimplement `get_deprecated_pad{,s}()` via `get_port()`.
There is no loss of functionality and this change allows us to only
consider `get_port()` as a consumer of pin argument values.
by
whitequark
9 months 1 week
access: remove `get_inout_fifo()`.
There is no advantage to using it over `get_in_fifo()` and
`get_out_fifo()`. Only one applet, `selftest`, ever used it at all.
by
whitequark
9 months 1 week
target.hardware: remove workaround for amaranth-lang/amaranth#1402.
Not necessary since Amaranth 0.5.1.
by
whitequark
9 months 1 week
applet.interface.i2c_{initiator,target}: modify to use port groups.
Also, update the I2C core to handle the same.
by
whitequark
9 months 1 week
software: require amaranth>=0.5.1,<0.6.
by
whitequark
9 months 1 week
applet.interface.swd_openocd: improve formatting of help text.
by
whitequark
9 months 1 week
gateware.ports: add `PortGroup.{__getitem__,__setattr__}`.
by
whitequark
10 months 5 days
platform.generic: delegate `GlasgowPlatformPort.direction` to `.io_port`.
This doesn't actually change behavior at the moment, but would be
the correct implementation if we ever narrow underlying port directions.
by
whitequark
10 months 2 days