[PATCH v2 0/8] drm/tinydrm: Use vmalloc BO

Matt Gattis matt at gatt.is
Sun Oct 15 16:50:21 UTC 2017


Thanks for the updates! I was comparing between your code and and evdi code
(eventually meant for usb displaylink), and it looks pretty similar in
concept.  They have some hard-coding around kernel versions for specific
drm interfaces, and I can't find enough documentation to figure out if any
differences matter, but thought I would pass it on to see if it is of any
help: https://github.com/DisplayLink/evdi

On Sun, Oct 15, 2017 at 12:30 PM, Noralf Trønnes <noralf at tronnes.org> wrote:

> This patchset adds a library for vmalloc buffer objects and makes use of
> it in tinydrm.
>
> The reason I want to move away from the cma helper, is that it restricts
> which drivers to PRIME import from, since cma requires the buffer to be
> physically continuous. Initially I looked at udl and decided to use
> shmem, but have later decided against it since shmem doesn't work with
> fbdev deferred I/O, they both use page->lru and page->mapping. This
> meant adding a shadow buffer for fbdev with increased complexity, so I
> fell back to the KISS principle.
>
> I'm trying to make tinydrm support drivers like simpledrm and udl, so if
> using vmalloc blocks those use cases, please let me know.
>
> I will do a follow up for the cma library which removes struct
> drm_fbdev_cma and wrappers.
>
> Noralf.
>
> Changes since version 1:
> - tinydrm: Remove dma_coerce_mask_and_coherent() calls (Matt Gattis)
>
> Noralf Trønnes (8):
>   drm/fb-helper: Handle function NULL argument
>   drm: Add drm_device->fbdev pointer
>   drm/fb-helper: Add simple init/fini functions
>   drm/fb-helper: Add .last_close and .output_poll_changed helpers
>   drm/gem-fb-helper: Add drm_gem_fb_debugfs_show()
>   drm: Add vmalloc BO helper
>   drm/tinydrm: Use drm_vmalloc_bo
>   drm/tinydrm: Relax buffer line prefetch
>
>  Documentation/gpu/drm-kms-helpers.rst          |  12 +
>  drivers/gpu/drm/Kconfig                        |   7 +
>  drivers/gpu/drm/Makefile                       |   1 +
>  drivers/gpu/drm/drm_fb_helper.c                | 223 +++++++++++++++++-
>  drivers/gpu/drm/drm_gem_framebuffer_helper.c   |  45 ++++
>  drivers/gpu/drm/drm_vmalloc_bo_helper.c        | 305
> +++++++++++++++++++++++++
>  drivers/gpu/drm/tinydrm/Kconfig                |   2 +-
>  drivers/gpu/drm/tinydrm/core/tinydrm-core.c    | 134 +++--------
>  drivers/gpu/drm/tinydrm/core/tinydrm-helpers.c |  56 +++--
>  drivers/gpu/drm/tinydrm/mi0283qt.c             |   8 +-
>  drivers/gpu/drm/tinydrm/mipi-dbi.c             |  31 +--
>  drivers/gpu/drm/tinydrm/repaper.c              |  21 +-
>  drivers/gpu/drm/tinydrm/st7586.c               |  14 +-
>  include/drm/drm_device.h                       |   8 +
>  include/drm/drm_fb_helper.h                    |  32 +++
>  include/drm/drm_gem_framebuffer_helper.h       |   6 +
>  include/drm/drm_vmalloc_bo_helper.h            |  88 +++++++
>  include/drm/tinydrm/mipi-dbi.h                 |   2 +
>  include/drm/tinydrm/tinydrm.h                  |  38 +--
>  19 files changed, 811 insertions(+), 222 deletions(-)
>  create mode 100644 drivers/gpu/drm/drm_vmalloc_bo_helper.c
>  create mode 100644 include/drm/drm_vmalloc_bo_helper.h
>
> --
> 2.14.2
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/dri-devel/attachments/20171015/025c1e0f/attachment.html>


More information about the dri-devel mailing list