Re: [PATCH v2 4/5] drm: Add and export function drm_gem_cma_sync_data

From: Paul Cercueil
Date: Fri Mar 12 2021 - 06:53:12 EST




Le jeu. 11 mars 2021 à 12:28, Christoph Hellwig <hch@xxxxxxxxxxxxx> a écrit :
On Sun, Mar 07, 2021 at 08:28:34PM +0000, Paul Cercueil wrote:
+ drm_atomic_for_each_plane_damage(&iter, &clip) {
+ for (i = 0; i < finfo->num_planes; i++) {
+ daddr = drm_fb_cma_get_gem_addr(state->fb, state, i);
+
+ /* Ignore x1/x2 values, invalidate complete lines */
+ offset = clip.y1 * state->fb->pitches[i];
+
+ dma_sync_single_for_device(dev, daddr + offset,
+ (clip.y2 - clip.y1) * state->fb->pitches[i],
+ DMA_TO_DEVICE);

Are these helpers only ever used to transfer data to the device and
never from it? If so please clearly document that.

Yes. In the DRM world, are there cases where we transfer data from the device? I assume these cases are handled by v4l2 instead.

-Paul