<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/linux.git/drivers/gpu/drm/tilcdc/tilcdc_drv.h, branch linux-4.7.y</title>
<subtitle>Linux kernel stable tree (mirror)</subtitle>
<id>https://git.radix-linux.su/kernel/linux.git/atom?h=linux-4.7.y</id>
<link rel='self' href='https://git.radix-linux.su/kernel/linux.git/atom?h=linux-4.7.y'/>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/'/>
<updated>2016-02-25T14:39:35+00:00</updated>
<entry>
<title>drm/tilcdc: Allocate register storage based on the actual number registers</title>
<updated>2016-02-25T14:39:35+00:00</updated>
<author>
<name>Jyri Sarha</name>
<email>jsarha@ti.com</email>
</author>
<published>2015-07-02T13:26:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=29ddd6e171abae990a881b9e221359f13c546369'/>
<id>urn:sha1:29ddd6e171abae990a881b9e221359f13c546369</id>
<content type='text'>
Allocate suspend/resume register storage based on the actual number
registers the driver is aware of. The static allocation for register
storage had fallen behind badly.

Reported-by: Michael Bode &lt;michael@bumbleB.de&gt;
Signed-off-by: Jyri Sarha &lt;jsarha@ti.com&gt;
Reviewed-by: Tomi Valkeinen &lt;tomi.valkeinen@ti.com&gt;
</content>
</entry>
<entry>
<title>drm/tilcdc: disable the lcd controller/dma engine when suspend invoked</title>
<updated>2016-02-25T14:39:32+00:00</updated>
<author>
<name>Darren Etheridge</name>
<email>detheridge@ti.com</email>
</author>
<published>2014-09-25T00:59:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=614b3cfeb8d22e2b0f49bcfeaf5b52900242a944'/>
<id>urn:sha1:614b3cfeb8d22e2b0f49bcfeaf5b52900242a944</id>
<content type='text'>
The LCD controller must be deactivated and all DMA transactions stopped
when the suspend power state is entered otherwise the PRCM causes the L3
bus to get stuck in transition state.

This commit forces the lcdc to be shut down and waits for all pending DMA
transactions to complete as part of the suspend handler for this driver.

Signed-off-by: Darren Etheridge &lt;detheridge@ti.com&gt;
Tested-by: Dave Gerlach &lt;d-gerlach@ti.com&gt;
Signed-off-by: Jyri Sarha &lt;jsarha@ti.com&gt;
Reviewed-by: Tomi Valkeinen &lt;tomi.valkeinen@ti.com&gt;
</content>
</entry>
<entry>
<title>drm/tilcdc: fix kernel panic on suspend when no hdmi monitor connected</title>
<updated>2016-02-25T14:39:31+00:00</updated>
<author>
<name>Darren Etheridge</name>
<email>detheridge@ti.com</email>
</author>
<published>2014-09-19T01:42:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=85fd27f80b3641c9af9f04cde1b712c8c20916d8'/>
<id>urn:sha1:85fd27f80b3641c9af9f04cde1b712c8c20916d8</id>
<content type='text'>
On BeagleBone Black if no HDMI monitor is connected and suspend
is requested a kernel panic will result:

root@am335x-evm:~# echo mem &gt; /sys/power/state
[ 65.548710] PM: Syncing filesystems ... done.
[ 65.631311] Freezing user space processes ... (elapsed 0.006 seconds) done.
[ 65.648619] Freezing remaining freezable tasks ... (elapsed 0.005 seconds) done.
[ 65.833500] Unhandled fault: external abort on non-linefetch (0x1028) at 0xfa30e004
[ 65.841692] Internal error: : 1028 [#1] SMP ARM
  &lt;snip&gt;
[ 66.105287] [&lt;c03765f0&gt;] (platform_pm_suspend) from [&lt;c037b6d4&gt;] (dpm_run_callback+0x34/0x70)
[ 66.114370] [&lt;c037b6d4&gt;] (dpm_run_callback) from [&lt;c037ba84&gt;] (__device_suspend+0x10c/0x2f4)
[ 66.123357] [&lt;c037ba84&gt;] (__device_suspend) from [&lt;c037d004&gt;] (dpm_suspend+0x58/0x218)
[ 66.131796] [&lt;c037d004&gt;] (dpm_suspend) from [&lt;c008d948&gt;] (suspend_devices_and_enter+0x9c/0x3c0)
[ 66.141055] [&lt;c008d948&gt;] (suspend_devices_and_enter) from [&lt;c008de7c&gt;] (pm_suspend+0x210/0x24c)
[ 66.150312] [&lt;c008de7c&gt;] (pm_suspend) from [&lt;c008cabc&gt;] (state_store+0x68/0xb8)
[ 66.158103] [&lt;c008cabc&gt;] (state_store) from [&lt;c02e9654&gt;] (kobj_attr_store+0x14/0x20)
[ 66.166355] [&lt;c02e9654&gt;] (kobj_attr_store) from [&lt;c0185c70&gt;] (sysfs_kf_write+0x4c/0x50)
[ 66.174883] [&lt;c0185c70&gt;] (sysfs_kf_write) from [&lt;c018926c&gt;] (kernfs_fop_write+0xb4/0x150)
[ 66.183598] [&lt;c018926c&gt;] (kernfs_fop_write) from [&lt;c0122638&gt;] (vfs_write+0xa8/0x180)
[ 66.191846] [&lt;c0122638&gt;] (vfs_write) from [&lt;c01229f8&gt;] (SyS_write+0x40/0x8c)
[ 66.199365] [&lt;c01229f8&gt;] (SyS_write) from [&lt;c000e580&gt;] (ret_fast_syscall+0x0/0x48)
[ 66.207426] Code: e595c210 e5932000 e59cc000 e08c2002 (e592c000)

This is because the lcdc module is not enabled when no monitor is detected
to save power.  However the suspend handler just blindly tries to save the
lcdc state by copying out the pertinent registers. However module is off
so no good things happen when you try and access it.

This patch only saves off the registers if the module is enabled, and
then only restores the registers on resume if they were saved off during
suspend.

Signed-off-by: Darren Etheridge &lt;detheridge@ti.com&gt;
Tested-by: Dave Gerlach &lt;d-gerlach@ti.com&gt;
Acked-by: Felipe Balbi &lt;balbi@ti.com&gt;
Signed-off-by: Jyri Sarha &lt;jsarha@ti.com&gt;
Reviewed-by: Tomi Valkeinen &lt;tomi.valkeinen@ti.com&gt;
</content>
</entry>
<entry>
<title>drm/tilcdc: rewrite pixel clock calculation</title>
<updated>2016-02-25T14:39:28+00:00</updated>
<author>
<name>Darren Etheridge</name>
<email>detheridge@ti.com</email>
</author>
<published>2014-01-15T21:52:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=3d19306a8240a163f6b02bb46213c277d6d44e08'/>
<id>urn:sha1:3d19306a8240a163f6b02bb46213c277d6d44e08</id>
<content type='text'>
Updating the tilcdc DRM driver code to calculate the LCD controller
pixel clock more accurately. Based on a suggested implementation by
Tomi Valkeinen.

The current code does not work correctly and produces wrong results
with many requested clock rates. It also oddly uses two different
clocks, a display pll clock and a divider clock (child of display
pll), instead of just using the clock coming to the lcdc.

This patch removes the use of the display pll clock, and rewrites the
code to calculate the clock rates. The idea is simply to request a
clock rate of pixelclock*2, as the LCD controller has an internal
divider which we set to 2.

Signed-off-by: Darren Etheridge &lt;detheridge@ti.com&gt;
[Rewrapped description]
Signed-off-by: Jyri Sarha &lt;jsarha@ti.com&gt;
Reviewed-by: Tomi Valkeinen &lt;tomi.valkeinen@ti.com&gt;
</content>
</entry>
<entry>
<title>drm/tilcdc: Nuke preclose hook</title>
<updated>2016-02-08T08:55:52+00:00</updated>
<author>
<name>Daniel Vetter</name>
<email>daniel.vetter@ffwll.ch</email>
</author>
<published>2016-01-25T21:16:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=b19ac0b05d7229d89d9846a5c2e6725113624702'/>
<id>urn:sha1:b19ac0b05d7229d89d9846a5c2e6725113624702</id>
<content type='text'>
Again since the drm core takes care of event unlinking/disarming this
is now just needless code.

v2: Fixup misplaced hunks.

Cc: Rob Clark &lt;robdclark@gmail.com&gt;
Acked-by: Daniel Stone &lt;daniels@collabora.com&gt;
Reviewed-by: Alex Deucher &lt;alexander.deucher@amd.com&gt; (v1)
Signed-off-by: Daniel Vetter &lt;daniel.vetter@intel.com&gt;
Link: http://patchwork.freedesktop.org/patch/msgid/1453756616-28942-13-git-send-email-daniel.vetter@ffwll.ch
</content>
</entry>
<entry>
<title>drm/tilcdc: Add support for external tda998x encoder</title>
<updated>2015-05-27T10:13:32+00:00</updated>
<author>
<name>Jyri Sarha</name>
<email>jsarha@ti.com</email>
</author>
<published>2015-02-10T12:13:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=103cd8bc1c80ec0a12ef438c4493f7c26edc71bd'/>
<id>urn:sha1:103cd8bc1c80ec0a12ef438c4493f7c26edc71bd</id>
<content type='text'>
Add support for an external compontised DRM encoder. The external
encoder can be connected to tilcdc trough device tree graph binding.
The binding document for tilcdc has been updated. The current
implementation supports only tda998x encoder.

To be able to filter out the unsupported video modes the tilcdc driver
needs to hijack the external connectors helper functions. The tilcdc
installes new helper functions that are otherwise identical to
orignals, but the mode_valid() call-back check the mode first localy,
before calling the original call-back. The tilcdc dirver restores the
original helper functions before it is unbound from the external
device.

I got the idea and some lines of code from Jean-Francois Moine's
"drm/tilcdc: Change the interface with the tda998x driver"-patch.

Signed-off-by: Jyri Sarha &lt;jsarha@ti.com&gt;
Acked-by: Tomi Valkeinen &lt;tomi.valkeinen@ti.com&gt;
</content>
</entry>
<entry>
<title>drm/tilcdc: Remove tilcdc slave support for tda998x driver</title>
<updated>2015-05-27T10:13:32+00:00</updated>
<author>
<name>Jyri Sarha</name>
<email>jsarha@ti.com</email>
</author>
<published>2015-02-24T13:24:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=6730201f4fdcfbb1e6ec5ec374e6ef95e5bf9662'/>
<id>urn:sha1:6730201f4fdcfbb1e6ec5ec374e6ef95e5bf9662</id>
<content type='text'>
Remove tilcdc slave support for tda998x driver. The tilcdc slave
support would conflicts with componentized use of tda998x.

Signed-off-by: Jyri Sarha &lt;jsarha@ti.com&gt;
Acked-by: Tomi Valkeinen &lt;tomi.valkeinen@ti.com&gt;
</content>
</entry>
<entry>
<title>drm/tilcdc: remove submodule destroy calls</title>
<updated>2014-07-08T01:25:32+00:00</updated>
<author>
<name>Guido Martínez</name>
<email>guido@vanguardiasur.com.ar</email>
</author>
<published>2014-06-17T14:17:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=7cdcce9f8b4c15dc55f880307b844a49127db86e'/>
<id>urn:sha1:7cdcce9f8b4c15dc55f880307b844a49127db86e</id>
<content type='text'>
The TI tilcdc driver is designed with a notion of submodules. Currently,
at unload time, these submodules are iterated and destroyed.

Now that the tilcdc remove order is fixed, this can be handled perfectly
by the kernel using the device infrastructure, since each submodule
is a kernel driver itself, and they are only destroy()'ed at unload
time. Therefore we move the destroy() functionality to each submodule's
remove().

Also, remove some checks in the unloading process since the new code
guarantees the resources are allocated and need a release.

Signed-off-by: Guido Martínez &lt;guido@vanguardiasur.com.ar&gt;
Tested-by: Darren Etheridge &lt;detheridge@ti.com&gt;
Signed-off-by: Dave Airlie &lt;airlied@redhat.com&gt;
</content>
</entry>
<entry>
<title>drm/tilcdc fixing i2c/slave initialization race</title>
<updated>2013-06-27T23:12:54+00:00</updated>
<author>
<name>Darren Etheridge</name>
<email>detheridge@ti.com</email>
</author>
<published>2013-06-21T18:52:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=39de6194131c155901f96686a063212656d80c2e'/>
<id>urn:sha1:39de6194131c155901f96686a063212656d80c2e</id>
<content type='text'>
In certain senarios drm will initialize before i2c this means that i2c
slave devices like the nxp tda998x will fail to be probed.  This patch
detects this condition then defers the probe of the slave device and
the tilcdc main driver.

Signed-off-by: Darren Etheridge &lt;detheridge@ti.com&gt;
Acked-by: Rob Clark &lt;robdclark@gmail.com&gt;
Signed-off-by: Dave Airlie &lt;airlied@redhat.com&gt;
</content>
</entry>
<entry>
<title>drm/tilcdc: adding some more devicetree config</title>
<updated>2013-06-27T23:12:23+00:00</updated>
<author>
<name>Darren Etheridge</name>
<email>detheridge@ti.com</email>
</author>
<published>2013-06-21T18:52:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=4e5643468715260209e42b715e8cd9643456d2bd'/>
<id>urn:sha1:4e5643468715260209e42b715e8cd9643456d2bd</id>
<content type='text'>
Adding support for max-pixelclock and max-width device tree
entries. As some devices that use the tilcdc hardware module
have restrictions on the allowed/tested values.  Also update DT
bindings document to reflect new parameters.

Signed-off-by: Darren Etheridge &lt;detheridge@ti.com&gt;
Acked-by: Rob Clark &lt;robdclark@gmail.com&gt;
Signed-off-by: Dave Airlie &lt;airlied@redhat.com&gt;
</content>
</entry>
</feed>
