Patch "gpio: mpc8xxx: Fix support for IRQ_TYPE_LEVEL_LOW flow_type in mpc85xx" has been added to the 5.15-stable tree

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

 



This is a note to let you know that I've just added the patch titled

    gpio: mpc8xxx: Fix support for IRQ_TYPE_LEVEL_LOW flow_type in mpc85xx

to the 5.15-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     gpio-mpc8xxx-fix-support-for-irq_type_level_low-flow.patch
and it can be found in the queue-5.15 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.



commit db5dffb080bb8378897fdd999b8e9c6e67a8fab1
Author: Pali Rohár <pali@xxxxxxxxxx>
Date:   Tue Sep 6 12:54:31 2022 +0200

    gpio: mpc8xxx: Fix support for IRQ_TYPE_LEVEL_LOW flow_type in mpc85xx
    
    [ Upstream commit 279c12df8d2efb28def9d037f288cbfb97c30fe2 ]
    
    Commit e39d5ef67804 ("powerpc/5xxx: extend mpc8xxx_gpio driver to support
    mpc512x gpios") implemented support for IRQ_TYPE_LEVEL_LOW flow type in
    mpc512x via falling edge type. Do same for mpc85xx which support was added
    in commit 345e5c8a1cc3 ("powerpc: Add interrupt support to mpc8xxx_gpio").
    
    Fixes probing of lm90 hwmon driver on mpc85xx based board which use level
    interrupt. Without it kernel prints error and refuse lm90 to work:
    
        [   15.258370] genirq: Setting trigger mode 8 for irq 49 failed (mpc8xxx_irq_set_type+0x0/0xf8)
        [   15.267168] lm90 0-004c: cannot request IRQ 49
        [   15.272708] lm90: probe of 0-004c failed with error -22
    
    Fixes: 345e5c8a1cc3 ("powerpc: Add interrupt support to mpc8xxx_gpio")
    Signed-off-by: Pali Rohár <pali@xxxxxxxxxx>
    Signed-off-by: Bartosz Golaszewski <brgl@xxxxxxxx>
    Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

diff --git a/drivers/gpio/gpio-mpc8xxx.c b/drivers/gpio/gpio-mpc8xxx.c
index a964e25ea620..763256efddc2 100644
--- a/drivers/gpio/gpio-mpc8xxx.c
+++ b/drivers/gpio/gpio-mpc8xxx.c
@@ -172,6 +172,7 @@ static int mpc8xxx_irq_set_type(struct irq_data *d, unsigned int flow_type)
 
 	switch (flow_type) {
 	case IRQ_TYPE_EDGE_FALLING:
+	case IRQ_TYPE_LEVEL_LOW:
 		raw_spin_lock_irqsave(&mpc8xxx_gc->lock, flags);
 		gc->write_reg(mpc8xxx_gc->regs + GPIO_ICR,
 			gc->read_reg(mpc8xxx_gc->regs + GPIO_ICR)



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux