applet.interface.spi_controller: remove ad-hoc CS# inversion.
No longer needed as the same result can be achieved with `--pin-cs 0#`
instead of `--cs-active 1`.
by
whitequark
9 months 6 days
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 6 days
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 6 days
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 6 days
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 6 days
target.hardware: remove workaround for amaranth-lang/amaranth#1402.
Not necessary since Amaranth 0.5.1.
by
whitequark
9 months 6 days
applet.interface.i2c_{initiator,target}: modify to use port groups.
Also, update the I2C core to handle the same.
by
whitequark
9 months 6 days
software: require amaranth>=0.5.1,<0.6.
by
whitequark
9 months 6 days
applet.interface.swd_openocd: improve formatting of help text.
by
whitequark
9 months 6 days
gateware.ports: add `PortGroup.{__getitem__,__setattr__}`.
by
whitequark
10 months 3 days