Hi Lucas, Ryutaroh,
On Thu, Jan 21, 2021 at 11:57:58AM +0100, Maxime Ripard wrote:
From: Dom Cobley popcornmix@gmail.com
LBM base address is measured in units of pixels per cycle. That is 4 for 2711 (hvs5) and 2 for 2708.
We are wasting 75% of lbm by indexing without the scaling. But we were also using too high a size for the lbm resulting in partial corruption (right hand side) of vertically scaled images, usually at 4K or lower resolutions with more layers.
The physical RAM of LBM on 2711 is 8 * 1920 * 16 * 12-bit (pixels are stored 12-bits per component regardless of format).
The LBM adress indexes work in units of pixels per clock, so for 4 pixels per clock that means we have 32 * 1920 = 60K
Fixes: c54619b0bfb3 ("drm/vc4: Add support for the BCM2711 HVS5") Signed-off-by: Dom Cobley popcornmix@gmail.com Signed-off-by: Maxime Ripard maxime@cerno.tech
This one should fix your issue
Feel free to test it and let me know if it's not the case
Maxime