From: Tomi Valkeinen Date: Thu, 16 Oct 2014 09:17:44 +0000 (+0300) Subject: OMAPFB: fix overlay disable when freeing resources. X-Git-Tag: v3.18-rc3~29^2^2~7 X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=63cec5a22c13a80d80cb38acdb5b555eafb74ddc;p=karo-tx-linux.git OMAPFB: fix overlay disable when freeing resources. When omapfb is shutting down, it will disable all the overlays. However, instead of actually disabling all the overlays, it disables only all the overlays that are currently attached to framebuffers. On OMAP4+, this leaves the fourth overlay left enabled. Fix the loop so that we actually go through all the overlays. Signed-off-by: Tomi Valkeinen --- diff --git a/drivers/video/fbdev/omap2/omapfb/omapfb-main.c b/drivers/video/fbdev/omap2/omapfb/omapfb-main.c index 10207daf41fe..a04096a63cb1 100644 --- a/drivers/video/fbdev/omap2/omapfb/omapfb-main.c +++ b/drivers/video/fbdev/omap2/omapfb/omapfb-main.c @@ -1833,14 +1833,10 @@ static void omapfb_free_resources(struct omapfb2_device *fbdev) if (fbdev == NULL) return; - for (i = 0; i < fbdev->num_fbs; i++) { - struct omapfb_info *ofbi = FB2OFB(fbdev->fbs[i]); - int j; + for (i = 0; i < fbdev->num_overlays; i++) { + struct omap_overlay *ovl = fbdev->overlays[i]; - for (j = 0; j < ofbi->num_overlays; j++) { - struct omap_overlay *ovl = ofbi->overlays[j]; - ovl->disable(ovl); - } + ovl->disable(ovl); } for (i = 0; i < fbdev->num_fbs; i++)