>
>
> >
> > My requirement:
> > 1. support non-contiguous memory allocation as GPU buffer
> > 2. support contiguous memory allocation too for exporting to some
> > display DRM driver as framebuffer
>
> btw, I think etnaviv deals w/ contiguous scanout buffer by just
> importing the scanout buffer from the other display drm driver.  So I
> think you could avoid having to allocate these buffers.
>
> Right, after looking at the renderonly lib of imx+etnaviv, it create dumb
buffer at display DRM and export to etnaviv. With this method, seems
lima just need to support non-contiguous memory allocation.

Thanks,
Qiang


>
> > 3. no GPU page fault for better performance and avoid multi MMU
> > page fault handling, CPU page fault is OK
> > 4. better have buffer swap to disk feature when memory is full
> >
> > Current MM:
> > 1. drm_gem_cma_object, only support contiguous memory
> > 2. drm_gem_get_pages
> >   1) need to combine with cma method for contiguous memory
> >   2) when shrink is needed, swap some idle buffer to disk and put
> >       pages, need implement by myself
> >   3) additional shmem layer introduced
> > 3. TTM TTM_PL_SYSTEM only
> >   1) no contiguous memory support
> >   2) too complicated as we don't need other functions of TTM
> >   3) need GPU page fault to populate memory?
> >   4) no page pool for cached memory
> >
> > My plan:
> > 1. for contiguous memory allocation use dma_alloc_*
> > 2. for non-contiguous memory allocation, use a page pool from
> > alloc_page
> > 3. buffer is not really allocated when GEM_CREATE, but in CPU
> > page fault handler and task submit buffer validation which make
> > sure no GPU page fault
> > 4. in shrinker handler, free un-used page in the pool, if still not
> > enough, swap some idle buffer to disk
> >
> > 3&4 apply to both dma_alloc buffer and alloc_page buffer.
> >
> > Thanks,
> > Qiang
> >
> >
> > _______________________________________________
> > dri-devel mailing list
> > dri-devel@lists.freedesktop.org
> > https://lists.freedesktop.org/mailman/listinfo/dri-devel
> >
>
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

Reply via email to