Messages in this thread |  | | Date | Mon, 04 Jul 2022 11:11:34 +0100 | From | Paul Cercueil <> | Subject | Re: [PATCH] drm/ingenic: Use the highest possible DMA burst size |
| |
Hi Sam,
Le dim., juil. 3 2022 at 08:43:37 +0200, Sam Ravnborg <sam@ravnborg.org> a écrit : > Hi Paul, > > On Sun, Jul 03, 2022 at 12:07:27AM +0100, Paul Cercueil wrote: >> Until now, when running at the maximum resolution of 1280x720 at >> 32bpp >> on the JZ4770 SoC the output was garbled, the X/Y position of the >> top-left corner of the framebuffer warping to a random position with >> the whole image being offset accordingly, every time a new frame was >> being submitted. >> >> This problem can be eliminated by using a bigger burst size for the >> DMA. > > Are there any alignment constraints of the framebuffer that depends on > the burst size? I am hit by this with some atmel IP - which is why I > ask.
I verified this, and everything behaves correctly when the source address is not aligned to the burst size. So I believe in our case the DMA is smart enough to auto-select the best burst size, up to the configured value.
Cheers, -Paul
> > Patch looks good and is a-b. > >> >> Set in each soc_info structure the maximum burst size supported by >> the >> corresponding SoC, and use it in the driver. >> >> Set the new value using regmap_update_bits() instead of >> regmap_set_bits(), since we do want to override the old value of the >> burst size. (Note that regmap_set_bits() wasn't really valid before >> for >> the same reason, but it never seemed to be a problem). >> >> Cc: <stable@vger.kernel.org> >> Fixes: 90b86fcc47b4 ("DRM: Add KMS driver for the Ingenic JZ47xx >> SoCs") >> Signed-off-by: Paul Cercueil <paul@crapouillou.net> > Acked-by: Sam Ravnborg <sam@ravnborg.org>
|  |