A lot of suggesitons, wow! With a10disp I've obtained some results. I need to disable the hdmi, but enabling back doesn't work. I need to re-apply the display settings. This seems forces a rewrite of the fb. It uses fbset which has give me some partial results in the past. So console comes back. If I need to refresh X11 as well, a xrefresh does the trick. All commands are executable via ssh as well and helps me to prevent writing without seeing what I'm typing :)
Thanks!! Simon Il giorno mercoledì 18 febbraio 2015 12:51:23 UTC+1, Siarhei Siamashka ha scritto: > > On Wed, 18 Feb 2015 11:04:01 +0100 > Michal Suchanek <hram...@gmail.com <javascript:>> wrote: > > > On 18 February 2015 at 06:15, Siarhei Siamashka > > <siarhei....@gmail.com <javascript:>> wrote: > > > On Wed, 18 Feb 2015 07:08:42 +0200 > > > Siarhei Siamashka <siarhei....@gmail.com <javascript:>> wrote: > > > > > >> On Fri, 13 Feb 2015 09:04:48 -0800 (PST) > > >> Simo Xefil <xe...@xefil.com <javascript:>> wrote: > > >> > > >> > > > >> > Hello Siarhei, > > >> > > > >> > First of all thanks for your answer. > > >> > Basically, I'm searching a way to let the drivers work properly > based on > > >> > the hardware performances. framebuffer is much more faster > > >> > > >> Yes, the mali framebuffer driver is roughly ~20% faster than the x11 > > >> driver, at least as measured in glmark2-es2. > > >> > > >> And the difference is even bigger than that if the system is not > > >> configured optimally. For example, the ondemand cpufreq governor > > >> interacts really bad with the X server. Also you need to get the > > >> buffers reservation right, but having the settings partially in the > > >> script.bin and partially in the command line for the sunxi-3.4 kernel > > >> does not make it particularly easy. > > >> > > >> There were attempts to ensure that the configuration is reasonable > > >> "out of the box". But there was always somebody with some sort of > > >> objections. That's how "democracy" works. > > >> > > >> Just one week of "dictatorship" could have really solved a lot > > >> of issues in the sunxi-3.4 kernel :-) > > >> > > >> >, so, for such devices is the best choise. > > >> > > >> Assuming that you can accept the limitations. There is no free lunch. > > >> > > >> > I'm not asking the driver to handle multi-tasking. Using the 'test' > program > > >> > from the terminal (not within X11) I got the same results. > > >> > The monitor is not refreshed after the triangle is drawn even if > the > > >> > program is already exited. > > >> > > >> If a program has rendered a triangle in the framebuffer, then this > > >> triangle just stays in the framebuffer. This is a perfectly obvious > > >> outcome. > > >> > > >> If you don't want to see this triangle anymore, then somebody needs > to > > >> clear the framebuffer and use it for something else. > > >> > > >> > Back to desktop env, programs like XBMC (A10 fork) or emulators > like > > >> > retroarch, compiled to use framebuffer, are working very well, > expect when > > >> > you exit the program. > > >> > At this point, the last printed image remains on screen. The only > way I've > > >> > found until today is to restart lxde or switch between X11 and > terminal to > > >> > force a refresh. > > >> > > >> There are surely plenty of ways to clear the framebuffer. And you can > > >> also even make a copy of the old framebuffer data and restore it > after > > >> the application has terminated. Everything is up to you. Or up to the > > >> developers of the framebuffer based applications. > > >> > > >> > With an emulator, where I could need switch between games often, > every time > > >> > I quit the game, the image remains impressed and I cannot change > it. > > >> > > > >> > I've no idea how to invent a way to force the refresh. If you have > an idea > > >> > I would try to investigate in that direction. > > >> > I don't expect a finished solution (even it, in case, would be of > course > > >> > appreciated). I'd try to find/try by myself, but have no idea where > to > > >> > search. > > >> > > > >> > Any suggestion is really welcome :-) > > >> > > >> Does, for example, running "cat /dev/zero > /dev/fb0" help? > > > > > > Or create a simple wrapper shell script, which might look like: > > > > > > #!/bin/sh > > > > > > dd if=/dev/fb0 of=/tmp/fbbackup.bin > > > <run-your-cool-game-or-emulator> > > > dd if=/tmp/fbbackup.bin of=/dev/fb0 > > > > > > > > > Is this actually working? > > > > iirc there are two issues. > > > > 1) framebuffer is not cleared (graphics remains visible but typed text > > is also visible) > > 2) dual-buffering or other layer operation leaves enabled a layer > > different from the one fbcon draws to (graphics remains visible, typed > > text is not seen) > > > > I always used the graphics tests remotely exactly to mitigate issues > > like these so I don't see much practical difference between the two. > > In the doublebufferling case you can just run the test repeatedly > > until the right buffer happens to be on-screen when the test ends. > > > > For running tests from local console the buffering bug might be much > > more annoying. > > That's a good point about double-buffering. The FBIOPAN_DISPLAY ioctl > is probably also needed for a full recovery. > > When directly using the framebuffer, each application has full access > to it (preferably with nobody else concurrently using the framebuffer, > or things become really ugly) and may leave the framebuffer in > whatever messed up state as it likes. With great power comes great > responsibility. > > *Maybe* the sunxi display driver in the kernel could keep track of the > FBIOPAN_DISPLAY ioctl use. And automatically restore the start of the > visible part of the framebuffer to the default value when two > conditions are met: > 1. a framebuffer descriptor is closed > 2. this particular descriptor was the last one to set the panning > > I wonder how are the other framebuffer drivers handling this situation? > > -- > Best regards, > Siarhei Siamashka > -- You received this message because you are subscribed to the Google Groups "linux-sunxi" group. To unsubscribe from this group and stop receiving emails from it, send an email to linux-sunxi+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.