From: Dave Airlie <airl...@redhat.com> This avoids directly accessing the iosys_map internals using new interfaces.
Signed-off-by: Dave Airlie <airl...@redhat.com> --- drivers/gpu/drm/drm_cache.c | 28 +++++++++---------- drivers/gpu/drm/drm_fbdev_shmem.c | 4 +-- drivers/gpu/drm/drm_format_helper.c | 16 +++++------ drivers/gpu/drm/sysfb/drm_sysfb_modeset.c | 2 +- .../gpu/drm/tests/drm_format_helper_test.c | 26 ++++++++--------- 5 files changed, 38 insertions(+), 38 deletions(-) diff --git a/drivers/gpu/drm/drm_cache.c b/drivers/gpu/drm/drm_cache.c index 7051c9c909c2..8945d32d26d8 100644 --- a/drivers/gpu/drm/drm_cache.c +++ b/drivers/gpu/drm/drm_cache.c @@ -215,12 +215,12 @@ static void memcpy_fallback(struct iosys_map *dst, const struct iosys_map *src, unsigned long len) { - if (!dst->is_iomem && !src->is_iomem) { - memcpy(dst->vaddr, src->vaddr, len); - } else if (!src->is_iomem) { - iosys_map_memcpy_to(dst, 0, src->vaddr, len); - } else if (!dst->is_iomem) { - memcpy_fromio(dst->vaddr, src->vaddr_iomem, len); + if (!iosys_map_is_iomem(dst) && !iosys_map_is_iomem(src)) { + memcpy(iosys_map_ptr(dst), iosys_map_ptr(src), len); + } else if (iosys_map_is_iomem(src)) { + iosys_map_memcpy_to(dst, 0, iosys_map_ptr(src), len); + } else if (!iosys_map_is_iomem(dst)) { + memcpy_fromio(iosys_map_ptr(dst), iosys_map_ioptr(src), len); } else { /* * Bounce size is not performance tuned, but using a @@ -228,8 +228,8 @@ static void memcpy_fallback(struct iosys_map *dst, * resorting to ioreadxx() + iowritexx(). */ char bounce[MEMCPY_BOUNCE_SIZE]; - void __iomem *_src = src->vaddr_iomem; - void __iomem *_dst = dst->vaddr_iomem; + void __iomem *_src = iosys_map_ioptr(src); + void __iomem *_dst = iosys_map_ioptr(dst); while (len >= MEMCPY_BOUNCE_SIZE) { memcpy_fromio(bounce, _src, MEMCPY_BOUNCE_SIZE); @@ -312,12 +312,12 @@ void drm_memcpy_from_wc(struct iosys_map *dst, } if (static_branch_likely(&has_movntdqa)) { - __drm_memcpy_from_wc(dst->is_iomem ? - (void __force *)dst->vaddr_iomem : - dst->vaddr, - src->is_iomem ? - (void const __force *)src->vaddr_iomem : - src->vaddr, + __drm_memcpy_from_wc(iosys_map_is_iomem(dst) ? + (void __force *)iosys_map_ioptr(dst) : + iosys_map_ptr(dst), + iosys_map_is_iomem(src) ? + (void const __force *)iosys_map_ioptr(src) : + iosys_map_ptr(src), len); return; } diff --git a/drivers/gpu/drm/drm_fbdev_shmem.c b/drivers/gpu/drm/drm_fbdev_shmem.c index f824369baacd..d45b6826138b 100644 --- a/drivers/gpu/drm/drm_fbdev_shmem.c +++ b/drivers/gpu/drm/drm_fbdev_shmem.c @@ -159,7 +159,7 @@ int drm_fbdev_shmem_driver_fbdev_probe(struct drm_fb_helper *fb_helper, ret = drm_client_buffer_vmap(buffer, &map); if (ret) { goto err_drm_client_buffer_delete; - } else if (drm_WARN_ON(dev, map.is_iomem)) { + } else if (drm_WARN_ON(dev, iosys_map_is_iomem(&map))) { ret = -ENODEV; /* I/O memory not supported; use generic emulation */ goto err_drm_client_buffer_delete; } @@ -183,7 +183,7 @@ int drm_fbdev_shmem_driver_fbdev_probe(struct drm_fb_helper *fb_helper, if (!shmem->map_wc) info->flags |= FBINFO_READS_FAST; /* signal caching */ info->screen_size = sizes->surface_height * fb->pitches[0]; - info->screen_buffer = map.vaddr; + info->screen_buffer = iosys_map_ptr(&map); info->fix.smem_len = info->screen_size; /* deferred I/O */ diff --git a/drivers/gpu/drm/drm_format_helper.c b/drivers/gpu/drm/drm_format_helper.c index d36e6cacc575..cccec04bec4e 100644 --- a/drivers/gpu/drm/drm_format_helper.c +++ b/drivers/gpu/drm/drm_format_helper.c @@ -236,13 +236,13 @@ static int drm_fb_xfrm(struct iosys_map *dst, dst_pitch = default_dst_pitch; /* TODO: handle src in I/O memory here */ - if (dst[0].is_iomem) - return __drm_fb_xfrm_toio(dst[0].vaddr_iomem, dst_pitch[0], dst_pixsize[0], - src[0].vaddr, fb, clip, vaddr_cached_hint, state, + if (iosys_map_is_iomem(&dst[0])) + return __drm_fb_xfrm_toio(iosys_map_ioptr(&dst[0]), dst_pitch[0], dst_pixsize[0], + iosys_map_ptr(&src[0]), fb, clip, vaddr_cached_hint, state, xfrm_line); else - return __drm_fb_xfrm(dst[0].vaddr, dst_pitch[0], dst_pixsize[0], - src[0].vaddr, fb, clip, vaddr_cached_hint, state, + return __drm_fb_xfrm(iosys_map_ptr(&dst[0]), dst_pitch[0], dst_pixsize[0], + iosys_map_ptr(&src[0]), fb, clip, vaddr_cached_hint, state, xfrm_line); } @@ -438,7 +438,7 @@ void drm_fb_memcpy(struct iosys_map *dst, const unsigned int *dst_pitch, iosys_map_incr(&src_i, clip_offset(clip, fb->pitches[i], cpp_i)); for (y = 0; y < lines; y++) { /* TODO: handle src_i in I/O memory here */ - iosys_map_memcpy_to(&dst_i, 0, src_i.vaddr, len_i); + iosys_map_memcpy_to(&dst_i, 0, iosys_map_ptr(&src_i), len_i); iosys_map_incr(&src_i, fb->pitches[i]); iosys_map_incr(&dst_i, dst_pitch_i); } @@ -1204,10 +1204,10 @@ void drm_fb_xrgb8888_to_mono(struct iosys_map *dst, const unsigned int *dst_pitc unsigned int cpp = fb->format->cpp[0]; unsigned int len_src32 = linepixels * cpp; struct drm_device *dev = fb->dev; - void *vaddr = src[0].vaddr; + void *vaddr = iosys_map_ptr(&src[0]); unsigned int dst_pitch_0; unsigned int y; - u8 *mono = dst[0].vaddr, *gray8; + u8 *mono = iosys_map_ptr(&dst[0]), *gray8; u32 *src32; if (drm_WARN_ON(dev, fb->format->format != DRM_FORMAT_XRGB8888)) diff --git a/drivers/gpu/drm/sysfb/drm_sysfb_modeset.c b/drivers/gpu/drm/sysfb/drm_sysfb_modeset.c index ffaa2522ab96..0e1e1df22426 100644 --- a/drivers/gpu/drm/sysfb/drm_sysfb_modeset.c +++ b/drivers/gpu/drm/sysfb/drm_sysfb_modeset.c @@ -138,7 +138,7 @@ void drm_sysfb_plane_helper_atomic_disable(struct drm_plane *plane, struct drm_sysfb_device *sysfb = to_drm_sysfb_device(dev); struct iosys_map dst = sysfb->fb_addr; struct drm_plane_state *plane_state = drm_atomic_get_new_plane_state(state, plane); - void __iomem *dst_vmap = dst.vaddr_iomem; /* TODO: Use mapping abstraction */ + void __iomem *dst_vmap = iosys_map_ioptr(&dst); /* TODO: Use mapping abstraction */ unsigned int dst_pitch = sysfb->fb_pitch; const struct drm_format_info *dst_format = sysfb->fb_format; struct drm_rect dst_clip; diff --git a/drivers/gpu/drm/tests/drm_format_helper_test.c b/drivers/gpu/drm/tests/drm_format_helper_test.c index 35cd3405d045..c714dc57d216 100644 --- a/drivers/gpu/drm/tests/drm_format_helper_test.c +++ b/drivers/gpu/drm/tests/drm_format_helper_test.c @@ -739,13 +739,13 @@ static void drm_test_fb_xrgb8888_to_rgb565(struct kunit *test) buf = le16buf_to_cpu(test, (__force const __le16 *)buf, dst_size / sizeof(__le16)); KUNIT_EXPECT_MEMEQ(test, buf, result->expected, dst_size); - buf = dst.vaddr; /* restore original value of buf */ + buf = iosys_map_ptr(&dst); /* restore original value of buf */ drm_fb_xrgb8888_to_rgb565(&dst, &result->dst_pitch, &src, &fb, ¶ms->clip, &fmtcnv_state, true); buf = le16buf_to_cpu(test, (__force const __le16 *)buf, dst_size / sizeof(__le16)); KUNIT_EXPECT_MEMEQ(test, buf, result->expected_swab, dst_size); - buf = dst.vaddr; + buf = iosys_map_ptr(&dst); memset(buf, 0, dst_size); int blit_result = 0; @@ -792,7 +792,7 @@ static void drm_test_fb_xrgb8888_to_xrgb1555(struct kunit *test) buf = le16buf_to_cpu(test, (__force const __le16 *)buf, dst_size / sizeof(__le16)); KUNIT_EXPECT_MEMEQ(test, buf, result->expected, dst_size); - buf = dst.vaddr; /* restore original value of buf */ + buf = iosys_map_ptr(&dst); /* restore original value of buf */ memset(buf, 0, dst_size); int blit_result = 0; @@ -839,7 +839,7 @@ static void drm_test_fb_xrgb8888_to_argb1555(struct kunit *test) buf = le16buf_to_cpu(test, (__force const __le16 *)buf, dst_size / sizeof(__le16)); KUNIT_EXPECT_MEMEQ(test, buf, result->expected, dst_size); - buf = dst.vaddr; /* restore original value of buf */ + buf = iosys_map_ptr(&dst); /* restore original value of buf */ memset(buf, 0, dst_size); int blit_result = 0; @@ -886,7 +886,7 @@ static void drm_test_fb_xrgb8888_to_rgba5551(struct kunit *test) buf = le16buf_to_cpu(test, (__force const __le16 *)buf, dst_size / sizeof(__le16)); KUNIT_EXPECT_MEMEQ(test, buf, result->expected, dst_size); - buf = dst.vaddr; /* restore original value of buf */ + buf = iosys_map_ptr(&dst); /* restore original value of buf */ memset(buf, 0, dst_size); int blit_result = 0; @@ -936,7 +936,7 @@ static void drm_test_fb_xrgb8888_to_rgb888(struct kunit *test) drm_fb_xrgb8888_to_rgb888(&dst, dst_pitch, &src, &fb, ¶ms->clip, &fmtcnv_state); KUNIT_EXPECT_MEMEQ(test, buf, result->expected, dst_size); - buf = dst.vaddr; /* restore original value of buf */ + buf = iosys_map_ptr(&dst); /* restore original value of buf */ memset(buf, 0, dst_size); int blit_result = 0; @@ -982,7 +982,7 @@ static void drm_test_fb_xrgb8888_to_bgr888(struct kunit *test) &fmtcnv_state); KUNIT_EXPECT_MEMEQ(test, buf, result->expected, dst_size); - buf = dst.vaddr; /* restore original value of buf */ + buf = iosys_map_ptr(&dst); /* restore original value of buf */ memset(buf, 0, dst_size); int blit_result = 0; @@ -1027,7 +1027,7 @@ static void drm_test_fb_xrgb8888_to_argb8888(struct kunit *test) buf = le32buf_to_cpu(test, (__force const __le32 *)buf, dst_size / sizeof(u32)); KUNIT_EXPECT_MEMEQ(test, buf, result->expected, dst_size); - buf = dst.vaddr; /* restore original value of buf */ + buf = iosys_map_ptr(&dst); /* restore original value of buf */ memset(buf, 0, dst_size); int blit_result = 0; @@ -1074,7 +1074,7 @@ static void drm_test_fb_xrgb8888_to_xrgb2101010(struct kunit *test) buf = le32buf_to_cpu(test, buf, dst_size / sizeof(u32)); KUNIT_EXPECT_MEMEQ(test, buf, result->expected, dst_size); - buf = dst.vaddr; /* restore original value of buf */ + buf = iosys_map_ptr(&dst); /* restore original value of buf */ memset(buf, 0, dst_size); int blit_result = 0; @@ -1119,7 +1119,7 @@ static void drm_test_fb_xrgb8888_to_argb2101010(struct kunit *test) buf = le32buf_to_cpu(test, (__force const __le32 *)buf, dst_size / sizeof(u32)); KUNIT_EXPECT_MEMEQ(test, buf, result->expected, dst_size); - buf = dst.vaddr; /* restore original value of buf */ + buf = iosys_map_ptr(&dst); /* restore original value of buf */ memset(buf, 0, dst_size); int blit_result = 0; @@ -1199,7 +1199,7 @@ static void drm_test_fb_swab(struct kunit *test) buf = le32buf_to_cpu(test, (__force const __le32 *)buf, dst_size / sizeof(u32)); KUNIT_EXPECT_MEMEQ(test, buf, result->expected, dst_size); - buf = dst.vaddr; /* restore original value of buf */ + buf = iosys_map_ptr(&dst); /* restore original value of buf */ memset(buf, 0, dst_size); int blit_result; @@ -1211,7 +1211,7 @@ static void drm_test_fb_swab(struct kunit *test) KUNIT_EXPECT_FALSE(test, blit_result); KUNIT_EXPECT_MEMEQ(test, buf, result->expected, dst_size); - buf = dst.vaddr; + buf = iosys_map_ptr(&dst); memset(buf, 0, dst_size); blit_result = drm_fb_blit(&dst, dst_pitch, DRM_FORMAT_BGRX8888, &src, &fb, ¶ms->clip, @@ -1221,7 +1221,7 @@ static void drm_test_fb_swab(struct kunit *test) KUNIT_EXPECT_FALSE(test, blit_result); KUNIT_EXPECT_MEMEQ(test, buf, result->expected, dst_size); - buf = dst.vaddr; + buf = iosys_map_ptr(&dst); memset(buf, 0, dst_size); struct drm_format_info mock_format = *fb.format; -- 2.49.0