mirror of
https://github.com/raspberrypi/linux.git
synced 2025-12-06 01:49:46 +00:00
media: bcm2835-unicam: Always service interrupts
From when bringing up the driver, there was a check in the isr to ignore interrupts (claiming them handled) should the driver not be streaming. The VPU now will not register a camera driver if it finds a CSI2 node enabled in device tree, therefore this flawed check is redundant. https://github.com/raspberrypi/linux/issues/3602 Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
This commit is contained in:
committed by
Dom Cobley
parent
54a194a70f
commit
f313e2abdc
@@ -784,12 +784,6 @@ static bool unicam_all_nodes_streaming(struct unicam_device *dev)
|
||||
return ret;
|
||||
}
|
||||
|
||||
static bool unicam_all_nodes_disabled(struct unicam_device *dev)
|
||||
{
|
||||
return !dev->node[IMAGE_PAD].streaming &&
|
||||
!dev->node[METADATA_PAD].streaming;
|
||||
}
|
||||
|
||||
static void unicam_queue_event_sof(struct unicam_device *unicam)
|
||||
{
|
||||
struct v4l2_event event = {
|
||||
@@ -817,15 +811,6 @@ static irqreturn_t unicam_isr(int irq, void *dev)
|
||||
u32 ista, sta;
|
||||
u64 ts;
|
||||
|
||||
/*
|
||||
* Don't service interrupts if not streaming.
|
||||
* Avoids issues if the VPU should enable the
|
||||
* peripheral without the kernel knowing (that
|
||||
* shouldn't happen, but causes issues if it does).
|
||||
*/
|
||||
if (unicam_all_nodes_disabled(unicam))
|
||||
return IRQ_NONE;
|
||||
|
||||
sta = reg_read(unicam, UNICAM_STA);
|
||||
/* Write value back to clear the interrupts */
|
||||
reg_write(unicam, UNICAM_STA, sta);
|
||||
|
||||
Reference in New Issue
Block a user