diff options
author | Jong Kim <jongk@nvidia.com> | 2012-12-20 17:16:57 -0800 |
---|---|---|
committer | Winnie Hsu <whsu@nvidia.com> | 2012-12-20 17:27:53 -0800 |
commit | a7d49070ee698d42f0fffee54d184c6ebb6ce487 (patch) | |
tree | 047c0cba509950ad12c13c0f3c39e2f9918a8ad9 /drivers | |
parent | 83009bd159cfc34e30fdf0add82722d09ad92556 (diff) |
arm: tegra: dc: corrct order to enable/disable dc irq
When porting change from mainline to balance dc irq, the change
of enable/disable order was not ported, thus dc irq is disabled
if dc is enabled during probe.
This is part of http://git-master/r/146107.
Original change is big for many bugs, only port one here.
bug 1173177
bug 1173038
bug 1008313
Change-Id: Idd703daca9f980e905b185eeeae19dc6309d76e5
Signed-off-by: Dongfang Shi <dshi@nvidia.com>
Reviewed-on: http://git-master/r/162868
(cherry picked from commit 6ddd8b02f7a17d2269290d06159c20860ffb92e9)
Signed-off-by: Jong Kim <jongk@nvidia.com>
Reviewed-on: http://git-master/r/173249
Reviewed-by: Winnie Hsu <whsu@nvidia.com>
Reviewed-by: Jon Mayo <jmayo@nvidia.com>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/video/tegra/dc/dc.c | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/drivers/video/tegra/dc/dc.c b/drivers/video/tegra/dc/dc.c index d01df2f520b8..ed54e9e495c2 100644 --- a/drivers/video/tegra/dc/dc.c +++ b/drivers/video/tegra/dc/dc.c @@ -1875,13 +1875,6 @@ static int tegra_dc_probe(struct nvhost_device *ndev, dc->ext = NULL; } - mutex_lock(&dc->lock); - if (dc->pdata->flags & TEGRA_DC_FLAG_ENABLED) { - _tegra_dc_set_default_videomode(dc); - dc->enabled = _tegra_dc_enable(dc); - } - mutex_unlock(&dc->lock); - /* interrupt handler must be registered before tegra_fb_register() */ if (request_irq(irq, tegra_dc_irq, 0, dev_name(&ndev->dev), dc)) { @@ -1889,6 +1882,14 @@ static int tegra_dc_probe(struct nvhost_device *ndev, ret = -EBUSY; goto err_put_emc_clk; } + disable_dc_irq(irq); + + mutex_lock(&dc->lock); + if (dc->pdata->flags & TEGRA_DC_FLAG_ENABLED) { + _tegra_dc_set_default_videomode(dc); + dc->enabled = _tegra_dc_enable(dc); + } + mutex_unlock(&dc->lock); tegra_dc_create_debugfs(dc); |