tridentfb: fix hang on Blade3D with CONFIG_CC_OPTIMIZE_FOR_SIZE
authorOndrej Zary <linux@rainbow-software.org>
Mon, 24 Aug 2015 19:37:25 +0000 (21:37 +0200)
committerTomi Valkeinen <tomi.valkeinen@ti.com>
Thu, 24 Sep 2015 11:35:36 +0000 (14:35 +0300)
commit7f2ea957c1152a7b57c22af2ae603bf66965c06e
treeb527fb19e635db409917a68e5976f3faa866841b
parent8e9191ac7b29a250b2baab7069ea9cc614c5133c
tridentfb: fix hang on Blade3D with CONFIG_CC_OPTIMIZE_FOR_SIZE

When the kernel is compiled with -Os (CONFIG_CC_OPTIMIZE_FOR_SIZE), tridentfb
hangs the machine upon load with Blade3D cards unless acceleration is disabled.

This is caused by memcpy() which copies data byte-by-byte (rep movsb) when
compiled with -Os. The card does not like that - it requires 32-bit access.

Use iowrite_32() instead.

Signed-off-by: Ondrej Zary <linux@rainbow-software.org>
Acked-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
drivers/video/fbdev/tridentfb.c