<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/linux.git/drivers/gpu/drm/vc4, branch v4.10.9</title>
<subtitle>Linux kernel stable tree (mirror)</subtitle>
<id>https://git.radix-linux.su/kernel/linux.git/atom?h=v4.10.9</id>
<link rel='self' href='https://git.radix-linux.su/kernel/linux.git/atom?h=v4.10.9'/>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/'/>
<updated>2017-04-08T07:35:08+00:00</updated>
<entry>
<title>drm/vc4: Allocate the right amount of space for boot-time CRTC state.</title>
<updated>2017-04-08T07:35:08+00:00</updated>
<author>
<name>Eric Anholt</name>
<email>eric@anholt.net</email>
</author>
<published>2017-03-28T20:13:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=4a1b7b6c82dc22d3c5a3415deb6b44ab8106122e'/>
<id>urn:sha1:4a1b7b6c82dc22d3c5a3415deb6b44ab8106122e</id>
<content type='text'>
commit 6d6e500391875cc372336c88e9a8af377be19c36 upstream.

Without this, the first modeset would dereference past the allocation
when trying to free the mm node.

Signed-off-by: Eric Anholt &lt;eric@anholt.net&gt;
Tested-by: Stefan Wahren &lt;stefan.wahren@i2se.com&gt;
Link: http://patchwork.freedesktop.org/patch/msgid/20170328201343.4884-1-eric@anholt.net
Fixes: d8dbf44f13b9 ("drm/vc4: Make the CRTCs cooperate on allocating display lists.")
Reviewed-by: Daniel Vetter &lt;daniel.vetter@ffwll.ch&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>drm: vc4: adapt to new behaviour of drm_crtc.c</title>
<updated>2017-02-08T22:19:23+00:00</updated>
<author>
<name>Andrzej Pietrasiewicz</name>
<email>andrzej.p@samsung.com</email>
</author>
<published>2017-02-01T09:35:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=49d29a077af8d2ee3b291ccd8d053541bebe09d7'/>
<id>urn:sha1:49d29a077af8d2ee3b291ccd8d053541bebe09d7</id>
<content type='text'>
When drm_crtc_init_with_planes() was orignally added
(in drm_crtc.c, e13161af80c185ecd8dc4641d0f5df58f9e3e0af
drm: Add drm_crtc_init_with_planes() (v2)), it only checked for "primary"
being non-null. If that was the case, it modified primary-&gt;possible_crtcs.

Then, when support for cursor planes was added
(fc1d3e44ef7c1db93384150fdbf8948dcf949f15 drm: Allow drivers to register
cursor planes with crtc), the same behaviour was implemented for cursor
planes.

vc4_plane_init() since its inception has passed 0xff as "possible_crtcs"
parameter to drm_universal_plane_init(). With a change in drm_crtc.c
(7abc7d47510c75dd984380ebf819616e574c9604 drm: don't override
possible_crtcs for primary/cursor planes) passing 0xff results in primary's
possible_crtcs set to 0xff (cursor was updated manually by vc4_crtc.c).
Consequently, it would be allowed to use the primary plane from CRTC 1 (for
example) on CRTC 0, which would result in the overlay and cursors being
buried.

Signed-off-by: Andrzej Pietrasiewicz &lt;andrzej.p@samsung.com&gt;
Reviewed-by: Eric Anholt &lt;eric@anholt.net&gt;
Link: http://patchwork.freedesktop.org/patch/msgid/1485941708-27892-1-git-send-email-andrzej.p@samsung.com
Fixes: 7abc7d47510c ("drm: don't override possible_crtcs for primary/cursor planes")
</content>
</entry>
<entry>
<title>drm/vc4: Return -EINVAL on the overflow checks failing.</title>
<updated>2017-01-17T11:06:01+00:00</updated>
<author>
<name>Eric Anholt</name>
<email>eric@anholt.net</email>
</author>
<published>2017-01-17T10:58:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=6b8ac63847bc2f958dd93c09edc941a0118992d9'/>
<id>urn:sha1:6b8ac63847bc2f958dd93c09edc941a0118992d9</id>
<content type='text'>
By failing to set the errno, we'd continue on to trying to set up the
RCL, and then oops on trying to dereference the tile_bo that binning
validation should have set up.

Reported-by: Ingo Molnar &lt;mingo@kernel.org&gt;
Signed-off-by: Eric Anholt &lt;eric@anholt.net&gt;
Fixes: d5b1a78a772f ("drm/vc4: Add support for drawing 3D frames.")
</content>
</entry>
<entry>
<title>drm/vc4: Fix an integer overflow in temporary allocation layout.</title>
<updated>2017-01-17T11:05:55+00:00</updated>
<author>
<name>Eric Anholt</name>
<email>eric@anholt.net</email>
</author>
<published>2017-01-17T10:42:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=0f2ff82e11c86c05d051cae32b58226392d33bbf'/>
<id>urn:sha1:0f2ff82e11c86c05d051cae32b58226392d33bbf</id>
<content type='text'>
We copy the unvalidated ioctl arguments from the user into kernel
temporary memory to run the validation from, to avoid a race where the
user updates the unvalidate contents in between validating them and
copying them into the validated BO.

However, in setting up the layout of the kernel side, we failed to
check one of the additions (the roundup() for shader_rec_offset)
against integer overflow, allowing a nearly MAX_UINT value of
bin_cl_size to cause us to under-allocate the temporary space that we
then copy_from_user into.

Reported-by: Murray McAllister &lt;murray.mcallister@insomniasec.com&gt;
Signed-off-by: Eric Anholt &lt;eric@anholt.net&gt;
Fixes: d5b1a78a772f ("drm/vc4: Add support for drawing 3D frames.")
</content>
</entry>
<entry>
<title>drm/vc4: fix a bounds check</title>
<updated>2017-01-17T10:12:59+00:00</updated>
<author>
<name>Dan Carpenter</name>
<email>dan.carpenter@oracle.com</email>
</author>
<published>2017-01-13T07:49:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=21ccc32496b2f63228f5232b3ac0e426e8fb3c31'/>
<id>urn:sha1:21ccc32496b2f63228f5232b3ac0e426e8fb3c31</id>
<content type='text'>
We accidentally return success even if vc4_full_res_bounds_check() fails.

Fixes: d5b1a78a772f ("drm/vc4: Add support for drawing 3D frames.")
Signed-off-by: Dan Carpenter &lt;dan.carpenter@oracle.com&gt;
Reviewed-by: Eric Engestrom &lt;eric@engestrom.ch&gt;
Reviewed-by: Eric Anholt &lt;eric@anholt.net&gt;
</content>
</entry>
<entry>
<title>drm/vc4: Fix memory leak of the CRTC state.</title>
<updated>2017-01-17T10:12:39+00:00</updated>
<author>
<name>Eric Anholt</name>
<email>eric@anholt.net</email>
</author>
<published>2016-10-10T16:44:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=7622b25543665567d8830a63210385b7d705924b'/>
<id>urn:sha1:7622b25543665567d8830a63210385b7d705924b</id>
<content type='text'>
The underscores variant frees the pointers inside, while the
no-underscores variant calls underscores and then frees the struct.

Signed-off-by: Eric Anholt &lt;eric@anholt.net&gt;
Fixes: d8dbf44f13b9 ("drm/vc4: Make the CRTCs cooperate on allocating display lists.")
Cc: stable@vger.kernel.org
</content>
</entry>
<entry>
<title>Merge tag 'drm-vc4-next-2016-12-09' of https://github.com/anholt/linux into drm-next</title>
<updated>2016-12-13T02:05:12+00:00</updated>
<author>
<name>Dave Airlie</name>
<email>airlied@redhat.com</email>
</author>
<published>2016-12-13T02:05:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=2601a15d5d9b7f262e94b88784b1e1cf28ec020d'/>
<id>urn:sha1:2601a15d5d9b7f262e94b88784b1e1cf28ec020d</id>
<content type='text'>
This pull request brings in VEC (TV-out) support for vc4, along with a
pageflipping race fix.

* tag 'drm-vc4-next-2016-12-09' of https://github.com/anholt/linux:
  drm/vc4: Don't use drm_put_dev
  drm/vc4: Document VEC DT binding
  drm/vc4: Add support for the VEC (Video Encoder) IP
  drm: Add TV connector states to drm_connector_state
  drm: Turn DRM_MODE_SUBCONNECTOR_xx definitions into an enum
  drm/vc4: Fix -&gt;clock_select setting for the VEC encoder
  drm/vc4: Fix race between page flip completion event and clean-up
</content>
</entry>
<entry>
<title>drm/vc4: Don't use drm_put_dev</title>
<updated>2016-12-09T23:28:42+00:00</updated>
<author>
<name>Daniel Vetter</name>
<email>daniel.vetter@ffwll.ch</email>
</author>
<published>2016-12-08T11:07:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=c167df443b4a8d97d25a8e69bd9f490a1e3fe646'/>
<id>urn:sha1:c167df443b4a8d97d25a8e69bd9f490a1e3fe646</id>
<content type='text'>
vc4 already has a proper load sequence, but the unload one needed some
fixups: First unregister, and last drop the final ref.

Signed-off-by: Daniel Vetter &lt;daniel.vetter@intel.com&gt;
Signed-off-by: Eric Anholt &lt;eric@anholt.net&gt;
</content>
</entry>
<entry>
<title>drm/vc4: Add support for the VEC (Video Encoder) IP</title>
<updated>2016-12-09T23:26:31+00:00</updated>
<author>
<name>Boris Brezillon</name>
<email>boris.brezillon@free-electrons.com</email>
</author>
<published>2016-12-02T13:48:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=e4b81f8c74c82dbc0cb0e5ceb5ef9b713b325fc9'/>
<id>urn:sha1:e4b81f8c74c82dbc0cb0e5ceb5ef9b713b325fc9</id>
<content type='text'>
The VEC IP is a TV DAC, providing support for PAL and NTSC standards.

Signed-off-by: Boris Brezillon &lt;boris.brezillon@free-electrons.com&gt;
Signed-off-by: Eric Anholt &lt;eric@anholt.net&gt;
</content>
</entry>
<entry>
<title>drm/vc4: Fix -&gt;clock_select setting for the VEC encoder</title>
<updated>2016-12-09T23:26:29+00:00</updated>
<author>
<name>Boris Brezillon</name>
<email>boris.brezillon@free-electrons.com</email>
</author>
<published>2016-12-02T13:48:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=ab8df60e3a3b68420d0d4477c5f07c00fbfb078b'/>
<id>urn:sha1:ab8df60e3a3b68420d0d4477c5f07c00fbfb078b</id>
<content type='text'>
PV_CONTROL_CLK_SELECT_VEC is actually 2 and not 0. Fix the definition and
rework the vc4_set_crtc_possible_masks() to cover the full range of the
PV_CONTROL_CLK_SELECT field.

Signed-off-by: Boris Brezillon &lt;boris.brezillon@free-electrons.com&gt;
Signed-off-by: Eric Anholt &lt;eric@anholt.net&gt;
</content>
</entry>
</feed>
