summaryrefslogtreecommitdiff
path: root/drivers/ssb/driver_gpio.c
AgeCommit message (Collapse)AuthorFilesLines
2025-08-07treewide: rename GPIO set callbacks back to their original namesBartosz Golaszewski1-2/+2
The conversion of all GPIO drivers to using the .set_rv() and .set_multiple_rv() callbacks from struct gpio_chip (which - unlike their predecessors - return an integer and allow the controller drivers to indicate failures to users) is now complete and the legacy ones have been removed. Rename the new callbacks back to their original names in one sweeping change. Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
2025-07-24ssb: use new GPIO line value setter callbacks for the second GPIO chipBartosz Golaszewski1-3/+5
Because the other chip is guarded in an unlikely ifdef, I missed it when converting this driver. Fix it now. Fixes: 757259db79fc ("ssb: use new GPIO line value setter callbacks") Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org> Link: https://patch.msgid.link/20250723141257.51412-1-brgl@bgdev.pl Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2025-06-20ssb: use new GPIO line value setter callbacksBartosz Golaszewski1-3/+5
struct gpio_chip now has callbacks for setting line values that return an integer, allowing to indicate failures. Convert the driver to using them. Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org> Link: https://patch.msgid.link/20250610-gpiochip-set-rv-ssb-v1-1-0bee5b45b411@linaro.org Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2025-04-23irqdomain: ssb: Switch to irq_domain_create_linear()Jiri Slaby (SUSE)1-4/+4
irq_domain_add_linear() is going away as being obsolete now. Switch to the preferred irq_domain_create_linear(). That differs in the first parameter: It takes more generic struct fwnode_handle instead of struct device_node. Therefore, of_fwnode_handle() is added around the parameter. Note some of the users can likely use dev->fwnode directly instead of indirect of_fwnode_handle(dev->of_node). But dev->fwnode is not guaranteed to be set for all, so this has to be investigated on case to case basis (by people who can actually test with the HW). Signed-off-by: Jiri Slaby (SUSE) <jirislaby@kernel.org> Cc: Michael Buesch <m@bues.ch> Cc: linux-wireless@vger.kernel.org Link: https://patch.msgid.link/20250319092951.37667-38-jirislaby@kernel.org Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2022-09-19ssb: gpio: Use generic_handle_irq_safe()Sebastian Andrzej Siewior1-2/+4
On PREEMPT_RT enabled kernels the demultiplex interrupt handler is force threaded and runs with interrupts enabled. The invocation of generic_handle_domain_irq() with interrupts enabled triggers a lockdep warning due to a non-irq safe lock acquisition. Instead of disabling interrupts on the driver level, use generic_handle_domain_irq_safe(). [ tglx: Split out from combo patch ] Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de> Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Link: https://lore.kernel.org/r/YnkfWFzvusFFktSt@linutronix.de
2021-06-15ssb: gpio: Fix alignment of commentShubhankar Kuranagatti1-2/+4
The closing */ has been shifted to a new line This is done to maintain code uniformity. Acked-by: Michael Büsch <m@bues.ch> Signed-off-by: Shubhankar Kuranagatti <shubhankarvk@gmail.com> Signed-off-by: Kalle Valo <kvalo@codeaurora.org> Link: https://lore.kernel.org/r/20210428160747.qy23g6zpmheiacpl@kewl-virtual-machine
2019-06-25ssb/gpio: Remove unnecessary WARN_ON from driver_gpioMichael Büsch1-6/+0
The WARN_ON triggers on older BCM4401-B0 100Base-TX ethernet controllers. The warning serves no purpose. So let's just remove it. Reported-by: H Buus <ubuntu@hbuus.com> Signed-off-by: Michael Büsch <m@bues.ch> Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
2018-08-09ssb: Remove SSB_WARN_ON, SSB_BUG_ON and SSB_DEBUGMichael Büsch1-2/+2
Use the standard WARN_ON instead. If a small kernel is desired, WARN_ON can be disabled globally. Also remove SSB_DEBUG. Besides WARN_ON it only adds a tiny debug check. Include this check unconditionally. Signed-off-by: Michael Buesch <m@bues.ch> Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
2018-08-09ssb: Remove home-grown printk wrappersMichael Büsch1-2/+2
Replace the ssb printk wrappers by standard print helpers. Also remove SSB_SILENT. Nobody should use it anyway. Originally submitted by Joe Perches <joe@perches.com>. Modified to add dev_... based printks. Signed-off-by: Michael Buesch <m@bues.ch> Tested-by: Michael Buesch <m@bues.ch> Cc: Joe Perches <joe@perches.com> Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
2016-07-06SSB: Change bare unsigned to unsigned int to suit coding styleHugh Sipière1-11/+11
These lines just have unsigned gpio rather than unsigned int gpio. I changed it to suit the coding style. Michael Buesch told me to send this to the MIPS tree. Signed-off-by: Hugh Sipière <hgsipiere@gmail.com> Acked-by: Michael Buesch <m@bues.ch> Cc: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/13460/ Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2016-04-26ssb: gpio_driver: use gpiochip data pointerLinus Walleij1-19/+14
This makes the driver use the data pointer added to the gpio_chip to store a pointer to the state container instead of relying on container_of(). Cc: Hauke Mehrtens <hauke@hauke-m.de> Cc: Michael Buesch <m@bues.ch> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2014-09-18driver:gpio remove all usage of gpio_remove retval in driverabdoulaye berthe1-1/+2
this remove all reference to gpio_remove retval in all driver except pinctrl and gpio. the same thing is done for gpio and pinctrl in two different patches. Signed-off-by: Abdoulaye Berthe <berthe.ab@gmail.com> Acked-by: Michael Büsch <m@bues.ch> Acked-by: Dmitry Torokhov <dmitry.torokhov@gmail.com> Acked-by: Mauro Carvalho Chehab <m.chehab@samsung.com> Acked-by: Tomi Valkeinen <tomi.valkeinen@ti.com> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2014-01-25ssb: gpio: add own IRQ domainRafał Miłecki1-16/+290
Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Acked-by: Hauke Mehrtens <hauke@hauke-m.de> Acked-by: Michael Buesch <m@bues.ch> Signed-off-by: John Crispin <blogic@openwrt.org> Patchwork: http://patchwork.linux-mips.org/patch/6342/
2013-02-09Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/netDavid S. Miller1-0/+12
Synchronize with 'net' in order to sort out some l2tp, wireless, and ipv6 GRE fixes that will be built on top of in 'net-next'. Signed-off-by: David S. Miller <davem@davemloft.net>
2013-02-05ssb: unregister gpios before unloading ssbHauke Mehrtens1-0/+12
This patch unregisters the gpio chip before ssb gets unloaded. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2013-01-31ssb: add gpio_to_irqHauke Mehrtens1-0/+22
The old bcm47xx gpio code had support for gpio_to_irq, but the new code did not provide this function, but returned -ENXIO all the time. This patch adds the missing function. arch/mips/bcm47xx/wgt634u.c calls gpio_to_irq() and got the correct irq number with the old gpio handling code. With this patch the code in wgt634u.c should work again. I do not have a wgt634u to test this. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-11-22ssb: add GPIO driverHauke Mehrtens1-0/+176
Register a GPIO driver to access the GPIOs provided by the chip. The GPIOs of the SoC should always start at 0 and the other GPIOs could start at a random position. There is just one SoC in a system and when they start at 0 the number is predictable. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> Patchwork: http://patchwork.linux-mips.org/patch/4591 Acked-by: Florian Fainelli <florian@openwrt.org>