Loading drivers/mfd/wm8350-core.c +15 −1 Original line number Diff line number Diff line Loading @@ -1438,7 +1438,21 @@ int wm8350_device_init(struct wm8350 *wm8350, int irq, mutex_init(&wm8350->irq_mutex); INIT_WORK(&wm8350->irq_work, wm8350_irq_worker); if (irq) { ret = request_irq(irq, wm8350_irq, 0, int flags = 0; if (pdata && pdata->irq_high) { flags |= IRQF_TRIGGER_HIGH; wm8350_set_bits(wm8350, WM8350_SYSTEM_CONTROL_1, WM8350_IRQ_POL); } else { flags |= IRQF_TRIGGER_LOW; wm8350_clear_bits(wm8350, WM8350_SYSTEM_CONTROL_1, WM8350_IRQ_POL); } ret = request_irq(irq, wm8350_irq, flags, "wm8350", wm8350); if (ret != 0) { dev_err(wm8350->dev, "Failed to request IRQ: %d\n", Loading include/linux/mfd/wm8350/core.h +2 −0 Original line number Diff line number Diff line Loading @@ -640,9 +640,11 @@ struct wm8350 { * * @init: Function called during driver initialisation. Should be * used by the platform to configure GPIO functions and similar. * @irq_high: Set if WM8350 IRQ is active high. */ struct wm8350_platform_data { int (*init)(struct wm8350 *wm8350); int irq_high; }; Loading Loading
drivers/mfd/wm8350-core.c +15 −1 Original line number Diff line number Diff line Loading @@ -1438,7 +1438,21 @@ int wm8350_device_init(struct wm8350 *wm8350, int irq, mutex_init(&wm8350->irq_mutex); INIT_WORK(&wm8350->irq_work, wm8350_irq_worker); if (irq) { ret = request_irq(irq, wm8350_irq, 0, int flags = 0; if (pdata && pdata->irq_high) { flags |= IRQF_TRIGGER_HIGH; wm8350_set_bits(wm8350, WM8350_SYSTEM_CONTROL_1, WM8350_IRQ_POL); } else { flags |= IRQF_TRIGGER_LOW; wm8350_clear_bits(wm8350, WM8350_SYSTEM_CONTROL_1, WM8350_IRQ_POL); } ret = request_irq(irq, wm8350_irq, flags, "wm8350", wm8350); if (ret != 0) { dev_err(wm8350->dev, "Failed to request IRQ: %d\n", Loading
include/linux/mfd/wm8350/core.h +2 −0 Original line number Diff line number Diff line Loading @@ -640,9 +640,11 @@ struct wm8350 { * * @init: Function called during driver initialisation. Should be * used by the platform to configure GPIO functions and similar. * @irq_high: Set if WM8350 IRQ is active high. */ struct wm8350_platform_data { int (*init)(struct wm8350 *wm8350); int irq_high; }; Loading