[U-Boot] [linux-sunxi] [u-boot 2/2] sun5i: bump DEBE priority (useful on a10s only)

Siarhei Siamashka
2015-01-20T08:16:30Z

On Mon, 19 Jan 2015 06:29:47 +0200
Siarhei Siamashka <siarhei.siamashka@gmail.com> wrote:

> On Sun, 04 Jan 2015 20:49:38 +0100
> Hans de Goede <hdegoede@redhat.com> wrote:
>
> > Hi,
> >
> > On 04-01-15 20:19, Michal Suchanek wrote:
> > > Setting magic 'reserved' hpcr bit on sun5i DEBE seems required for
> > > smooth HDMI scanout of large frambuffer (eg. 1080p).
> > >
> > > This fix comes at the cost of some overall memory bandwidth so it
> > > might be appropriate to detect a10s and only apply there (and not a13).
> >
> > Hmm, Sairhei is the expert on this, adding him to the Cc. Sairhei, what
> > do you think of the proposed change ?
>
> I don't have A10s hardware, so have no idea and can't test anything
> myself.
>
> It would be great to have a better description of what exactly is
> happening before the patch. And precisely how the patch is helping.
> A description of the test setup and benchmark numbers would be
> appreciated. And it would be perfect if somebody else could reproduce
> the test and confirm the results.
>
> I may try to check A20 with the bus width artificially reduced
> to 16 bits (not a totally unrealistic configuration, since
> A20-OLinuXino-LIME board exists). If sun5i and sun7i are similar
> enough, then the magic reserved bit may have some effect there too.
> But that's a different hardware either way.

Done these tests with A20. Ironically, now the tables have turned and
A10 seems to be doing a better job than A20 at low DRAM clock speeds
(~408MHz) and 16-bit bus width when dealing with full-hd monitors.

Just like Michal observed on A10s, setting 0x5031 as DEFE host port
config makes things much worse on A20. Overall, the test results look
in the following way on A20 with 16-bit DRAM clocked at 408MHz (yes,
none of the real boards uses such a slow DRAM setup) while running
lima-memtester and driving 1920x1080-32 at 60Hz monitor:

0x1035 - The screen regularly blanks, but comes back again instantly.
0x1037 - The screen regularly blanks, but comes back again instantly.
0x5031 - Severe screen shaking.

Unlike A10, there does not seem to be any difference between using DEBE
or DEFE for framebuffer scanout on A20, so using DEBE has the same
effect as listed above. Setting the magic 'reserved' hpcr bit 1
(0x1037 value) does not seem to have any effect on sun7i. It is
great that it is apparently helping on sun5i/A10s though.

But enough about A20.

As Hans already mentioned, the submitted A10s patch is tweaking the
DEFE host port settings (not DEBE, contrary to what the summary says).
Michal, could you please run a few more tests and check whether
there is any observable difference between DEBE and DEFE on A10s
(fb0_scaler_mode_enable=0 vs. fb0_scaler_mode_enable=1 in fex)?
If they behave in the same way and the magic 'reserved' bit fixes
both of them, then IMHO the patch should just tweak both. Thanks
for working on this!

--
Best regards,
Siarhei Siamashka