[U-Boot] Disabling video in bootm (cleanup_before_linux)

Otavio Salvador
2012-09-22T13:35:43Z

On Fri, Sep 21, 2012 at 2:44 PM, Eric Nelson
<eric.nelson@boundarydevices.com> wrote:
> On 09/21/2012 10:22 AM, Anatolij Gustschin wrote:
>>
>> Hi Eric,
>>
>> On Fri, 21 Sep 2012 09:38:23 -0700
>> Eric Nelson<eric.nelson@boundarydevices.com> wrote:
>>
>>> Hi all,
>>>
>>> While looking into some trouble booting the latest Linux kernel patches
>>> for i.MX6 display support, I found that the kernel driver was thrown off
>>> by
>>> the interrupt status bits in the i.MX6 IPU.
>>>
>>> Until and unless we have the ability to hand off a 'live' display, it
>>> seems
>>> that we should disable the video driver as a part of the 'bootm' process.
>>>
>>> At the very least, doing this will avoid the possibility of trash on the
>>> display during the transition.
>>>
>>> I've been looking, and I don't see a place to tap into this process.
>>> It seems that having a shutdown routine for the display drivers
>>> (cfb_console?) is the way to go.
>>
>>
>> cfb_console driver is a renderer of the characters and bitmaps
>> to the framebuffer memory and is not a good place for a shutdown
>> routine, I think. But we can add a shutdown function to the IPU
>> driver drivers/video/mxc_ipuv3_fb.c and call it before booting.
>> bootm code in common/cmd_bootm.c has a weak arch_preboot_os()
>> function that can be overridden by platform specific preboot
>> routine. We could define a preboot function in
>>
>> arch/arm/cpu/armv7/mx6/soc.c
>> or in
>> arch/arm/cpu/armv7/imx-common/cpu.c
>>
>> and call IPU shutdown routine in it.
>>
>
> Thanks Anatolij.
>
> This is just what we need. I'll send a patch shortly.

It would be nice to try to add support for mx5 too so we fix same boot
hungs in mx5 kernels. I am adding Fabio in CC as he knows more about
it.

--
Otavio Salvador O.S. Systems
E-mail: otavio at ossystems.com.br http://www.ossystems.com.br
Mobile: +55 53 9981-7854 http://projetos.ossystems.com.br