-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add a new minimalistic subsystem that handles multiplexer controllers. When multiplexers are used in various places in the kernel, and the same multiplexer controller can be used for several independent things, there should be one place to implement support for said multiplexer controller. A single multiplexer controller can also be used to control several parallel multiplexers, that are in turn used by different subsystems in the kernel, leading to a need to coordinate multiplexer accesses. The multiplexer subsystem handles this coordination. Thanks go out to Lars-Peter Clausen, Jonathan Cameron, Rob Herring, Wolfram Sang, Paul Gortmaker, Dan Carpenter, Colin Ian King, Greg Kroah-Hartman and last but certainly not least to Philipp Zabel for helpful comments, reviews, patches and general encouragement! Reviewed-by: Jonathan Cameron <jic23@kernel.org> Signed-off-by: Peter Rosin <peda@axentia.se> Reviewed-by: Philipp Zabel <p.zabel@pengutronix.de> Tested-by: Philipp Zabel <p.zabel@pengutronix.de> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
- Loading branch information
Peter Rosin
authored and
Greg Kroah-Hartman
committed
Jun 3, 2017
1 parent
256ac03
commit a3b02a9
Showing
10 changed files
with
735 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
What: /sys/class/mux/ | ||
Date: April 2017 | ||
KernelVersion: 4.13 | ||
Contact: Peter Rosin <peda@axentia.se> | ||
Description: | ||
The mux/ class sub-directory belongs to the Generic MUX | ||
Framework and provides a sysfs interface for using MUX | ||
controllers. | ||
|
||
What: /sys/class/mux/muxchipN/ | ||
Date: April 2017 | ||
KernelVersion: 4.13 | ||
Contact: Peter Rosin <peda@axentia.se> | ||
Description: | ||
A /sys/class/mux/muxchipN directory is created for each | ||
probed MUX chip where N is a simple enumeration. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -206,4 +206,6 @@ source "drivers/fsi/Kconfig" | |
|
||
source "drivers/tee/Kconfig" | ||
|
||
source "drivers/mux/Kconfig" | ||
|
||
endmenu |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
# | ||
# Multiplexer devices | ||
# | ||
|
||
menuconfig MULTIPLEXER | ||
tristate "Multiplexer subsystem" | ||
help | ||
Multiplexer controller subsystem. Multiplexers are used in a | ||
variety of settings, and this subsystem abstracts their use | ||
so that the rest of the kernel sees a common interface. When | ||
multiple parallel multiplexers are controlled by one single | ||
multiplexer controller, this subsystem also coordinates the | ||
multiplexer accesses. | ||
|
||
To compile the subsystem as a module, choose M here: the module will | ||
be called mux-core. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
# | ||
# Makefile for multiplexer devices. | ||
# | ||
|
||
obj-$(CONFIG_MULTIPLEXER) += mux-core.o |
Oops, something went wrong.