> -----Original Message-----
> From: [email protected] [mailto:linux-omap-
> [email protected]] On Behalf Of Archit Taneja
> Sent: Monday, July 19, 2010 5:26 PM
> To: [email protected]
> Cc: [email protected]; Semwal, Sumit; Mittal, Mukund; Taneja,
> Archit
> Subject: [PATCH 4/5] OMAP: DSS2: Video3 pipeline IRQs
>
> From: Sumit Semwal <[email protected]>
>
> Introduce Video3 pipeline IRQS for dumps and error handling
>
> Signed-off-by: Sumit Semwal <[email protected]>
> Signed-off-by: Mukund Mittal <[email protected]>
> Signed-off-by: Archit Taneja <[email protected]>
> ---
> arch/arm/plat-omap/include/plat/display.h | 2 ++
> drivers/video/omap2/dss/dispc.c | 23 ++++++++++++++++++++++-
> 2 files changed, 24 insertions(+), 1 deletions(-)
>
> diff --git a/arch/arm/plat-omap/include/plat/display.h b/arch/arm/plat-
> omap/include/plat/display.h
> index be83766..91796b6
> --- a/arch/arm/plat-omap/include/plat/display.h
> +++ b/arch/arm/plat-omap/include/plat/display.h
> @@ -44,6 +44,8 @@
> #define DISPC_IRQ_WAKEUP (1 << 16)
> #define DISPC_IRQ_SYNC_LOST_2 (1 << 17)
> #define DISPC_IRQ_VSYNC2 (1 << 18)
> +#define DISPC_IRQ_VID3_END_WIN (1 << 19)
> +#define DISPC_IRQ_VID3_FIFO_UNDERFLOW (1 << 20)
> #define DISPC_IRQ_ACBIAS_COUNT_STAT2 (1 << 21)
> #define DISPC_IRQ_FRAMEDONE2 (1 << 22)
>
> diff --git a/drivers/video/omap2/dss/dispc.c
> b/drivers/video/omap2/dss/dispc.c
> index 00aad04..8345ed7
> --- a/drivers/video/omap2/dss/dispc.c
> +++ b/drivers/video/omap2/dss/dispc.c
> @@ -173,7 +173,8 @@ struct dispc_reg { u16 idx; };
> DISPC_IRQ_SYNC_LOST | \
> DISPC_IRQ_SYNC_LOST_DIGIT | \
> (cpu_is_omap44xx() ? \
> - DISPC_IRQ_SYNC_LOST_2 : 0))
> + (DISPC_IRQ_VID3_FIFO_UNDERFLOW | \
> + DISPC_IRQ_SYNC_LOST_2) : 0))
[Hiremath, Vaibhav] This looks bit suspicious to me, against which tree this
patch has been generated? I think you have missed some of the patches in
between.
>
> #define DISPC_MAX_NR_ISRS 8
>
> @@ -2540,6 +2541,8 @@ void dispc_dump_irqs(struct seq_file *s)
> PIS(VSYNC2);
> PIS(ACBIAS_COUNT_STAT2);
> PIS(SYNC_LOST_2);
> + PIS(VID3_FIFO_UNDERFLOW);
> + PIS(VID3_END_WIN);
> }
> #undef PIS
> }
> @@ -3151,6 +3154,24 @@ static void dispc_error_worker(struct work_struct
> *work)
> }
> }
>
> + if (errors & DISPC_IRQ_VID3_FIFO_UNDERFLOW) {
> + DSSERR("VID3_FIFO_UNDERFLOW, disabling VID2\n");
[Hiremath, Vaibhav] typo mistake VID2 => VID3
Thanks,
Vaibhav
> + for (i = 0; i < omap_dss_get_num_overlays(); ++i) {
> + struct omap_overlay *ovl;
> + ovl = omap_dss_get_overlay(i);
> +
> + if (!(ovl->caps & OMAP_DSS_OVL_CAP_DISPC))
> + continue;
> +
> + if (ovl->id == 3) {
> + dispc_enable_plane(ovl->id, 0);
> + dispc_go(ovl->manager->id);
> + mdelay(50);
> + break;
> + }
> + }
> + }
> +
> if (errors & DISPC_IRQ_SYNC_LOST) {
> struct omap_overlay_manager *manager = NULL;
> bool enable = false;
> --
> 1.5.4.7
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-omap" in
> the body of a message to [email protected]
> More majordomo info at http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html