Re: 3.20-rc0 breaks nfsroot over usb

2015-02-26 Thread Aaro Koskinen
Hi, On Thu, Feb 26, 2015 at 11:19:50PM +0100, Pavel Machek wrote: > Ok, it seems that new config dependencies broke my kconfig. These will > not be enabled if you just to make oldconfig; you want to make sure > they are on. > > OMAP2430 and onwards (USB_MUSB_OMAP2PLUS) [N/m/y] (NEW) > TWL4030 US

Re: [PATCH 00/10] omap3 crypto fixes

2015-02-26 Thread Aaro Koskinen
Hi, On Thu, Feb 26, 2015 at 02:49:50PM +0100, Pali Rohár wrote: > This patch series fix crypto support for omap3 devices which use DT. > > It enables AES and SHAM on N9/N950 and SHAM on N900. AES is still disabled > for N900. (Please format your lines somewhere near < 76 chars, especially in co

Re: 3.20-rc0 breaks nfsroot over usb

2015-02-26 Thread Pavel Machek
Hi! > It no longer works after I merged > > commit 796e1c55717e9a6ff5c81b12289ffa1ffd919b6f > Merge: 8c334ce 45ee2db > Author: Linus Torvalds > Date: Mon Feb 16 15:48:00 2015 -0800 > > Merge branch 'drm-next' of > git://people.freedesktop.org/~airlied/linux > > Pull drm updates f

Re: [PATCH 2/3] soc: ti: Add wkup_m3_ipc driver

2015-02-26 Thread Tony Lindgren
* Dave Gerlach [150226 12:05]: > Tony, > On 01/05/2015 04:51 PM, Tony Lindgren wrote: > > * Dave Gerlach [150105 14:51]: > >> Felipe, > >> On 01/02/2015 02:16 PM, Felipe Balbi wrote: > >>> On Fri, Jan 02, 2015 at 02:00:16PM -0600, Dave Gerlach wrote: > Introduce a wkup_m3_ipc driver to handl

[PATCH] ARM: OMAP: enable TWL4030_USB in omap2plus_defconfig

2015-02-26 Thread Aaro Koskinen
Enable TWL4030_USB which is used at least on Nokia N900/N950/N9 (OMAP3). Signed-off-by: Aaro Koskinen --- arch/arm/configs/omap2plus_defconfig | 1 + 1 file changed, 1 insertion(+) diff --git a/arch/arm/configs/omap2plus_defconfig b/arch/arm/configs/omap2plus_defconfig index b738652..8c93aa9 1

Re: [PATCH 2/3] soc: ti: Add wkup_m3_ipc driver

2015-02-26 Thread Dave Gerlach
Tony, On 01/05/2015 04:51 PM, Tony Lindgren wrote: > * Dave Gerlach [150105 14:51]: >> Felipe, >> On 01/02/2015 02:16 PM, Felipe Balbi wrote: >>> On Fri, Jan 02, 2015 at 02:00:16PM -0600, Dave Gerlach wrote: Introduce a wkup_m3_ipc driver to handle communication between the MPU and Corte

[PATCH] ARM: dts: am335x-lxm: Use rmii-clock-ext

2015-02-26 Thread George McCollister
Use external clock for RMII since the internal clock doesn't meet the jitter requirements. Signed-off-by: George McCollister --- arch/arm/boot/dts/am335x-lxm.dts | 4 1 file changed, 4 insertions(+) diff --git a/arch/arm/boot/dts/am335x-lxm.dts b/arch/arm/boot/dts/am335x-lxm.dts index 7266

[PATCH] ARM: OMAP2+: hwmod: fix deassert hardreset clkdm usecounting

2015-02-26 Thread Tero Kristo
Deasserting hardreset increases the usecount for the hwmod parent clockdomain always, however usecount is only decreased at end in certain error cases. This causes software supervised clockdomains to remain always on, preventing idle. Fixed by always releasing the hwmods clockdomain parent when exi

[PATCH] Documentation: DT: omap_serial: document missing properties and add an example

2015-02-26 Thread Matt Porter
The omap_serial.txt binding documentation lacks a number of properties that are used in DTS files for platforms incorporating this peripheral. Fix this by documenting the missing required and optional fields and add an example. Signed-off-by: Matt Porter --- .../devicetree/bindings/serial/omap_s

Re: [PATCH v2] ASoC: omap: fix up SND_OMAP_SOC_OMAP_ABE_TWL6040 dependency

2015-02-26 Thread Peter Ujfalusi
On 02/25/2015 05:42 PM, Arnd Bergmann wrote: > The change to enable OMAP5 support on this platform was a little too > eager in adding a 'select' for a particular clock driver that might > not be enabled in all configurations, which in turn leads to a build > error: > > warning: (SND_OMAP_SOC_OMAP_

Re: [PATCH 4/8] ARM OMAP2+ GPMC: change get_gpmc_timing_reg output for DTS

2015-02-26 Thread Sergei Shtylyov
Hello. On 02/26/2015 05:45 PM, Robert ABEL wrote: DTS output was formatted to require additional work when copy-pasting into DTS. Nano-second timings were replaced with interval of values that produce the same number of clock ticks. Signed-off-by: Robert ABEL --- drivers/memory/omap-gpmc.

[PATCH RFC 3/6] drm/tilcdc: Add support for external compontised DRM encoder

2015-02-26 Thread Jyri Sarha
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 support has only been tested with tda998x encoder, but other encoders should work too with a little tweaking.

[PATCH RFC 0/6] Use DRM component API in tilcdc to connect to tda998x

2015-02-26 Thread Jyri Sarha
Remove tilcdc slave support and connect to tda998x trough its component DRM API. For dtb backward compatibility the code creates at boot time a DT overlay based on the earlier binding. The overlay conforms to the new graph based binding. The first patch is just a bugfix and can be applied or dropp

[PATCH RFC 6/6] ARM: dts: am335x-boneblack: Use new binding for HDMI

2015-02-26 Thread Jyri Sarha
Use new binding for the external tda19988 HDMI encoder. Signed-off-by: Jyri Sarha --- arch/arm/boot/dts/am335x-boneblack.dts | 20 +++- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/arch/arm/boot/dts/am335x-boneblack.dts b/arch/arm/boot/dts/am335x-boneblack.dts

[PATCH RFC 2/6] drm/tilcdc: Remove tilcdc slave support for tda998x driver

2015-02-26 Thread Jyri Sarha
Remove tilcdc slave support for tda998x driver. The tilcdc slave support would conflicts with componentized use of tda998x. Signed-off-by: Jyri Sarha --- .../devicetree/bindings/drm/tilcdc/slave.txt | 18 - drivers/gpu/drm/tilcdc/Makefile| 1 - drivers/gpu/drm/tilcdc

[PATCH RFC 4/6] drm/tilcdc: Add DRM_TILCDC_INIT for "ti,tilcdc,slave" binding support

2015-02-26 Thread Jyri Sarha
Adds a DRM_TILCDC_INIT module for "ti,tilcdc,slave" node conversion. The implementation is in tilcdc_boot_init.c and it uses tilcdc_slave_convert.dts as a basis for creating a DTS overlay. The DTS overlay adds an external tda998x encoder to tilcdc that corresponds to the old tda998x based slave enc

[PATCH RFC 5/6] drm/tilcdc: Force building of DRM_TILCDC_INIT

2015-02-26 Thread Jyri Sarha
If I read Documentation/kbuild/makefiles.txt section 3.6 right, this patch should not be needed. However, without this patch the objects needed for DRM_TILCDC_INIT are not linked, if DRM_TILCDC is built as module. Signed-off-by: Jyri Sarha --- drivers/gpu/drm/Makefile | 1 + 1 file changed, 1 in

[PATCH RFC 1/6] drm/tilcdc: Fix module unloading

2015-02-26 Thread Jyri Sarha
Force crtc dpms off before destroying the crtc instead of just checking the dpms state. This fixes warning message and frozen picture after tilcdc module unloading. Signed-off-by: Jyri Sarha --- drivers/gpu/drm/tilcdc/tilcdc_crtc.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --

[PATCH 4/8] ARM OMAP2+ GPMC: change get_gpmc_timing_reg output for DTS

2015-02-26 Thread Robert ABEL
DTS output was formatted to require additional work when copy-pasting into DTS. Nano-second timings were replaced with interval of values that produce the same number of clock ticks. Signed-off-by: Robert ABEL --- drivers/memory/omap-gpmc.c | 35 ++- 1 file change

[PATCH 4/8] ARM OMAP2+ GPMC: fix debug output alignment

2015-02-26 Thread Robert ABEL
GPMC debug output is aligned to 10 characters for field names. However, some fields have bigger names, screwing up the alignment. Consequently, alignment was changed to longest field name (17 chars) for now. Signed-off-by: Robert ABEL --- drivers/memory/omap-gpmc.c | 2 +- 1 file changed, 1 inse

[PATCH 1/8] ARM OMAP2+ GPMC: don't undef DEBUG

2015-02-26 Thread Robert ABEL
OMAP2+ GPMC driver undefines DEBUG, which makes it unnecessarily hard to turn DEBUG on. Remove the offending lines. Signed-off-by: Robert ABEL --- drivers/memory/omap-gpmc.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/drivers/memory/omap-gpmc.c b/drivers/memory/omap-gpmc.c index 24696f5

[PATCH 2/8] ARM OMAP2+ GPMC: add bus children

2015-02-26 Thread Robert ABEL
This patch adds support for spawning buses as children of the GPMC. Signed-off-by: Robert ABEL --- drivers/memory/omap-gpmc.c | 17 +++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/drivers/memory/omap-gpmc.c b/drivers/memory/omap-gpmc.c index 5cabac8..74a8c52 1006

[PATCH 5/8] ARM OMAP2+ GPMC: always program GPMCFCLKDIVIDER

2015-02-26 Thread Robert ABEL
The WAITMONITORINGTIME is expressed as a number of GPMC_CLK clock cycles, even though the access is defined as asynchronous, and no GPMC_CLK clock is provided to the external device. Still, GPMCFCLKDIVIDER is used as a divider for the GPMC clock, so it must be programmed to define the correct WAITM

[PATCH 6/8] ARM OMAP2+ GPMC: calculate GPMCFCLKDIVIDER based on WAITMONITORINGTIME

2015-02-26 Thread Robert ABEL
The WAITMONITORINGTIME is expressed as a number of GPMC_CLK clock cycles, even though the access is defined as asynchronous, and no GPMC_CLK clock is provided to the external device. Still, GPMCFCLKDIVIDER is used as a divider for the GPMC clock, so it must be programmed to define the correct WAITM

[PATCH 7/8] ARM OMAP2+ GPMC: fix WAITMONITORINGTIME divider bug

2015-02-26 Thread Robert ABEL
The WAITMONITORINGTIME is expressed as a number of GPMC_CLK clock cycles, even though the access is defined as asynchronous, and no GPMC_CLK clock is provided to the external device. Still, GPMCFCLKDIVIDER is used as a divider for the GPMC clock, so it must be programmed to define the correct WAITM

[PATCH 8/8] ARM OMAP2+ GPMC: fix programming/showing reserved timing parameters

2015-02-26 Thread Robert ABEL
GPMC_CONFIG1_i parameters CLKACTIVATIONTIME and WAITMONITORINGTIME have reserved values. Raise an error if calculated timings try to program reserved values. GPMC_CONFIG1_i ATTACHEDDEVICEPAGELENGTH and DEVICESIZE were already checked when parsing the DT. Explicitly comment invalid values on gpmc_

[PATCH 0/8] ARM OMAP2+ GPMC: fixes and bus children

2015-02-26 Thread Robert ABEL
These are the changes I proposed in three separate patchsets #([1], [2], [3]) rebased to 3.19 as well as new changes for little bugs I noticed while preparing this patchset. 1. DEBUG was undefined in source code --> remove offending lines 2. add capability to have busses as children of the GPMC an

Re: [PATCH 14/21] drm/omap: stop connector polling during suspend

2015-02-26 Thread grygorii.stras...@linaro.org
Hi Tomi, On 02/26/2015 03:20 PM, Tomi Valkeinen wrote: > When not using proper hotplug detection, DRM polls periodically the > connectors to find out if a cable is connected. This polling can happen > at any time, even very late in the suspend process. > > This causes a problem with omapdrm, when

[PATCH 02/10] ARM: OMAP3: Fix crypto support for HS devices

2015-02-26 Thread Pali Rohár
Register crypto hwmod links only if they are not disabled in DT. If DT information is missing, enable them only for GP devices. Before this patch crypto hwmod links were always disabled for all HS devices and it was not possible to use omap-aes and omap-sham linux drivers. Signed-off-by: Pali Roh

[PATCH 03/10] crypto: omap-sham: Add support for omap3 devices

2015-02-26 Thread Pali Rohár
omap3 support is same as omap2, just with different IO address (specified in DT) Signed-off-by: Pali Rohár --- drivers/crypto/omap-sham.c |4 1 file changed, 4 insertions(+) diff --git a/drivers/crypto/omap-sham.c b/drivers/crypto/omap-sham.c index 3c76696..b20e374 100644 --- a/drivers

[PATCH 01/10] ARM: OMAP2+: Return correct error values from device and hwmod

2015-02-26 Thread Pali Rohár
Without this patch function pm_runtime_get_sync() returns 0 even when some omap subfunction fails. This patch properly propagate error codes from omap functions back to caller. This patch fix problem, when loading omap-aes driver in qemu cause kernel oops. Signed-off-by: Pali Rohár --- arch/arm

[PATCH 06/10] ARM: dts: omap3: Add missing dmas for crypto

2015-02-26 Thread Pali Rohár
This patch adds missing dma DTS definitions for omap aes and sham drivers. Without it kernel drivers do not work. Signed-off-by: Pali Rohár --- arch/arm/boot/dts/omap3.dtsi |4 1 file changed, 4 insertions(+) diff --git a/arch/arm/boot/dts/omap3.dtsi b/arch/arm/boot/dts/omap3.dtsi inde

[PATCH 07/10] ARM: dts: n9/n950: Enable omap crypto support

2015-02-26 Thread Pali Rohár
Harmattan system on Nokia N9 and N950 devices uses omap crypto support. Bootloader on those devices is known that it enables HW crypto support. This patch just include omap36xx.dtsi directly, so aes and sham is enabled. Signed-off-by: Pali Rohár --- arch/arm/boot/dts/omap3-n950-n9.dtsi |2 +-

[PATCH 09/10] ARM: dts: omap3-tao3530: Include directly omap34xx.dtsi

2015-02-26 Thread Pali Rohár
This patch just move content of file omap34xx-hs.dtsi into omap3-tao3530.dts. There is no code change, patch is just preparation for removing -hs file. Signed-off-by: Pali Rohár --- arch/arm/boot/dts/omap3-tao3530.dtsi | 11 ++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --g

[PATCH 04/10] crypto: omap-sham: Check for return value from pm_runtime_get_sync

2015-02-26 Thread Pali Rohár
Function pm_runtime_get_sync could fail and we need to check return value to prevent kernel crash. Signed-off-by: Pali Rohár --- drivers/crypto/omap-sham.c |9 - 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/drivers/crypto/omap-sham.c b/drivers/crypto/omap-sham.c index

[PATCH 08/10] ARM: dts: n900: Enable omap sham and include directly omap34xx.dtsi

2015-02-26 Thread Pali Rohár
This patch moves content of file omap34xx-hs.dtsi into omap3-n900.dts and enable omap sham support (omap HW support for SHA + MD5). After testing both omap hwmod and omap-sham.ko drivers it looks like signed Nokia X-Loader enable L3 firewall for omap sham. There is no kernel crash with both officia

[PATCH 05/10] ARM: dts: omap3 hs: Remove timer12

2015-02-26 Thread Pali Rohár
Device timer12 is automatically disabled on all HS devices via DTS property "ti,timer-secure" in file omap3.dtsi so it can be safely removed. We do not need to disable it on another place. Signed-off-by: Pali Rohár --- arch/arm/boot/dts/omap34xx-hs.dtsi |4 arch/arm/boot/dts/omap36xx-hs

[PATCH 10/10] ARM: dts: Remove files omap34xx-hs.dtsi and omap36xx-hs.dtsi

2015-02-26 Thread Pali Rohár
These files are not used by any DTS file anymore. Signed-off-by: Pali Rohár --- arch/arm/boot/dts/omap34xx-hs.dtsi | 12 arch/arm/boot/dts/omap36xx-hs.dtsi | 12 2 files changed, 24 deletions(-) delete mode 100644 arch/arm/boot/dts/omap34xx-hs.dtsi delete mode 100

[PATCH 00/10] omap3 crypto fixes

2015-02-26 Thread Pali Rohár
This patch series fix crypto support for omap3 devices which use DT. It enables AES and SHAM on N9/N950 and SHAM on N900. AES is still disabled for N900. Pali Rohár (10): ARM: OMAP2+: Return correct error values from device and hwmod ARM: OMAP3: Fix crypto support for HS devices crypto: om

[PATCH] ARM: DTS: am57xx-beagle-x15: Do not include the atl header

2015-02-26 Thread Peter Ujfalusi
AM57xx does not have ATL block integrated. Signed-off-by: Peter Ujfalusi --- arch/arm/boot/dts/am57xx-beagle-x15.dts | 1 - 1 file changed, 1 deletion(-) diff --git a/arch/arm/boot/dts/am57xx-beagle-x15.dts b/arch/arm/boot/dts/am57xx-beagle-x15.dts index 6463f9ef2b54..c1d82e830a96 100644 --- a

[PATCH] ARM: DTS: dra7xx-clocks: Add gate clock for CLKOUT2

2015-02-26 Thread Peter Ujfalusi
To be able to control the gate for the clkout2 clock output. Signed-off-by: Peter Ujfalusi Signed-off-by: Jyri Sarha --- arch/arm/boot/dts/dra7xx-clocks.dtsi | 8 1 file changed, 8 insertions(+) diff --git a/arch/arm/boot/dts/dra7xx-clocks.dtsi b/arch/arm/boot/dts/dra7xx-clocks.dtsi

[PATCH 15/21] drm/omap: use DRM_ERROR_RATELIMITED() for error irqs

2015-02-26 Thread Tomi Valkeinen
omapdrm uses normal DRM_ERROR() print when the HW reports an error. As we sometimes may get a flood of errors, let's rather use DRM_ERROR_RATELIMITED(). Signed-off-by: Tomi Valkeinen --- drivers/gpu/drm/omapdrm/omap_crtc.c | 2 +- drivers/gpu/drm/omapdrm/omap_plane.c | 3 ++- 2 files changed, 3

[PATCH 11/21] drm/omap: fix plane's channel selection

2015-02-26 Thread Tomi Valkeinen
omap_plane_pre_apply() sets the plane's output channel too late, only after the plane has already been otherwise configured and enabled. This causes problems, as at the configuration stage we need to make decisions based on the output channel. This may lead to bad plane settings or failing to setu

[PATCH 14/21] drm/omap: stop connector polling during suspend

2015-02-26 Thread Tomi Valkeinen
When not using proper hotplug detection, DRM polls periodically the connectors to find out if a cable is connected. This polling can happen at any time, even very late in the suspend process. This causes a problem with omapdrm, when the poll happens during the suspend process after GPIOs have been

[PATCH 16/21] drm/omap: fix race with error_irq

2015-02-26 Thread Tomi Valkeinen
omapdrm tries to avoid error floods by unregistering the error irq when an error happens, and then registering the error irq again later. However, the code is racy, as it sometimes tries to unregister the error irq when it's already unregistered, leading to WARN(). Also, the code only registers th

[PATCH 02/21] drm/omap: page_flip: return -EBUSY if flip pending

2015-02-26 Thread Tomi Valkeinen
The DRM documentation says: "If a page flip is already pending, the page_flip operation must return -EBUSY." Currently omapdrm returns -EINVAL instead. Fix omapdrm by returning -EBUSY. Signed-off-by: Tomi Valkeinen --- drivers/gpu/drm/omapdrm/omap_crtc.c | 2 +- 1 file changed, 1 insertion(+),

[PATCH 12/21] drm/omap: tiler: fix race condition with engine->async

2015-02-26 Thread Tomi Valkeinen
The tiler irq handler uses engine->async value, but the code that sets engine->async and enables the interrupt does not have a barrier. This may cause the irq handler to see the old value of engine->async, causing memory corruption. Reported-by: Harinarayan Bhatta Signed-off-by: Tomi Valkeinen -

[PATCH 00/21] drm/omap: misc fixes/improvements

2015-02-26 Thread Tomi Valkeinen
Various small(ish) fixes and improvements for omapdrm. Laurent, some of these may conflict with your work. I'm fine with dropping the conflicting ones from this series, as long as the issue has been fixed in your WIP branch. Or maybe some of these should be rebased on top of your work. Tomi Tom

[PATCH 06/21] drm/omap: check CRTC color format earlier

2015-02-26 Thread Tomi Valkeinen
When setting a color format to a DRM plane, the DRM core checks whether the format is supported by the HW. However, it seems that when setting the color format of a CRTC (i.e. a root plane), there's no checking done. This causes omapdrm to configure omapdss with the bad color format, which omapdss

[PATCH 19/21] drm/omap: fix race condition with dev->obj_list

2015-02-26 Thread Tomi Valkeinen
omap_gem_objects are added to dev->obj_list in omap_gem_new, and removed in omap_gem_free_object. Unfortunately there's no locking for dev->obj_list, which eventually leads to a crash: WARNING: CPU: 1 PID: 1123 at lib/list_debug.c:59 __list_del_entry+0xa4/0xe0() list_del corruption. prev->next sho

[PATCH 03/21] drm/omap: clear omap_obj->paddr in omap_gem_put_paddr()

2015-02-26 Thread Tomi Valkeinen
Clear omap_obj's paddr when unmapping the memory, so that it's easier to catch bad use of the paddr. Signed-off-by: Tomi Valkeinen --- drivers/gpu/drm/omapdrm/omap_gem.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/gpu/drm/omapdrm/omap_gem.c b/drivers/gpu/drm/omapdrm/omap_gem.c i

[PATCH 21/21] drm/omap: keep ref to old_fb

2015-02-26 Thread Tomi Valkeinen
We store the fb being page-flipped to 'old_fb' field, but we don't increase the ref count of the fb when doing that. While I am not sure if it can cause problem in practice, it's still safer to keep a ref when storing a pointer to a fb. Signed-off-by: Tomi Valkeinen --- drivers/gpu/drm/omapdrm/o

[PATCH 01/21] drm/omap: fix encoder-crtc mapping

2015-02-26 Thread Tomi Valkeinen
OMAP DSS hardware supports changing the output port to which an overlay manager's video stream goes. For example, DPI video stream can come from any of the four overlay managers on OMAP5. However, as it's difficult to manage the change in the driver, the omapdss driver does not support that at the

[PATCH 05/21] drm/omap: add a comment why locking is missing

2015-02-26 Thread Tomi Valkeinen
unpin_worker() calls omap_framebuffer_unpin() without any locks, which looks very suspicious. However, both pin and unpin are always called via the driver's private workqueue, so the access is synchronized that way. Add a comment to make this clear. Signed-off-by: Tomi Valkeinen --- drivers/gpu

[PATCH 20/21] drm/omap: fix race conditon in DMM

2015-02-26 Thread Tomi Valkeinen
The omapdrm DMM code sometimes crashes with: WARNING: CPU: 0 PID: 1235 at lib/list_debug.c:36 __list_add+0x8c/0xbc() list_add double add: new=e9265368, prev=e90139c4, next=e9265368. This is caused by the code calling release_engine() twice for the same engine. dmm_txn_commit(wait=true) call is s

[PATCH 09/21] drm/omap: handle mismatching color format and buffer width

2015-02-26 Thread Tomi Valkeinen
omapdrm doesn't check if the width of the framebuffer and the color format's bits-per-pixel match. For example, using a display with a width of 1280, and a buffer allocated with using 32 bits per pixel (i.e. 1280*4 = 5120 bytes), with a 24 bits per pixel color format, leads to the following mismat

[PATCH 07/21] drm/omap: fix operation without fbdev

2015-02-26 Thread Tomi Valkeinen
omapdrm should work fine even if fbdev is missing. The current driver crashes in that case, though, as it is missing checks for the fbdev. Add the checks so that we don't free fbdev or restore fbdev mode when there's no fbdev. Signed-off-by: Tomi Valkeinen --- drivers/gpu/drm/omapdrm/omap_drv.c

[PATCH 13/21] drm/omap: remove dummy PM functions

2015-02-26 Thread Tomi Valkeinen
omapdrm has dummy functions for platform_device's suspend/resume/shutdown. The functions don't do anything, and those platform device functions are deprecated, so remove them from omapdrm. Signed-off-by: Tomi Valkeinen --- drivers/gpu/drm/omapdrm/omap_drv.c | 20 1 file chan

[PATCH 18/21] drm/omap: do not use BUG_ON(!spin_is_locked(x))

2015-02-26 Thread Tomi Valkeinen
spin_is_locked(x) returns always 0 on uniprocessor, triggering BUG() in omapdrm. Change it to use assert_spin_locked() to fix the issue. Signed-off-by: Tomi Valkeinen --- drivers/gpu/drm/omapdrm/omap_irq.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/gpu/drm/omapd

[PATCH 17/21] drm/omap: only ignore DIGIT SYNC LOST for TV output

2015-02-26 Thread Tomi Valkeinen
We need to ignore DIGIT SYNC LOST error when enabling/disabling TV output. The code does that, but it ignores the DIGI SYNC LOST when enabling any output. Normally this does no harm, but it could make us miss DIGIT SYNC LOST on some rare occasions. Fix the code to only ignore DIGIT SYNC LOST when

[PATCH 10/21] drm/omap: fix TILER on OMAP5

2015-02-26 Thread Tomi Valkeinen
On OMAP5 it is not possible to use TILER buffer with CPU when caching or write-combining is used. Doing so leads to errors from the memory manager. However, on OMAP4, write-combining works fine. This patch adds platform specific data for the TILER, and a function tiler_get_cpu_cache_flags() which

[PATCH 08/21] drm/omap: fix error handling in omap_framebuffer_create()

2015-02-26 Thread Tomi Valkeinen
When an error happens in omap_framebuffer_create(), omap_framebuffer_create() calls omap_framebuffer_destroy() if the fb struct has been allocated. However, that crashes, as omap_framebuffer_destroy(), which calls drm_framebuffer_cleanup(), should only be called after drm_framebuffer_init() Fix th

[PATCH 04/21] drm/omap: add pin refcounting to omap_framebuffer

2015-02-26 Thread Tomi Valkeinen
omap_framebuffer_pin() and omap_framebuffer_unpin() are currently broken, as they cannot be called multiple times (i.e. pin, pin, unpin, unpin), which is what happens in certain cases. This issue causes the driver to possibly use 0 as an address for a displayed buffer, leading to OCP error from DSS

[PATCH 12/15] OMAPDSS: Add support for MFLAG

2015-02-26 Thread Tomi Valkeinen
OMAP5 has support for MFLAG feature, which allows DSS to dynamically increase the priority of DISPC's DMA traffic. At the moment we don't have support for it. It was noticed that on DRA7 with high bandwidth use cases we see FIFO underflows. Implementing MFLAG support removed those underflows. Inte

[PATCH 06/15] OMAPDSS: DISPC: explicit handling for sync and de levels

2015-02-26 Thread Tomi Valkeinen
When configuring the lcd timings, instead of writing enum values directly to the HW, use switch-case to get the value to be programmed. This is safer and also allows us to change the enum values. Signed-off-by: Tomi Valkeinen --- drivers/video/fbdev/omap2/dss/dispc.c | 41 ++

[PATCH 15/15] OMAPDSS: disable VT switch

2015-02-26 Thread Tomi Valkeinen
We don't need VT switch when suspending/resuming, so disable it. This speeds up suspend/resume. Signed-off-by: Tomi Valkeinen Cc: NeilBrown --- drivers/video/fbdev/omap2/dss/dss.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/video/fbdev/omap2/dss/dss.c b/drivers/video/fbdev/o

[PATCH 14/15] OMAPDSS: HDMI: hdmi synclost work-around

2015-02-26 Thread Tomi Valkeinen
DISPC and HDMI have synchronization issues when enabling or disabling the output. The symptoms are a lot of sync-lost errors and occasionally dispc gets "stuck" and we never get FRAMEDONE when disabling. Testing has shown that this is somehow related to the time when DISPC's output gets enabled:

[PATCH 10/15] OMAPDSS: DISPC: lock access to DISPC_CONTROL & DISPC_CONFIG

2015-02-26 Thread Tomi Valkeinen
Dispc driver presumes that the callers handle locking for all normal functions. However, omapdrm doesn't handle this, and presumes that all overlay manager registers are private to that overlay manager, and thus presumes that configurations for overlay managers can be written via different threads

[PATCH 13/15] OMAPDSS: workaround for MFLAG + NV12 issue

2015-02-26 Thread Tomi Valkeinen
It was found that having two displays enabled and having an NV12 overlay on one of the displays will cause underflows/synclosts. Debugging this pointed to some issue with MFLAG. It is unclear why this issue is happening, but it looks like there is a HW bug related to MFLAG and FIFO management. Dis

[PATCH 08/15] OMAPDSS: DISPC: change sync_pclk_edge default value

2015-02-26 Thread Tomi Valkeinen
The common 'struct videomode' does not have a flag to select when the sync signals should be driven. The default behavior of DISPC HW is to drive the sync signal on the opposite pixel clock edge from data signal, which is also what the videomode_to_omap_video_timings() uses. However, it looks lik

[PATCH 11/15] OMAPDSS: setup default fifo thresholds

2015-02-26 Thread Tomi Valkeinen
At the moment we don't setup FIFO thresholds by default in omapdss. It's supposed to be done by the user of omapdss. And that is missing from omapdrm, causing unoptimal thresholds to be used when using omapdrm. While I believe it's in theory better to allow the user of omapdss to setup the fifo th

[PATCH 09/15] OMAPDSS: DISPC: fix div by zero issue in overlay scaling

2015-02-26 Thread Tomi Valkeinen
omapdrm doesn't always configure the overlays correctly, causing the overlay setup functions to be called with zero timings. This leads to division by zero error. This happens, for example, when a HDMI cable is not connected, but a user tries to setup a plane with scaling. Fixing omapdrm is a big

[PATCH 01/15] OMAPDSS: fix AM43xx minimum pixel clock divider

2015-02-26 Thread Tomi Valkeinen
AM43xx supports pixel clock divider of 1, just like all OMAP3+ SoCs. Fix the minimum divider value. Signed-off-by: Tomi Valkeinen --- drivers/video/fbdev/omap2/dss/dss_features.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/video/fbdev/omap2/dss/dss_features.c b/d

[PATCH 04/15] OMAPDSS: TFP410: fix input sync signals

2015-02-26 Thread Tomi Valkeinen
TFP410 requires that DE is active high and the data and syncs are driven on rising pixel clock edge. However, at the moment the driver doesn't request such syncs, and the end result is that the sync settings depend on default values, which are not right in all cases. Set the sync values explicitly

[PATCH 03/15] OMAPDSS: fix paddr check for TILER addresses

2015-02-26 Thread Tomi Valkeinen
The DISPC driver checks that the buffer address is not 0. However, when using TILER, the address space is TILER specific and 0 is a valid address. Fix the check to allow address of 0 for TILER. Signed-off-by: Tomi Valkeinen Reported-by: srinivas pulukuru --- drivers/video/fbdev/omap2/dss/dispc

[PATCH 05/15] OMAPDSS: DISPC: remove OMAPDSS_DRIVE_SIG_OPPOSITE_EDGES

2015-02-26 Thread Tomi Valkeinen
DISPC can drive data lines either on rising or falling pixel clock edge, which can be configured by the user. Sync lines can also be driven on rising or falling pixel clock edge, but additionally the HW can be configured to drive the sync lines on opposite clock edge from the data lines. This opp

[PATCH 02/15] OMAPDSS: HDMI5: Increase DDC SDA-HOLD time

2015-02-26 Thread Tomi Valkeinen
It has been observed that the current SDA-HOLD time is too short for some board/cable/monitor combinations. Increase the SDA-HOLD time to 1000ns. Signed-off-by: Tomi Valkeinen --- drivers/video/fbdev/omap2/dss/hdmi5_core.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drive

[PATCH 07/15] OMAPDSS: change signal_level & signal_edge enum values

2015-02-26 Thread Tomi Valkeinen
At the moment the enum values for ACTIVE_HIGH and RISING_EDGE are 0, and ACTIVE_LOW and FALLING_EDGE are 1, to match the values programmed to HW. The previous patch removed this dependency. Swap the enum values the other way around. This doesn't change the behavior in any way, but makes it easier

Re: [PATCH 7/8 v2] ARM OMAP2+ GPMC: calculate GPMCFCLKDIVIDER based on WAITMONITORINGTIME

2015-02-26 Thread Roger Quadros
Robert, On 25/02/15 19:20, Robert Abel wrote: > Hi Roger, > > On 25 Feb 2015 17:33, Roger Quadros wrote: >> ./scripts/checkpatch.pl detects some styling errors. > Well, there's like a million lines over 80 characters. I'm also a heathen and > don't use an 80 character terminal either. > I'll fix