From: Maarten Lankhorst <maarten.lankhorst@canonical.com>
To: Daniel Vetter <daniel@ffwll.ch>
Cc: dri-devel@lists.freedesktop.org
Subject: Re: [PATCH 1/4] drm: add prime helpers
Date: Fri, 07 Dec 2012 15:03:53 +0100 [thread overview]
Message-ID: <50C1F749.2090501@canonical.com> (raw)
In-Reply-To: <20121206215036.GW11556@phenom.ffwll.local>
Op 06-12-12 22:50, Daniel Vetter schreef:
> On Thu, Dec 06, 2012 at 10:46:30PM +0100, Daniel Vetter wrote:
>> On Thu, Dec 06, 2012 at 10:07:48AM -0800, Aaron Plattner wrote:
>>> Instead of reimplementing all of the dma_buf functionality in every driver,
>>> create helpers drm_prime_import and drm_prime_export that implement them in
>>> terms of new, lower-level hook functions:
>>>
>>> gem_prime_pin: callback when a buffer is created, used to pin buffers into GTT
>>> gem_prime_get_pages: convert a drm_gem_object to an sg_table for export
>>> gem_prime_import_sg: convert an sg_table into a drm_gem_object
>>> gem_prime_vmap, gem_prime_vunmap: map and unmap an object
>>>
>>> These hooks are optional; drivers can opt in by using drm_gem_prime_import and
>>> drm_gem_prime_export as the .gem_prime_import and .gem_prime_export fields of
>>> struct drm_driver.
>>>
>>> Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
>> A few comments:
>>
>> - Can you please add kerneldoc entries for these new helpers? Laurent
>> Pinchart started a nice drm kerneldoc as an overview. And since then
>> we've at least integrated the kerneldoc api reference at a nice place
>> there and brushed it up a bit when touching drm core or helpers in a
>> bigger patch series. See e.g. my recent dp helper series for what I'm
>> looking for. I think we should have kerneldoc at least for the exported
>> functions.
>>
>> - Just an idea for all the essential noop cpu helpers: Maybe just call
>> them dma_buf*noop and shovel them as convenience helpers into the
>> dma-buf.c code in the core, for drivers that don't want/can't/won't
>> bother to implement the cpu access support. Related: Exporting the
>> functions in general so that drivers could pick&choose
> One more: For the cpu access noop helpers I'd vote for -ENOTTY as the more
> canonical "not implemented error, you're talking to the wrong thing" error
> instead of -EINVAL, which an exporter could throw back to the importer if
> e.g. the range is outside of the size of the dma_buf. With a quick dma_buf
> doc update we could then bless this as the official way to denounce cpu
> access support.
>
Yeah lets reinvent a new error to return, and make it not a typewriter to confuse users,
instead of using -ENODEV which would actually be valid and most descriptive here if you
read the mmap page:
-ENODEV The underlying file system of the specified file does not support memory mapping.
~Maarten
next prev parent reply other threads:[~2012-12-07 14:03 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-12-06 18:07 [PATCH 0/4] Prime helpers Aaron Plattner
2012-12-06 18:07 ` [PATCH 1/4] drm: add prime helpers Aaron Plattner
2012-12-06 21:46 ` Daniel Vetter
2012-12-06 21:50 ` Daniel Vetter
2012-12-07 14:03 ` Maarten Lankhorst [this message]
2012-12-07 17:58 ` Aaron Plattner
2012-12-07 18:48 ` Daniel Vetter
2012-12-07 20:33 ` Aaron Plattner
2012-12-07 21:38 ` Daniel Vetter
2012-12-07 22:07 ` Aaron Plattner
2012-12-06 18:07 ` [PATCH 2/4] drm/nouveau: use " Aaron Plattner
2012-12-06 18:07 ` [PATCH 3/4] drm/radeon: " Aaron Plattner
2012-12-06 18:07 ` [PATCH 4/4] drm/exynos: " Aaron Plattner
2012-12-06 18:48 ` [PATCH v2] " Aaron Plattner
2012-12-07 6:36 ` Inki Dae
2012-12-07 8:11 ` Daniel Vetter
2012-12-07 17:48 ` Aaron Plattner
2012-12-10 4:33 ` Inki Dae
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=50C1F749.2090501@canonical.com \
--to=maarten.lankhorst@canonical.com \
--cc=daniel@ffwll.ch \
--cc=dri-devel@lists.freedesktop.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.