diff options
author | Tomi Valkeinen <tomi.valkeinen@ti.com> | 2010-06-02 17:48:22 +0300 |
---|---|---|
committer | Tomi Valkeinen <tomi.valkeinen@ti.com> | 2011-05-11 14:19:23 +0300 |
commit | c6f65e1a4381a2271de1b5dccc94d6c6faad26dc (patch) | |
tree | b7d0a010d55a17e5e78dbf8f2a35f4e3be04f18b /drivers/video/omap2 | |
parent | f1aafdcd42ad45a4bda5cb8f4a6782b0e48549ba (diff) | |
download | blackbird-obmc-linux-c6f65e1a4381a2271de1b5dccc94d6c6faad26dc.tar.gz blackbird-obmc-linux-c6f65e1a4381a2271de1b5dccc94d6c6faad26dc.zip |
OMAP: DSS2: VENC: make 20ms venc bug-fix sleep optional
There's a 20ms sleep after VENC reset. It's unknown what bug this
circumvents and on what platforms. Add a Kconfig option to disable the
sleep.
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
Diffstat (limited to 'drivers/video/omap2')
-rw-r--r-- | drivers/video/omap2/dss/Kconfig | 12 | ||||
-rw-r--r-- | drivers/video/omap2/dss/venc.c | 3 |
2 files changed, 15 insertions, 0 deletions
diff --git a/drivers/video/omap2/dss/Kconfig b/drivers/video/omap2/dss/Kconfig index 458cfe128103..5b45c0c33e1c 100644 --- a/drivers/video/omap2/dss/Kconfig +++ b/drivers/video/omap2/dss/Kconfig @@ -136,4 +136,16 @@ config OMAP2_DSS_SLEEP_BEFORE_RESET However, 50ms is quite long time to sleep, and with some configurations the SYNC_LOST may never happen, so the sleep can be disabled here. + +config OMAP2_DSS_SLEEP_AFTER_VENC_RESET + bool "Sleep 20ms after VENC reset" + default y + help + There is a 20ms sleep after VENC reset which seemed to fix the + reset. The reason for the bug is unclear, and it's also unclear + on what platforms this happens. + + This option enables the sleep, and is enabled by default. You can + disable the sleep if it doesn't cause problems on your platform. + endif diff --git a/drivers/video/omap2/dss/venc.c b/drivers/video/omap2/dss/venc.c index 3269301dc471..d5d4c5af9069 100644 --- a/drivers/video/omap2/dss/venc.c +++ b/drivers/video/omap2/dss/venc.c @@ -373,8 +373,11 @@ static void venc_reset(void) } } +#ifdef CONFIG_OMAP2_DSS_SLEEP_AFTER_VENC_RESET /* the magical sleep that makes things work */ + /* XXX more info? What bug this circumvents? */ msleep(20); +#endif } static void venc_enable_clocks(int enable) |