aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/mux/core.c
Commit message (Collapse)AuthorAgeFilesLines
* mux: constify mux classBartosz Golaszewski2025-01-101-1/+1
| | | | | | | | | All class functions used here take a const pointer to the class structure so we can make the struct itself constant. Signed-off-by: Bartosz Golaszewski <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Greg Kroah-Hartman <[email protected]>
* mux: remove usage of the deprecated ida_simple_xx() APIChristophe JAILLET2024-04-291-2/+2
| | | | | | | | | | | | | ida_alloc() and ida_free() should be preferred to the deprecated ida_simple_get() and ida_simple_remove(). This is less verbose. Link: https://lkml.kernel.org/r/f82e013abe4c71f1c7d06819f96472f298acdcf3.1713089554.git.christophe.jaillet@wanadoo.fr Signed-off-by: Christophe JAILLET <[email protected]> Cc: Peter Rosin <[email protected]> Cc: Greg Kroah-Hartman <[email protected]> Signed-off-by: Andrew Morton <[email protected]>
* mux: Explicitly include correct DT includesRob Herring2023-08-281-1/+0
| | | | | | | | | | | | | | The DT of_device.h and of_platform.h date back to the separate of_platform_bus_type before it was merged into the regular platform bus. As part of that merge prepping Arm DT support 13 years ago, they "temporarily" include each other. They also include platform_device.h and of.h. As a result, there's a pretty much random mix of those include files used throughout the tree. In order to detangle these headers and replace the implicit includes with struct declarations, users need to explicitly include the correct includes. Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Rob Herring <[email protected]>
* drivers: remove struct module * setting from struct classGreg Kroah-Hartman2023-03-171-1/+0
| | | | | | | | | | | | | There is no need to manually set the owner of a struct class, as the registering function does it automatically, so remove all of the explicit settings from various drivers that did so as it is unneeded. This allows us to remove this pointer entirely from this structure going forward. Cc: "Rafael J. Wysocki" <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Greg Kroah-Hartman <[email protected]>
* mux: Fix struct mux_state kernel-doc commentYang Li2022-02-041-1/+1
| | | | | | | | | | | | | A warning is reported because a colon was dropped, it is found by running scripts/kernel-doc, which is caused by using 'make W=1'. drivers/mux/core.c:44: warning: Function parameter or member 'state' not described in 'mux_state' Reported-by: Abaci Robot <[email protected]> Signed-off-by: Yang Li <[email protected]> Signed-off-by: Peter Rosin <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Greg Kroah-Hartman <[email protected]>
* mux: fix grammar, missing "is".Peter Rosin2022-02-041-1/+1
| | | | | | | | This makes it easier to parse. Signed-off-by: Peter Rosin <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Greg Kroah-Hartman <[email protected]>
* mux: add missing mux_state_getPeter Rosin2022-02-041-11/+29
| | | | | | | | | | | | And implement devm_mux_state_get in terms of the new function. Now we have both mux_state_get and mux_state_put as convenient functions ready to be exported should someone ever need unmanaged interfaces. Tested-by: Aswath Govindraju <[email protected]> Signed-off-by: Peter Rosin <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Greg Kroah-Hartman <[email protected]>
* mux: Add support for reading mux state from consumer DT nodeAswath Govindraju2022-02-041-21/+198
| | | | | | | | | | | | In some cases, we might need to provide the state of the mux to be set for the operation of a given peripheral. Therefore, pass this information using mux-states property. Link: https://lore.kernel.org/lkml/[email protected] Signed-off-by: Aswath Govindraju <[email protected]> Signed-off-by: Peter Rosin <[email protected]> (minor edits) Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Greg Kroah-Hartman <[email protected]>
* mux: add support for delay after muxingVincent Whitchurch2021-10-211-6/+32
| | | | | | | | | | | | | | Hardware may require some time for the muxed analog signals to settle after the muxing is changed. Allow users of the mux subsystem to specify this delay with the new mux_control_select_delay() function (and the _try equivalent). Signed-off-by: Vincent Whitchurch <[email protected]> Reviewed-by: Lars-Peter Clausen <[email protected]> Tested-by: Lars-Peter Clausen <[email protected]> Acked-by: Peter Rosin <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Jonathan Cameron <[email protected]>
* drivers: Introduce device lookup variants by of_nodeSuzuki K Poulose2019-07-301-6/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Introduce wrappers for {bus/driver/class}_find_device() to locate devices by its of_node. Cc: Maarten Lankhorst <[email protected]> Cc: Maxime Ripard <[email protected]> Cc: [email protected] Cc: David Airlie <[email protected]> Cc: Daniel Vetter <[email protected]> Cc: [email protected] Cc: Florian Fainelli <[email protected]> Cc: Frank Rowand <[email protected]> Cc: Heiko Stuebner <[email protected]> Cc: Liam Girdwood <[email protected]> Cc: [email protected] Cc: [email protected] Cc: [email protected] Cc: Mathieu Poirier <[email protected]> Cc: Rob Herring <[email protected]> Cc: Srinivas Kandagatla <[email protected]> Cc: Takashi Iwai <[email protected]> Cc: Alan Tull <[email protected]> Cc: [email protected] Cc: Peter Rosin <[email protected]> Cc: Florian Fainelli <[email protected]> Cc: Heiner Kallweit <[email protected]> Cc: "David S. Miller" <[email protected]> Cc: Andrew Lunn <[email protected]> Cc: Liam Girdwood <[email protected]> Cc: "Rafael J. Wysocki" <[email protected]> Cc: Thor Thayer <[email protected]> Cc: Jiri Slaby <[email protected]> Cc: Andrew Lunn <[email protected]> Cc: Peter Rosin <[email protected]> Signed-off-by: Suzuki K Poulose <[email protected]> Acked-by: Lee Jones <[email protected]> Acked-by: Wolfram Sang <[email protected]> # I2C part Acked-by: Moritz Fischer <[email protected]> # For FPGA part Acked-by: Mark Brown <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Greg Kroah-Hartman <[email protected]>
* Merge tag 'char-misc-4.16-rc1' of ↵Linus Torvalds2018-02-011-4/+1
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc Pull char/misc driver updates from Greg KH: "Here is the big pull request for char/misc drivers for 4.16-rc1. There's a lot of stuff in here. Three new driver subsystems were added for various types of hardware busses: - siox - slimbus - soundwire as well as a new vboxguest subsystem for the VirtualBox hypervisor drivers. There's also big updates from the FPGA subsystem, lots of Android binder fixes, the usual handful of hyper-v updates, and lots of other smaller driver updates. All of these have been in linux-next for a long time, with no reported issues" * tag 'char-misc-4.16-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc: (155 commits) char: lp: use true or false for boolean values android: binder: use VM_ALLOC to get vm area android: binder: Use true and false for boolean values lkdtm: fix handle_irq_event symbol for INT_HW_IRQ_EN EISA: Delete error message for a failed memory allocation in eisa_probe() EISA: Whitespace cleanup misc: remove AVR32 dependencies virt: vbox: Add error mapping for VERR_INVALID_NAME and VERR_NO_MORE_FILES soundwire: Fix a signedness bug uio_hv_generic: fix new type mismatch warnings uio_hv_generic: fix type mismatch warnings auxdisplay: img-ascii-lcd: add missing MODULE_DESCRIPTION/AUTHOR/LICENSE uio_hv_generic: add rescind support uio_hv_generic: check that host supports monitor page uio_hv_generic: create send and receive buffers uio: document uio_hv_generic regions doc: fix documentation about uio_hv_generic vmbus: add monitor_id and subchannel_id to sysfs per channel vmbus: fix ABI documentation uio_hv_generic: use ISR callback method ...
| * mux: add SPDX identifiers to all mux source filesPeter Rosin2018-01-091-4/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Remove all free-text license texts. This is done on a quest to remove the 700+ different ways that files in the kernel describe the GPL license text. No copyright headers or other non-license-description text was removed. Reviewed-by: Philippe Ombredanne <[email protected]> Acked-by: Philipp Zabel <[email protected]> Signed-off-by: Peter Rosin <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
* | mux: core: fix double get_device()Hans de Goede2018-01-091-1/+3
|/ | | | | | | | | | | class_find_device already does a get_device on the returned device. So the device returned by of_find_mux_chip_by_node is already referenced and we should not reference it again (and unref it on error). Signed-off-by: Hans de Goede <[email protected]> Signed-off-by: Peter Rosin <[email protected]> Cc: stable <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
* mux: make device_type constBhumika Goyal2017-08-291-1/+1
| | | | | | | | | | Make this const as it is only stored in the type field of a device structure, which is const. Done using Coccinelle. Signed-off-by: Bhumika Goyal <[email protected]> Signed-off-by: Peter Rosin <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
* mux: zap mux- prefix from the source filesPeter Rosin2017-08-281-0/+547
Preserve the module names with Makefile additions. Signed-off-by: Peter Rosin <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>