linux/drivers/video/fbdev
Fabio Estevam b82fe6ddd7 video: fbdev: imxfb: Provide a reset mechanism
Currently when we boot the kernel on a mx25pdk the LCDC controller
does not show the Linux logo on boot.

This problem is well explained by Sascha Hauer:

"Unfortunately this LCD controller does not have an enable bit. The
controller starts directly when the clocks are enabled. If the clocks
are enabled when the controller is not yet programmed with proper
register values then it just goes into some undefined state. What I
suspect is that the clocks already were enabled before driver probe,
presumably by the bootloader, so the controller is already in undefined
state when entering Linux. Now by dis/enabling the ipg clock you
effectively reset the controller. Since you have programmed it with
valid register values in the mean time it starts working after this
reset."

So do as suggested and force a reset of the LCDC hardware by
enabling and disabling the IPG clock.

With this change the Linux logo can be seen on boot on a mx25pdk.

Signed-off-by: Fabio Estevam <fabio.estevam@nxp.com>
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2016-01-29 14:20:16 +02:00
..
aty radeonfb: Deinline large functions 2015-10-08 12:24:12 +03:00
core wrappers for ->i_mutex access 2016-01-22 18:04:28 -05:00
exynos fbdev: s6e8ax0: avoid unused function warnings 2016-01-29 13:36:20 +02:00
geode video: constify geode ops structures 2015-12-15 15:41:22 +02:00
i810
intelfb
kyro
matrox
mb862xx video: fbdev: mb862xx: Fix module autoload for OF platform driver 2015-09-24 14:35:36 +03:00
mbx
mmp fbdev: mmp: print IRQ resource using %pR format string 2016-01-29 13:42:58 +02:00
nvidia
omap fbdev changes for 4.4 2015-11-10 10:00:09 -08:00
omap2 drm/omap: move omapdss & displays under omapdrm 2015-12-29 11:07:48 +02:00
riva video: fbdev: rivafb: unlock chip before probiding EDID 2015-12-15 15:41:23 +02:00
savage
sis
vermilion mm, page_alloc: distinguish between being unable to sleep, unwilling to sleep and avoiding waking kswapd 2015-11-06 17:50:42 -08:00
via video: fbdev: via: use gpiochip data pointer 2016-01-07 00:02:34 +01:00
68328fb.c
Kconfig video: fbdev: pxafb: initial devicetree conversion 2015-12-15 15:41:24 +02:00
Makefile fbdev: Remove unused SH-Mobile HDMI driver 2015-12-15 15:41:22 +02:00
acornfb.c
acornfb.h
amba-clcd-versatile.c
amba-clcd.c
amifb.c
arcfb.c
arkfb.c
asiliantfb.c
atafb.c
atafb.h
atafb_iplan2p2.c
atafb_iplan2p4.c
atafb_iplan2p8.c
atafb_mfb.c
atafb_utils.h
atmel_lcdfb.c
au1100fb.c
au1100fb.h
au1200fb.c
au1200fb.h
auo_k190x.c fbdev: auo_k190x: avoid unused function warnings 2015-12-15 15:41:23 +02:00
auo_k190x.h
auo_k1900fb.c
auo_k1901fb.c
bf54x-lq043fb.c
bf537-lq035.c
bfin-lq035q1-fb.c
bfin-t350mcqb-fb.c
bfin_adv7393fb.c
bfin_adv7393fb.h
broadsheetfb.c fbdev: broadsheetfb: fix memory leak 2015-09-30 10:33:57 +03:00
bt431.h
bt455.h
bw2.c
c2p.h
c2p_core.h
c2p_iplan2.c
c2p_planar.c
carminefb.c
carminefb.h
carminefb_regs.h
cg3.c
cg6.c
cg14.c
chipsfb.c
cirrusfb.c
clps711x-fb.c
clps711xfb.c
cobalt_lcdfb.c
controlfb.c
controlfb.h
cyber2000fb.c
cyber2000fb.h
da8xx-fb.c fbdev: da8xx-fb: remove incorrect type cast 2016-01-29 13:37:42 +02:00
dnfb.c
edid.h
efifb.c efifb: Add support for 64-bit frame buffer addresses 2015-10-12 14:20:06 +01:00
ep93xx-fb.c
fb-puv3.c
ffb.c
fm2fb.c
fsl-diu-fb.c video: fbdev: fsl: Fix kernel crash when diu_ops is not implemented 2015-12-09 12:57:06 +02:00
g364fb.c
gbefb.c
goldfishfb.c
grvga.c
gxt4500.c gxt4500: enable panning 2015-10-08 12:19:39 +03:00
hecubafb.c
hgafb.c
hitfb.c
hpfb.c
hyperv_fb.c
i740_reg.h
i740fb.c drivers/video/fbdev/i740fb: remove unused variable 2015-12-15 15:41:21 +02:00
igafb.c
imsttfb.c
imxfb.c video: fbdev: imxfb: Provide a reset mechanism 2016-01-29 14:20:16 +02:00
jz4740_fb.c
leo.c
macfb.c
macmodes.c
macmodes.h
maxinefb.c
metronomefb.c
mx3fb.c
mxsfb.c
n411.c
neofb.c
nuc900fb.c
nuc900fb.h
ocfb.c ocfb: fix tgdel and tvdel timing parameters 2016-01-29 13:34:07 +02:00
offb.c
p9100.c
platinumfb.c
platinumfb.h
pm2fb.c
pm3fb.c
pmag-aa-fb.c
pmag-ba-fb.c
pmagb-b-fb.c
ps3fb.c
pvr2fb.c
pxa3xx-gcu.c
pxa3xx-gcu.h
pxa168fb.c
pxa168fb.h
pxafb.c video: fbdev: pxafb: fix out of memory error path 2016-01-18 10:26:17 +02:00
pxafb.h video: fbdev: pxafb: loosen the platform data bond 2015-12-15 15:41:24 +02:00
q40fb.c
s1d13xxxfb.c
s3c-fb.c
s3c2410fb.c
s3c2410fb.h
s3fb.c
sa1100fb.c
sa1100fb.h
sbuslib.c
sbuslib.h
sh7760fb.c
sh_mipi_dsi.c
sh_mobile_lcdcfb.c
sh_mobile_lcdcfb.h
sh_mobile_meram.c
simplefb.c simplefb: Claim and enable regulators 2015-12-15 15:41:21 +02:00
skeletonfb.c
sm501fb.c
sm712.h
sm712fb.c fbdev: sm712fb: avoid unused function warnings 2015-12-15 15:41:23 +02:00
smscufx.c
ssd1307fb.c fbdev: ssd1307fb: add ssd1309 support 2015-09-24 14:10:26 +03:00
sstfb.c
sticore.h
stifb.c
sunxvr500.c
sunxvr1000.c
sunxvr2500.c
tcx.c
tdfxfb.c
tgafb.c
tmiofb.c
tridentfb.c fbdev changes for 4.4 2015-11-10 10:00:09 -08:00
udlfb.c
uvesafb.c
valkyriefb.c
valkyriefb.h
vesafb.c
vfb.c
vga16fb.c
vt8500lcdfb.c
vt8500lcdfb.h
vt8623fb.c
w100fb.c
w100fb.h
wm8505fb.c
wm8505fb_regs.h
wmt_ge_rops.c
wmt_ge_rops.h
xen-fbfront.c
xilinxfb.c