mux: minimal mux subsystem
authorPeter Rosin <peda@axentia.se>
Sun, 14 May 2017 19:51:06 +0000 (21:51 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 3 Jun 2017 10:29:26 +0000 (19:29 +0900)
commita3b02a9c6591ce154cd44e2383406390a45b530c
treed6d0547b25d3117c103370ee24020cfd6cced3fe
parent256ac0375098e50d59c415fcbb561f2927fa8780
mux: minimal mux subsystem

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>
Documentation/ABI/testing/sysfs-class-mux [new file with mode: 0644]
Documentation/driver-model/devres.txt
MAINTAINERS
drivers/Kconfig
drivers/Makefile
drivers/mux/Kconfig [new file with mode: 0644]
drivers/mux/Makefile [new file with mode: 0644]
drivers/mux/mux-core.c [new file with mode: 0644]
include/linux/mux/consumer.h [new file with mode: 0644]
include/linux/mux/driver.h [new file with mode: 0644]