Re: [PATCH v7 03/12] mux: minimal mux subsystem and gpio-based mux controller

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On 2017-01-08 11:23, Jonathan Cameron wrote:
> On 04/01/17 12:16, Peter Rosin wrote:
>> 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.
>>
>> This new mux controller subsystem initially comes with a single backend
>> driver that controls gpio based multiplexers. Even though not needed by
>> this initial driver, the mux controller subsystem is prepared to handle
>> chips with multiple (independent) mux controllers.
>>
>> Signed-off-by: Peter Rosin <peda@xxxxxxxxxx>
> Reviewed-by: Jonathan Cameron <jic23@xxxxxxxxxx>
>> ---
>>  Documentation/driver-model/devres.txt |   8 +
>>  MAINTAINERS                           |   2 +
>>  drivers/Kconfig                       |   2 +
>>  drivers/Makefile                      |   1 +
>>  drivers/mux/Kconfig                   |  33 +++
>>  drivers/mux/Makefile                  |   6 +
>>  drivers/mux/mux-core.c                | 398 ++++++++++++++++++++++++++++++++++
>>  drivers/mux/mux-gpio.c                | 120 ++++++++++
>>  include/linux/mux.h                   | 244 +++++++++++++++++++++
>>  9 files changed, 814 insertions(+)
>>  create mode 100644 drivers/mux/Kconfig
>>  create mode 100644 drivers/mux/Makefile
>>  create mode 100644 drivers/mux/mux-core.c
>>  create mode 100644 drivers/mux/mux-gpio.c
>>  create mode 100644 include/linux/mux.h
>>
>> diff --git a/Documentation/driver-model/devres.txt b/Documentation/driver-model/devres.txt
>> index dc51fb024190..1e9ae701a587 100644
>> --- a/Documentation/driver-model/devres.txt
>> +++ b/Documentation/driver-model/devres.txt
>> @@ -332,6 +332,14 @@ MEM
>>  MFD
>>    devm_mfd_add_devices()
>>  
>> +MUX
>> +  devm_mux_chip_alloc()
>> +  devm_mux_chip_free()
>> +  devm_mux_chip_register()
>> +  devm_mux_chip_unregister()
>> +  devm_mux_control_get()
>> +  devm_mux_control_put()
>> +
>>  PER-CPU MEM
>>    devm_alloc_percpu()
>>    devm_free_percpu()
>> diff --git a/MAINTAINERS b/MAINTAINERS
>> index 32abef2b6d05..ebe96f3e25a0 100644
>> --- a/MAINTAINERS
>> +++ b/MAINTAINERS
>> @@ -8442,6 +8442,8 @@ MULTIPLEXER SUBSYSTEM
>>  M:	Peter Rosin <peda@xxxxxxxxxx>
>>  S:	Maintained
>>  F:	Documentation/devicetree/bindings/mux/
>> +F:	include/linux/mux.h
>> +F:	drivers/mux/
>>  
>>  MULTISOUND SOUND DRIVER
>>  M:	Andrew Veliath <andrewtv@xxxxxxx>
>> diff --git a/drivers/Kconfig b/drivers/Kconfig
>> index e1e2066cecdb..993aeb65affa 100644
>> --- a/drivers/Kconfig
>> +++ b/drivers/Kconfig
>> @@ -76,6 +76,8 @@ source "drivers/hwmon/Kconfig"
>>  
>>  source "drivers/thermal/Kconfig"
>>  
>> +source "drivers/mux/Kconfig"
>> +
> 
> Why this location in the list?  I think the convention for new subystems is
> to just go last in the list.

Oh. I'll move it to the end...

Thanks for all your acks/reviews!

Cheers,
peda

--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]
  Powered by Linux