tech-kern archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: graphic drivers and simplefb



On Thu, 5 Apr 2018, Manuel Bouyer wrote:

On Thu, Apr 05, 2018 at 07:40:35AM -0300, Jared McNeill wrote:
On Thu, 5 Apr 2018, Manuel Bouyer wrote:

Does it really do that ?
Reading the sources nothing is displayed until simplefb_attach() is called.
simplefb_console_consinit() calls genfb_cnattach() but it does nothing.
The dmesg buffer is replayed when genfb attaches with the console flag.

Doh, you're right. I'll have to fix that :)

but that's not easy. You'd need not only simplefb but also the
raster stuff to be set up. I'm not sure we want to go that far
in the early stages of the kenrel boot.
Things are even worse when we have to set up a full graphic pipeline.
You may even need interrupts ...

For simplefb I have everything I need..


Actually FDT_CONSOLE doens't prevent the serial port from taking over the
console if the stdout-path says so - and even if the command line says
otherwise.

Looks like we're missing a call to com_is_console in sunxi_com. This should
be fixed too..

I've been wondering about it too. But anyway, something, somewhere, it DTRT.
I have 3 serial ports active in my platform, and only com0 is console.
And if I change stdout-path (like my patch does, or in the fdt) then
com0 is not console any more.

This is because we call comcnattach (via FDT_CONSOLE) only for the one specified by stdout-path, and com.c:com_attach_subr only attaches console to that one.

Actually it works with simplefb because /chosen/framebuffer is probed and
attaches after com0 (and it's not an ordering kludge: it's just luck).
As sunxidep is attached before com0, com0 has the last word.

Not behavior I want to rely on :/

Note that this is also how allwniner works: com0 is console,
until a graphic driver attaches. In allwinner serial ports are attached
before graphics.
And I'd like to keep this behavior, it's very usefull for debugging.

Boards exist where serial console is difficult or impossible to access. Lets come up with a solution that satisfies all cases..

Home | Main Index | Thread Index | Old Index