<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux-toradex.git/drivers/gpu/drm/rockchip/rockchip_drm_gem.c, branch v4.2.2</title>
<subtitle>Linux kernel for Apalis and Colibri modules</subtitle>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/'/>
<entry>
<title>drm/rockchip: use drm_gem_mmap helpers</title>
<updated>2015-07-07T12:04:06+00:00</updated>
<author>
<name>Daniel Kurtz</name>
<email>djkurtz@chromium.org</email>
</author>
<published>2015-07-07T09:03:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=41315b793e13f884cda79389f0d5d44d027e57d1'/>
<id>41315b793e13f884cda79389f0d5d44d027e57d1</id>
<content type='text'>
Rather than (incompletely [0]) re-implementing drm_gem_mmap() and
drm_gem_mmap_obj() helpers, call them directly from the rockchip mmap
routines.

Once the core functions return successfully, the rockchip mmap routines
can still use dma_mmap_attrs() to simply mmap the entire buffer.

[0] Previously, we were performing the mmap() without first taking a
reference on the underlying gem buffer.  This could leak ptes if the gem
object is destroyed while userspace is still holding the mapping.

Signed-off-by: Daniel Kurtz &lt;djkurtz@chromium.org&gt;
Reviewed-by: Daniel Vetter &lt;daniel.vetter@ffwll.ch&gt;
Cc: stable@vger.kernel.org
Signed-off-by: Daniel Vetter &lt;daniel.vetter@ffwll.ch&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Rather than (incompletely [0]) re-implementing drm_gem_mmap() and
drm_gem_mmap_obj() helpers, call them directly from the rockchip mmap
routines.

Once the core functions return successfully, the rockchip mmap routines
can still use dma_mmap_attrs() to simply mmap the entire buffer.

[0] Previously, we were performing the mmap() without first taking a
reference on the underlying gem buffer.  This could leak ptes if the gem
object is destroyed while userspace is still holding the mapping.

Signed-off-by: Daniel Kurtz &lt;djkurtz@chromium.org&gt;
Reviewed-by: Daniel Vetter &lt;daniel.vetter@ffwll.ch&gt;
Cc: stable@vger.kernel.org
Signed-off-by: Daniel Vetter &lt;daniel.vetter@ffwll.ch&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>drm/rockchip: Only alloc a kmap for fbdev gem object</title>
<updated>2015-03-16T02:07:12+00:00</updated>
<author>
<name>Daniel Kurtz</name>
<email>djkurtz@chromium.org</email>
</author>
<published>2015-01-12T06:58:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=f76c83b580043d55b2899719da61fe000839812d'/>
<id>f76c83b580043d55b2899719da61fe000839812d</id>
<content type='text'>
In general, the data in drm/rockchip GEM objects is never accessed by
the kernel.  The objects are either accessed by a GPU, by display
controller DMA, or by mmap'ing them to user space.  Thus, these
buffers need not be mapped into kernel address space.

The only exception is the fbdev framebuffer(s), which may be written
in-kernel by fbcon.

Signed-off-by: Daniel Kurtz &lt;djkurtz@chromium.org&gt;
Signed-off-by: Mark Yao &lt;mark.yao@rock-chips.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
In general, the data in drm/rockchip GEM objects is never accessed by
the kernel.  The objects are either accessed by a GPU, by display
controller DMA, or by mmap'ing them to user space.  Thus, these
buffers need not be mapped into kernel address space.

The only exception is the fbdev framebuffer(s), which may be written
in-kernel by fbcon.

Signed-off-by: Daniel Kurtz &lt;djkurtz@chromium.org&gt;
Signed-off-by: Mark Yao &lt;mark.yao@rock-chips.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>drm/rockchip: fix dma_alloc_attrs() error check</title>
<updated>2015-01-09T03:29:06+00:00</updated>
<author>
<name>Daniel Kurtz</name>
<email>djkurtz@chromium.org</email>
</author>
<published>2015-01-07T09:27:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=4b9a90c0b374f8f7b3ceabe3c202424c98a6c5a4'/>
<id>4b9a90c0b374f8f7b3ceabe3c202424c98a6c5a4</id>
<content type='text'>
dma_alloc_attrs() returns NULL if it cannot allocate a dma buffer (or
mapping), not a negative error code.

Rerported-by: Pawel Osciak &lt;posciak@chromium.org&gt;
Signed-off-by: Daniel Kurtz &lt;djkurtz@chromium.org&gt;
Signed-off-by: Mark Yao &lt;mark.yao@rock-chips.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
dma_alloc_attrs() returns NULL if it cannot allocate a dma buffer (or
mapping), not a negative error code.

Rerported-by: Pawel Osciak &lt;posciak@chromium.org&gt;
Signed-off-by: Daniel Kurtz &lt;djkurtz@chromium.org&gt;
Signed-off-by: Mark Yao &lt;mark.yao@rock-chips.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>drm: rockchip: Add basic drm driver</title>
<updated>2014-12-02T09:29:03+00:00</updated>
<author>
<name>Mark Yao</name>
<email>mark.yao@rock-chips.com</email>
</author>
<published>2014-08-22T10:36:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=2048e3286f347db5667708e47448176b5329e8d8'/>
<id>2048e3286f347db5667708e47448176b5329e8d8</id>
<content type='text'>
This patch adds the basic structure of a DRM Driver for Rockchip Socs.

Signed-off-by: Mark Yao &lt;mark.yao@rock-chips.com&gt;
Signed-off-by: Daniel Kurtz &lt;djkurtz@chromium.org&gt;
Acked-by: Daniel Vetter &lt;daniel@ffwll.ch&gt;
Reviewed-by: Rob Clark &lt;robdclark@gmail.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch adds the basic structure of a DRM Driver for Rockchip Socs.

Signed-off-by: Mark Yao &lt;mark.yao@rock-chips.com&gt;
Signed-off-by: Daniel Kurtz &lt;djkurtz@chromium.org&gt;
Acked-by: Daniel Vetter &lt;daniel@ffwll.ch&gt;
Reviewed-by: Rob Clark &lt;robdclark@gmail.com&gt;
</pre>
</div>
</content>
</entry>
</feed>
