lkml.org 
[lkml]   [2022]   [Dec]   [18]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH AUTOSEL 6.1 02/85] media: imx-jpeg: Disable useless interrupt to avoid kernel panic
    Date
    From: Ming Qian <ming.qian@nxp.com>

    [ Upstream commit c3720e65c9013a7b2a5dbb63e6bf6d74a35dd894 ]

    There is a hardware bug that the interrupt STMBUF_HALF may be triggered
    after or when disable interrupt.
    It may led to unexpected kernel panic.
    And interrupt STMBUF_HALF and STMBUF_RTND have no other effect.
    So disable them and the unused interrupts.

    meanwhile clear the interrupt status when disable interrupt.

    Signed-off-by: Ming Qian <ming.qian@nxp.com>
    Reviewed-by: Mirela Rabulea <mirela.rabulea@nxp.com>
    Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    drivers/media/platform/nxp/imx-jpeg/mxc-jpeg-hw.c | 4 +++-
    1 file changed, 3 insertions(+), 1 deletion(-)

    diff --git a/drivers/media/platform/nxp/imx-jpeg/mxc-jpeg-hw.c b/drivers/media/platform/nxp/imx-jpeg/mxc-jpeg-hw.c
    index 9418fcf740a8..ef28122a5ed4 100644
    --- a/drivers/media/platform/nxp/imx-jpeg/mxc-jpeg-hw.c
    +++ b/drivers/media/platform/nxp/imx-jpeg/mxc-jpeg-hw.c
    @@ -76,12 +76,14 @@ void print_wrapper_info(struct device *dev, void __iomem *reg)

    void mxc_jpeg_enable_irq(void __iomem *reg, int slot)
    {
    - writel(0xFFFFFFFF, reg + MXC_SLOT_OFFSET(slot, SLOT_IRQ_EN));
    + writel(0xFFFFFFFF, reg + MXC_SLOT_OFFSET(slot, SLOT_STATUS));
    + writel(0xF0C, reg + MXC_SLOT_OFFSET(slot, SLOT_IRQ_EN));
    }

    void mxc_jpeg_disable_irq(void __iomem *reg, int slot)
    {
    writel(0x0, reg + MXC_SLOT_OFFSET(slot, SLOT_IRQ_EN));
    + writel(0xFFFFFFFF, reg + MXC_SLOT_OFFSET(slot, SLOT_STATUS));
    }

    void mxc_jpeg_sw_reset(void __iomem *reg)
    --
    2.35.1
    \
     
     \ /
      Last update: 2022-12-18 17:02    [W:3.308 / U:0.184 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site