<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/drivers/gpu/drm/rcar-du/rcar_du_encoder.h, branch linux-4.17.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.</subtitle>
<id>https://universe.0xinfinity.dev/distro/kernel/atom?h=linux-4.17.y</id>
<link rel='self' href='https://universe.0xinfinity.dev/distro/kernel/atom?h=linux-4.17.y'/>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/'/>
<updated>2018-03-07T16:06:49Z</updated>
<entry>
<title>drm: rcar-du: Convert LVDS encoder code to bridge driver</title>
<updated>2018-03-07T16:06:49Z</updated>
<author>
<name>Laurent Pinchart</name>
<email>laurent.pinchart+renesas@ideasonboard.com</email>
</author>
<published>2018-01-10T03:47:42Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=c6a27fa41fabb35fcf0273c32a86f1424fa7de91'/>
<id>urn:sha1:c6a27fa41fabb35fcf0273c32a86f1424fa7de91</id>
<content type='text'>
The LVDS encoders used to be described in DT as part of the DU. They now
have their own DT node, linked to the DU using the OF graph bindings.
This allows moving internal LVDS encoder support to a separate driver
modelled as a DRM bridge. Backward compatibility is retained as legacy
DT is patched live to move to the new bindings.

Signed-off-by: Laurent Pinchart &lt;laurent.pinchart+renesas@ideasonboard.com&gt;
Reviewed-by: Niklas Söderlund &lt;niklas.soderlund+renesas@ragnatech.se&gt;
</content>
</entry>
<entry>
<title>drm: rcar-du: Hardcode encoders types to DRM_MODE_ENCODER_NONE</title>
<updated>2017-04-04T14:04:04Z</updated>
<author>
<name>Laurent Pinchart</name>
<email>laurent.pinchart+renesas@ideasonboard.com</email>
</author>
<published>2016-10-07T14:39:21Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=381ddfe478871588af95548aaecb6698009c3d6b'/>
<id>urn:sha1:381ddfe478871588af95548aaecb6698009c3d6b</id>
<content type='text'>
Unlike the connector type, the encoder type is unused by userspace. As
it is equally unused in the driver, except in a single location where
the connector type can be used instead, hardcode it to
DRM_MODE_ENCODER_NONE. This allow removing all code that tries to
determine (unsuccessfully in case a bridge is used) the encoder type.

Signed-off-by: Laurent Pinchart &lt;laurent.pinchart+renesas@ideasonboard.com&gt;
</content>
</entry>
<entry>
<title>drm: rcar-du: Replace manual bridge implementation with DRM bridge</title>
<updated>2017-04-04T14:04:02Z</updated>
<author>
<name>Laurent Pinchart</name>
<email>laurent.pinchart+renesas@ideasonboard.com</email>
</author>
<published>2016-10-07T13:01:41Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=5c602531feb3db3926cdd76dda89314f0634c9e7'/>
<id>urn:sha1:5c602531feb3db3926cdd76dda89314f0634c9e7</id>
<content type='text'>
The rcar-du driver contains a manual implementation of HDMI and VGA
bridges. Use DRM bridges to replace it.

Signed-off-by: Laurent Pinchart &lt;laurent.pinchart+renesas@ideasonboard.com&gt;
</content>
</entry>
<entry>
<title>drm: rcar-du: Use the DRM panel API</title>
<updated>2017-04-04T14:03:56Z</updated>
<author>
<name>Laurent Pinchart</name>
<email>laurent.pinchart+renesas@ideasonboard.com</email>
</author>
<published>2016-11-18T01:22:37Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=bf7149f34241dcd6c95ea76b2b5ab4ff33f1c9b9'/>
<id>urn:sha1:bf7149f34241dcd6c95ea76b2b5ab4ff33f1c9b9</id>
<content type='text'>
Instead of parsing the panel device tree node manually, use the panel
API to delegate panel handling to a panel driver.

Signed-off-by: Laurent Pinchart &lt;laurent.pinchart+renesas@ideasonboard.com&gt;
</content>
</entry>
<entry>
<title>drm: Don't include &lt;drm/drm_encoder.h&gt; in &lt;drm/drm_crtc.h&gt;</title>
<updated>2016-12-18T10:59:29Z</updated>
<author>
<name>Laurent Pinchart</name>
<email>laurent.pinchart+renesas@ideasonboard.com</email>
</author>
<published>2016-11-28T18:51:09Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=9338203c4f03ffe323b67f0b2fa17b9811fa9bb6'/>
<id>urn:sha1:9338203c4f03ffe323b67f0b2fa17b9811fa9bb6</id>
<content type='text'>
&lt;drm/drm_crtc.h&gt; used to define most of the in-kernel KMS API. It has
now been split into separate files for each object type, but still
includes most other KMS headers to avoid breaking driver compilation.

As a step towards fixing that problem, remove the inclusion of
&lt;drm/drm_encoder.h&gt; from &lt;drm/drm_crtc.h&gt; and include it instead where
appropriate. Also remove the forward declarations of the drm_encoder and
drm_encoder_helper_funcs structures from &lt;drm/drm_crtc.h&gt; as they're not
needed in the header.

&lt;drm/drm_encoder.h&gt; now has to include &lt;drm/drm_mode.h&gt; and contain a
forward declaration of struct drm_encoder in order to allow including it
as the first header in a compilation unit.

Signed-off-by: Laurent Pinchart &lt;laurent.pinchart+renesas@ideasonboard.com&gt;
Reviewed-by: Daniel Vetter &lt;daniel.vetter@ffwll.ch&gt;
Reviewed-by: Sinclair Yeh &lt;syeh@vmware.com&gt; # For vmwgfx
Reviewed-by: Alex Deucher &lt;alexander.deucher@amd.com&gt;
Signed-off-by: Archit Taneja &lt;architt@codeaurora.org&gt;
Link: http://patchwork.freedesktop.org/patch/msgid/1481709550-29226-2-git-send-email-laurent.pinchart+renesas@ideasonboard.com
</content>
</entry>
<entry>
<title>drm: rcar-du: Remove i2c slave encoder interface for hdmi encoder</title>
<updated>2016-07-18T03:28:45Z</updated>
<author>
<name>Archit Taneja</name>
<email>architt@codeaurora.org</email>
</author>
<published>2016-07-18T03:14:04Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=1d926114d8f4e9f138617b95c6cd377667c36369'/>
<id>urn:sha1:1d926114d8f4e9f138617b95c6cd377667c36369</id>
<content type='text'>
The hdmi output in rcar-du uses the i2c slave encoder interface to link
to the adv7511 encoder chip. The kms driver creates encoder and connector
entities that internally uses the drm_encoder_slave_funcs ops provided by
the slave encoder driver.

Change the driver such that it expects a bridge entity instead of a slave
encoder. The hdmi connector code isn't needed anymore as we expect the
adv7511 bridge driver to create/manage the connector.

Note that the kms driver still expects a connector node for hdmi to be
present in DT. This node has no connection to the connector created
by the bridge driver.

Tested-by: Laurent Pinchart &lt;laurent.pinchart@ideasonboard.com&gt;
Signed-off-by: Archit Taneja &lt;architt@codeaurora.org&gt;
</content>
</entry>
<entry>
<title>drm: rcar-du: Rely on the default -&gt;best_encoder() behavior</title>
<updated>2016-06-10T15:24:26Z</updated>
<author>
<name>Boris Brezillon</name>
<email>boris.brezillon@free-electrons.com</email>
</author>
<published>2016-06-07T11:48:04Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=15b6412badfed160872765619babe2de7056cc83'/>
<id>urn:sha1:15b6412badfed160872765619babe2de7056cc83</id>
<content type='text'>
All outputs have a 1:1 relationship between connectors and encoders,
and the driver is relying on the atomic helpers: we can drop the custom
-&gt;best_encoder() implementations and let the core call
drm_atomic_helper_best_encoder() for us.

Signed-off-by: Boris Brezillon &lt;boris.brezillon@free-electrons.com&gt;
Reviewed-by: Laurent Pinchart &lt;laurent.pinchart@ideasonboard.com&gt;
Signed-off-by: Daniel Vetter &lt;daniel.vetter@ffwll.ch&gt;
Link: http://patchwork.freedesktop.org/patch/msgid/1465300095-16971-10-git-send-email-boris.brezillon@free-electrons.com
</content>
</entry>
<entry>
<title>drm: rcar-du: Add HDMI encoder and connector support</title>
<updated>2014-11-26T18:09:38Z</updated>
<author>
<name>Laurent Pinchart</name>
<email>laurent.pinchart+renesas@ideasonboard.com</email>
</author>
<published>2014-03-30T19:55:38Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=637e6194e0daf76e2c06cd78528e8d0a24eca3cd'/>
<id>urn:sha1:637e6194e0daf76e2c06cd78528e8d0a24eca3cd</id>
<content type='text'>
SoCs that integrate the DU have no internal HDMI encoder, support
external encoders only.

Signed-off-by: Laurent Pinchart &lt;laurent.pinchart+renesas@ideasonboard.com&gt;
</content>
</entry>
<entry>
<title>drm: rcar-du: Replace drm_encoder with drm_slave_encoder</title>
<updated>2014-11-26T18:09:38Z</updated>
<author>
<name>Laurent Pinchart</name>
<email>laurent.pinchart+renesas@ideasonboard.com</email>
</author>
<published>2014-03-30T23:52:01Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=69746b4112e3c83442c1df59b7011ab3c5ed2d5a'/>
<id>urn:sha1:69746b4112e3c83442c1df59b7011ab3c5ed2d5a</id>
<content type='text'>
DRM slave encoders require their associated struct drm_encoder instance
to be embedded in a struct drm_slave_encoder. This makes processing
encoders regardless of their types needlessly and painfully complex in
drivers that use a mix of slave encoders and custom encoders. Such a
driver will need to either create drm_slave_encoder instances that fake
their embedded encoder instance, or to turn all drm_encoder instances
into drm_slave_encoder instances.

Between the two evils, one must choose the lesser. Use drm_slave_encoder
everywhere.

Signed-off-by: Laurent Pinchart &lt;laurent.pinchart+renesas@ideasonboard.com&gt;
</content>
</entry>
<entry>
<title>drm: rcar-du: Replace direct DRM encoder access with cast macro</title>
<updated>2014-11-26T18:09:37Z</updated>
<author>
<name>Laurent Pinchart</name>
<email>laurent.pinchart+renesas@ideasonboard.com</email>
</author>
<published>2014-03-30T23:50:16Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=4b96b70cfa465550eb9d7112c28e8b5a4093e022'/>
<id>urn:sha1:4b96b70cfa465550eb9d7112c28e8b5a4093e022</id>
<content type='text'>
Add a new macro to downcast an rcar_du_encoder pointer to a drm_encoder
pointer and use it. This prepares for the replacement of the
rcar_drm_encoder encoder field with a drm_slave_encoder.

Signed-off-by: Laurent Pinchart &lt;laurent.pinchart+renesas@ideasonboard.com&gt;
</content>
</entry>
</feed>
