broadcom-diag: show error message in case something goes wrong with gpio irq
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@37668 3c298f89-4303-0410-b956-a3cf2f4a3e73master
parent
a049974896
commit
fd034dbcee
|
@ -1424,13 +1424,20 @@ static inline void ssb_maskset32(struct ssb_device *dev,
|
||||||
static void gpio_set_irqenable(int enabled, irqreturn_t (*handler)(int, void *))
|
static void gpio_set_irqenable(int enabled, irqreturn_t (*handler)(int, void *))
|
||||||
{
|
{
|
||||||
int irq;
|
int irq;
|
||||||
|
int err;
|
||||||
|
|
||||||
irq = gpio_to_irq(0);
|
irq = gpio_to_irq(0);
|
||||||
if (irq == -EINVAL) return;
|
if (irq < 0) {
|
||||||
|
pr_err("no irq for gpio available\n");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
if (enabled) {
|
if (enabled) {
|
||||||
if (request_irq(irq, handler, IRQF_SHARED, "gpio", handler))
|
err = request_irq(irq, handler, IRQF_SHARED, "gpio", handler);
|
||||||
|
if (err) {
|
||||||
|
pr_err("can not reqeust irq\n");
|
||||||
return;
|
return;
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
free_irq(irq, handler);
|
free_irq(irq, handler);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue