<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/drivers/gpu/drm/imx/dw_hdmi-imx.c, 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-02-16T08:33:07Z</updated>
<entry>
<title>drm/bridge/synopsys: dw-hdmi: don't clobber drvdata</title>
<updated>2018-02-16T08:33:07Z</updated>
<author>
<name>Jernej Skrabec</name>
<email>jernej.skrabec@siol.net</email>
</author>
<published>2018-02-14T20:08:59Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=eea034af90c64802fd747a9dc534c26a7ebe7754'/>
<id>urn:sha1:eea034af90c64802fd747a9dc534c26a7ebe7754</id>
<content type='text'>
dw_hdmi shouldn't set drvdata since some drivers might need to store
it's own data there. Rework dw_hdmi in a way to return struct dw_hdmi
instead to store it in drvdata. This way drivers are responsible to
store and pass structure when needed.

Idea was taken from the following commit:
8242ecbd597d ("drm/bridge/synopsys: stop clobbering drvdata")

Cc: p.zabel@pengutronix.de
Cc: Laurent.pinchart@ideasonboard.com
Cc: hjc@rock-chips.com
Acked-by: Heiko Stuebner &lt;heiko@sntech.de&gt;
Acked-by: Neil Armstrong &lt;narmstrong@baylibre.com&gt;
Reviewed-by: Archit Taneja &lt;architt@codeaurora.org&gt;
Tested-by: Heiko Stuebner &lt;heiko@sntech.de&gt;
Signed-off-by: Jernej Skrabec &lt;jernej.skrabec@siol.net&gt;
Signed-off-by: Maxime Ripard &lt;maxime.ripard@bootlin.com&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/20180214200906.31509-6-jernej.skrabec@siol.net
</content>
</entry>
<entry>
<title>drm/bridge/synopsys: dw-hdmi: Use bridge-&gt;mode_valid() callback</title>
<updated>2017-06-05T06:39:50Z</updated>
<author>
<name>Jose Abreu</name>
<email>Jose.Abreu@synopsys.com</email>
</author>
<published>2017-05-25T14:19:19Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=b0febde779fd5d2e3e6f83843a828726117fe0a7'/>
<id>urn:sha1:b0febde779fd5d2e3e6f83843a828726117fe0a7</id>
<content type='text'>
Now that we have a callback to check if bridge supports a given mode
we can use it in Synopsys Designware HDMI bridge so that we restrict
the number of probbed modes to the ones we can actually display.

Also, there is no need to use mode_fixup() callback as mode_valid()
will handle the mode validation.

NOTE: I also had to change the pdata declaration of mode_valid
custom callback so that the passed modes are const. I also changed
in the platforms I found. Not even compiled it though.

Signed-off-by: Jose Abreu &lt;joabreu@synopsys.com&gt;
Acked-by: Neil Armstrong &lt;narmstrong@baylibre.com&gt;
Acked-by: Philipp Zabel &lt;p.zabel@pengutronix.de&gt;
Cc: Carlos Palminha &lt;palminha@synopsys.com&gt;
Cc: Daniel Vetter &lt;daniel.vetter@ffwll.ch&gt;
Cc: Archit Taneja &lt;architt@codeaurora.org&gt;
Cc: Andrzej Hajda &lt;a.hajda@samsung.com&gt;
Cc: Laurent Pinchart &lt;Laurent.pinchart@ideasonboard.com&gt;
Cc: David Airlie &lt;airlied@linux.ie&gt;
Cc: Philipp Zabel &lt;p.zabel@pengutronix.de&gt;
Cc: Carlo Caione &lt;carlo@caione.org&gt;
Cc: Kevin Hilman &lt;khilman@baylibre.com&gt;
Cc: Mark Yao &lt;mark.yao@rock-chips.com&gt;
Cc: Heiko Stuebner &lt;heiko@sntech.de&gt;
Signed-off-by: Archit Taneja &lt;architt@codeaurora.org&gt;
Link: http://patchwork.freedesktop.org/patch/msgid/3d8d449e4d13d2535fa292c75f5fa931de4a4fa8.1495720737.git.joabreu@synopsys.com
</content>
</entry>
<entry>
<title>drm: bridge: dw-hdmi: Remove device type from platform data</title>
<updated>2017-03-10T10:06:38Z</updated>
<author>
<name>Kieran Bingham</name>
<email>kieran.bingham+renesas@ideasonboard.com</email>
</author>
<published>2017-03-03T17:20:05Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=2e6777e8d5dd883b983c8de8797ff92bcb158f7c'/>
<id>urn:sha1:2e6777e8d5dd883b983c8de8797ff92bcb158f7c</id>
<content type='text'>
The device type isn't used anymore now that workarounds and PHY-specific
operations are performed based on version information read at runtime.
Remove it.

Signed-off-by: Kieran Bingham &lt;kieran.bingham+renesas@ideasonboard.com&gt;
Signed-off-by: Laurent Pinchart &lt;laurent.pinchart+renesas@ideasonboard.com&gt;
Tested-by: Neil Armstrong &lt;narmstrong@baylibre.com&gt;
Reviewed-by: Jose Abreu &lt;joabreu@synopsys.com&gt;
Signed-off-by: Archit Taneja &lt;architt@codeaurora.org&gt;
Link: http://patchwork.freedesktop.org/patch/msgid/20170303172007.26541-9-laurent.pinchart+renesas@ideasonboard.com
</content>
</entry>
<entry>
<title>drm: bridge: dw-hdmi: Move IRQ and IO resource allocation to common code</title>
<updated>2017-01-18T03:59:32Z</updated>
<author>
<name>Laurent Pinchart</name>
<email>laurent.pinchart+renesas@ideasonboard.com</email>
</author>
<published>2017-01-17T08:28:57Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=c608119dfdde9710e4bd068d632beb68bb3517db'/>
<id>urn:sha1:c608119dfdde9710e4bd068d632beb68bb3517db</id>
<content type='text'>
There's no need to duplicate identical code in multiple drivers (two at
the moment, one more to come soon). Move it to the dw-hdmi core where it
can be shared. If resource allocation ever becomes device-specific later
we'll always have the option of splitting it out again.

While it at pass the platform device to the bind function to avoid
having to cast struct device to struct platform_device.

Signed-off-by: Laurent Pinchart &lt;laurent.pinchart+renesas@ideasonboard.com&gt;
Reviewed-by: Jose Abreu &lt;joabreu@synopsys.com&gt;
Signed-off-by: Archit Taneja &lt;architt@codeaurora.org&gt;
Link: http://patchwork.freedesktop.org/patch/msgid/20170117082910.27023-8-laurent.pinchart+renesas@ideasonboard.com
</content>
</entry>
<entry>
<title>drm: bridge: dw-hdmi: Remove unneeded arguments to bind/unbind functions</title>
<updated>2017-01-18T03:59:30Z</updated>
<author>
<name>Laurent Pinchart</name>
<email>laurent.pinchart+renesas@ideasonboard.com</email>
</author>
<published>2017-01-17T08:28:52Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=ecaa98f1e6f7ed3f79def1861f21ff2eac82b8e9'/>
<id>urn:sha1:ecaa98f1e6f7ed3f79def1861f21ff2eac82b8e9</id>
<content type='text'>
The master argument isn't used. The data argument, a void pointer, is
used by the bind function only where it's cast to a drm_device pointer,
which can easily be obtained from the encoder argument instead. Remove
them.

Signed-off-by: Laurent Pinchart &lt;laurent.pinchart+renesas@ideasonboard.com&gt;
Reviewed-by: Jose Abreu &lt;joabreu@synopsys.com&gt;
Signed-off-by: Archit Taneja &lt;architt@codeaurora.org&gt;
Link: http://patchwork.freedesktop.org/patch/msgid/20170117082910.27023-3-laurent.pinchart+renesas@ideasonboard.com
</content>
</entry>
<entry>
<title>drm/imx: store internal bus configuration in crtc state</title>
<updated>2016-07-12T16:24:28Z</updated>
<author>
<name>Philipp Zabel</name>
<email>p.zabel@pengutronix.de</email>
</author>
<published>2016-07-06T12:49:24Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=49f98bc4d44a4ee507737f8d5531d05539787319'/>
<id>urn:sha1:49f98bc4d44a4ee507737f8d5531d05539787319</id>
<content type='text'>
The internal bus configuration is imx-drm specific crtc state. Store it
in imx_crtc_state and let the encoder atomic_check callbacks determine
bus_flags, bus_format and the sync pins, possibly taking into account
the mode and the connector display info.
The custom imx_drm_encoder structure can be replaced again with
drm_encoder.

Signed-off-by: Philipp Zabel &lt;p.zabel@pengutronix.de&gt;
</content>
</entry>
<entry>
<title>drm/imx: remove empty mode_set encoder callbacks</title>
<updated>2016-07-12T16:24:27Z</updated>
<author>
<name>Philipp Zabel</name>
<email>p.zabel@pengutronix.de</email>
</author>
<published>2016-07-06T11:40:13Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=e41c5c2411bca56775663a4153e0c00ea8c8f130'/>
<id>urn:sha1:e41c5c2411bca56775663a4153e0c00ea8c8f130</id>
<content type='text'>
With atomic modeset support, these callbacks are optional.

Signed-off-by: Philipp Zabel &lt;p.zabel@pengutronix.de&gt;
</content>
</entry>
<entry>
<title>drm/imx: atomic phase 3 step 2: Legacy callback fixups</title>
<updated>2016-07-12T16:24:12Z</updated>
<author>
<name>Liu Ying</name>
<email>gnuiyl@gmail.com</email>
</author>
<published>2016-07-08T09:41:01Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=f6e396e5096dec2523fade421bc27f3fae38e31d'/>
<id>urn:sha1:f6e396e5096dec2523fade421bc27f3fae38e31d</id>
<content type='text'>
Now that we can use atomic configurations, all the legacy callbacks
of CRTCs, encoders and connectors can be switched to the atomic version.
For the imx-ldb driver, there is a clock parent setting mismatch bewteen
-&gt;enable and -&gt;disable after the switch, so a fixup is added.  For the
imx-tve driver, since the encoder's callback -&gt;dpms is replaced by
-&gt;disable, we need to move the setting for the IPU_CLK_EN bit(in register
TVE_COM_CONF_REG) from -&gt;enable/-&gt;disable to -&gt;mode_set, otherwise, the
relevant CRTC cannot be disabled correctly with a warning on DC stop timeout.

Signed-off-by: Liu Ying &lt;gnuiyl@gmail.com&gt;
Acked-by: Daniel Vetter &lt;daniel.vetter@ffwll.ch&gt;
Signed-off-by: Philipp Zabel &lt;p.zabel@pengutronix.de&gt;
</content>
</entry>
<entry>
<title>drm/imx: Remove encoders' -&gt;prepare callbacks</title>
<updated>2016-07-12T16:23:58Z</updated>
<author>
<name>Liu Ying</name>
<email>gnuiyl@gmail.com</email>
</author>
<published>2016-07-08T09:40:58Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=032003c5cd744e8e0baf5430fc5b3fd5462208e4'/>
<id>urn:sha1:032003c5cd744e8e0baf5430fc5b3fd5462208e4</id>
<content type='text'>
The main task of imx encoders' -&gt;prepare callbacks is to set bus_format,
bus_flags, di_vsync_pin and di_hsync_pin.  We may create a structure named
imx_encoder to cache them.  The atomic encoder callback -&gt;disable may
replace -&gt;prepare later, so let's remove -&gt;prepare.

Signed-off-by: Liu Ying &lt;gnuiyl@gmail.com&gt;
Acked-by: Daniel Vetter &lt;daniel.vetter@ffwll.ch&gt;
Signed-off-by: Philipp Zabel &lt;p.zabel@pengutronix.de&gt;
</content>
</entry>
<entry>
<title>drm/imx: dw_hdmi: Don't call platform_set_drvdata()</title>
<updated>2016-03-31T09:24:28Z</updated>
<author>
<name>Douglas Anderson</name>
<email>dianders@chromium.org</email>
</author>
<published>2016-03-07T22:00:54Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=1cc9daea2a79720cdd8b13ce97515bf1b2b41939'/>
<id>urn:sha1:1cc9daea2a79720cdd8b13ce97515bf1b2b41939</id>
<content type='text'>
The IMX dw_hdmi driver just called platform_set_drvdata() to get
your hopes up that maybe, somehow, you'd be able to retrieve the 'struct
imx_hdmi' from a pointer to the 'struct device'.  You can't.  When
we call dw_hdmi_bind() the main driver calls dev_set_drvdata(), which
clobbers our setting.

Let's just remove the platform_set_drvdata() to avoid dashing people's
hopes.

Signed-off-by: Douglas Anderson &lt;dianders@chromium.org&gt;
Signed-off-by: Philipp Zabel &lt;p.zabel@pengutronix.de&gt;
</content>
</entry>
</feed>
