]> git.ipfire.org Git - thirdparty/openwrt.git/commit
generic: backport gpio-line-mux driver
authorJonas Jelonek <jelonek.jonas@gmail.com>
Tue, 3 Mar 2026 14:43:19 +0000 (14:43 +0000)
committerRobert Marko <robimarko@gmail.com>
Fri, 6 Mar 2026 10:33:05 +0000 (11:33 +0100)
commit95532ba906db6f67efd705aed32ba2e8637d063e
treed15e7522cc37bd210113d172790ec277a9ea9958
parent59862e9ffebd4445a19901a02ea23e1ae7dddb67
generic: backport gpio-line-mux driver

Backport the upstream 'gpio-line-mux' driver which allows to provide a
1-to-many mapping between one physical GPIO and multiple virtual GPIOs,
based on a multiplexer.

For this purpose, there's been a dedicated downstream driver
'gpio-cascade' which is mostly the same, but wasn't upstreamed in the
end. Independently developed, the 'gpio-line-mux' driver was upstreamed
to solve the exact same problem occuring on Realtek-based Zyxel XS1930
switches. Support for those is being worked on, but the hardware uses a
similar quirk for SFP signals. The signals 'RX_LOS', 'MOD_ABS' and
'TX_FAULT' do not have dedicated GPIOs each but all use a single GPIO
which is multiplexed. Depending on the multiplexer state the GPIO line is
connected to one of the signals.

Since the SFP driver needs single GPIOs for the single signals, this
adapter drivers fills the gap to make both work together.

Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/22206
Signed-off-by: Robert Marko <robimarko@gmail.com>
target/linux/generic/backport-6.12/821-01-v7.0-dt-bindings-gpio-add-gpio-line-mux-controller.patch [new file with mode: 0644]
target/linux/generic/backport-6.12/821-02-v7.0-gpio-add-gpio-line-mux-driver.patch [new file with mode: 0644]
target/linux/generic/backport-6.12/821-03-v7.0-gpio-line-mux-remove-bits-already-handled-by-GPIO-co.patch [new file with mode: 0644]
target/linux/generic/config-6.12