[PATCH v6 59/84] drm/omap: dsi: set trans_mode according to client mode_flags

2020-12-15 Thread Tomi Valkeinen
The DSI host driver currently ignores the video mode flags in client->mode_flags. Add the code to take the transfer mode from client's mode_flags. Signed-off-by: Tomi Valkeinen Reviewed-by: Laurent Pinchart Reviewed-by: Sebastian Reichel --- drivers/gpu/drm/omapdrm/dss/dsi.c | 7 ++

[PATCH v6 26/84] drm/omap: dsi: do bus locking in host driver

2020-12-15 Thread Tomi Valkeinen
From: Sebastian Reichel This moves the bus locking into the host driver and unexports the custom API in preparation for drm_panel support. Signed-off-by: Sebastian Reichel Signed-off-by: Tomi Valkeinen --- .../gpu/drm/omapdrm/displays/panel-dsi-cm.c | 44 +-- drivers/gpu

[PATCH v6 50/84] drm/omap: squash omapdrm sub-modules into one

2020-12-15 Thread Tomi Valkeinen
ss_gather_components(struct device *dev) for_each_available_child_of_node(dev->of_node, child) omapdss_walk_device(dev, child, true); } -EXPORT_SYMBOL(omapdss_gather_components); static bool omapdss_component_is_loaded(struct omapdss_comp_node *comp) { @@ -315,8 +298,3 @@ bool

[PATCH v6 32/84] drm/omap: dsi: convert to drm_panel

2020-12-15 Thread Tomi Valkeinen
From: Sebastian Reichel This converts the DSI module to expect common drm_panel display drivers instead of dssdev based ones. Signed-off-by: Sebastian Reichel Signed-off-by: Tomi Valkeinen --- .../gpu/drm/omapdrm/displays/panel-dsi-cm.c | 203 +++--- drivers/gpu/drm/omapdrm/dss

[PATCH v6 31/84] drm/omap: dsi: drop custom panel capability support

2020-12-15 Thread Tomi Valkeinen
ities. Signed-off-by: Sebastian Reichel Signed-off-by: Tomi Valkeinen Reviewed-by: Laurent Pinchart --- drivers/gpu/drm/omapdrm/displays/panel-dsi-cm.c | 3 --- drivers/gpu/drm/omapdrm/dss/dsi.c | 8 drivers/gpu/drm/omapdrm/dss/omapdss.h | 8 +--- drivers/gp

[PATCH v6 20/84] drm/omap: dsi: drop useless sync()

2020-12-15 Thread Tomi Valkeinen
From: Sebastian Reichel The DSI sync() function only locks the bus and then releases it again. Currently the only invocation is directly before update(), which locks the bus anyways. Signed-off-by: Sebastian Reichel Signed-off-by: Tomi Valkeinen --- .../gpu/drm/omapdrm/displays/panel-dsi

[PATCH v6 34/84] drm/omap: dsi: implement check timings

2020-12-15 Thread Tomi Valkeinen
From: Sebastian Reichel Implement check timings, which will check if it's possible to configure the clocks for the provided mode using the same code as the set_config() hook. Signed-off-by: Sebastian Reichel Signed-off-by: Tomi Valkeinen --- drivers/gpu/drm/omapdrm/dss/dsi.c

[PATCH v6 44/84] drm/omap: drop unused DSS next pointer

2020-12-15 Thread Tomi Valkeinen
From: Sebastian Reichel Since all encoders and panels are using the bridge API now, we next pointer is no longer useful and can be dropped. Signed-off-by: Sebastian Reichel Signed-off-by: Tomi Valkeinen Reviewed-by: Laurent Pinchart --- drivers/gpu/drm/omapdrm/dss/base.c | 2

[PATCH v6 33/84] drm/omap: drop omapdss-boot-init

2020-12-15 Thread Tomi Valkeinen
From: Sebastian Reichel The table of compatible values needed to be prefixed with "omapdss," is empty, so all of this code is doing nothing now. Let's drop it. Signed-off-by: Sebastian Reichel Signed-off-by: Tomi Valkeinen Reviewed-by: Laurent Pinchart --- drivers/gpu/

[PATCH v6 54/84] drm/omap: remove dss_mgr_ops

2020-12-15 Thread Tomi Valkeinen
dss_mgr_ops was needed with the multi-module architecture, but is no longer needed. We can thus remove it and use direct calls. Signed-off-by: Tomi Valkeinen Acked-by: Laurent Pinchart Reviewed-by: Sebastian Reichel --- drivers/gpu/drm/omapdrm/dss/dss.h | 1 - drivers/gpu/drm/omapdrm/dss

[PATCH v6 30/84] drm/omap: dsi: Reverse direction of the DSS device enable/disable operations

2020-12-15 Thread Tomi Valkeinen
DSI panel driver moving it a bit further to a standard drm_panel driver. Signed-off-by: Sebastian Reichel Signed-off-by: Tomi Valkeinen Reviewed-by: Laurent Pinchart --- .../gpu/drm/omapdrm/displays/panel-dsi-cm.c | 74 +-- drivers/gpu/drm/omapdrm/omap_encoder.c| 28

[PATCH v6 28/84] drm/omap: dsi: do ULPS in host driver

2020-12-15 Thread Tomi Valkeinen
From: Sebastian Reichel Move ULPS handling into the DSI host controller, so that we no longer need a custom API for the DSI client. Note that for now ULPS is always disabled. Signed-off-by: Sebastian Reichel Signed-off-by: Tomi Valkeinen Acked-by: Laurent Pinchart --- .../gpu/drm/omapdrm

[PATCH v6 17/84] drm/omap: dsi: drop unused memory_read()

2020-12-15 Thread Tomi Valkeinen
From: Sebastian Reichel memory_read is not used, so we can drop the code. Signed-off-by: Sebastian Reichel Signed-off-by: Tomi Valkeinen Reviewed-by: Laurent Pinchart --- .../gpu/drm/omapdrm/displays/panel-dsi-cm.c | 93 --- drivers/gpu/drm/omapdrm/dss/omapdss.h

[PATCH v6 68/84] drm/omap: dsi: skip dsi_vc_enable_hs when already in correct mode

2020-12-15 Thread Tomi Valkeinen
Simplify and optimize dsi_vc_enable_hs() so that it can be called without checking the current HS/LP mode. Make dsi_vc_enable_hs() return if the VC is already in the correct mode. Signed-off-by: Tomi Valkeinen Reviewed-by: Laurent Pinchart Reviewed-by: Sebastian Reichel --- drivers/gpu/drm

[PATCH v6 39/84] drm/panel: Move OMAP's DSI command mode panel driver

2020-12-15 Thread Tomi Valkeinen
From: Sebastian Reichel The panel driver is no longer using any OMAP specific APIs, so let's move it into the generic panel directory. Signed-off-by: Sebastian Reichel Signed-off-by: Tomi Valkeinen Cc: Thierry Reding Cc: Sam Ravnborg Acked-by: Sam Ravnborg Acked-by: Laurent Pin

[PATCH v6 36/84] drm/omap: panel-dsi-cm: support unbinding

2020-12-15 Thread Tomi Valkeinen
From: Sebastian Reichel Now, that the driver implements the common DRM panel API the unbind no longer needs to be suppressed. Signed-off-by: Sebastian Reichel Signed-off-by: Tomi Valkeinen Acked-by: Laurent Pinchart --- drivers/gpu/drm/omapdrm/displays/panel-dsi-cm.c | 5 ++--- 1 file

[PATCH v6 57/84] ARM: dts: omap5: add address-cells & size-cells to dsi

2020-12-15 Thread Tomi Valkeinen
Add address-cells & size-cells to DSI nodes so that board files do not need to define them. Signed-off-by: Tomi Valkeinen Cc: Tony Lindgren Acked-by: Tony Lindgren Reviewed-by: Sebastian Reichel --- arch/arm/boot/dts/omap5.dtsi | 6 ++ 1 file changed, 6 insertions(+) diff --git a/

[PATCH v6 42/84] drm/omap: remove unused omap_connector

2020-12-15 Thread Tomi Valkeinen
From: Sebastian Reichel Remove unused code. Connectors are now created via drm_bridge_connector_init() and no longer OMAP specific. Signed-off-by: Sebastian Reichel Signed-off-by: Tomi Valkeinen Reviewed-by: Laurent Pinchart --- drivers/gpu/drm/omapdrm/Makefile | 1 - drivers/gpu

[PATCH v6 64/84] drm/omap: dsi: cleanup dispc channel usage

2020-12-15 Thread Tomi Valkeinen
The "channel" usage in omap dsi driver is confusing. As the first step, change "channel" to "dispc_channel" when dealing with the dispc channel. Signed-off-by: Tomi Valkeinen Reviewed-by: Laurent Pinchart Reviewed-by: Sebastian Reichel --- drivers/

[PATCH v6 27/84] drm/omap: dsi: untangle ulps ops from enable/disable

2020-12-15 Thread Tomi Valkeinen
From: Sebastian Reichel Create a custom function pointer for ULPS and use it instead of reusing disable/enable functions for ULPS mode switch. This allows us to use the common disable/enable functions pointers for DSI. Signed-off-by: Sebastian Reichel Signed-off-by: Tomi Valkeinen

[PATCH v6 67/84] drm/omap: dsi: untangle vc & channel

2020-12-15 Thread Tomi Valkeinen
DSI virtual channel and hardware VC blocks have gotten tangled as described in the previous commits. This has not caused any issues, as the value for both is 0, so it happens to work. To fix the issue, change the code to use the correct one of the two. Signed-off-by: Tomi Valkeinen Reviewed-by

[PATCH v6 53/84] drm/omap: remove dispc_ops

2020-12-15 Thread Tomi Valkeinen
dispc_ops was created to help with the multi-module architecture and giving us the possibility of multiple dispc implementations. Neither of these is valid anymore, and we can remove dispc_ops and use direct calls to dispc. Signed-off-by: Tomi Valkeinen Acked-by: Laurent Pinchart Reviewed-by

[PATCH v6 70/84] drm/omap: dsi: use separate VCs for cmd and video

2020-12-15 Thread Tomi Valkeinen
, and the commands will get interleaved into the pixel data. This patch makes the driver use VC0 for commands and VC1 for video. Signed-off-by: Tomi Valkeinen Reviewed-by: Laurent Pinchart Reviewed-by: Sebastian Reichel --- drivers/gpu/drm/omapdrm/dss/dsi.c | 12 +++- 1 file changed, 7

[PATCH v6 38/84] drm/omap: remove global dss_device variable

2020-12-15 Thread Tomi Valkeinen
From: Sebastian Reichel We can simply provide the device to the omapdrm driver via pdata. omapdss_is_initialized() is no longer required (even before this patch), since omapdrm device is only registered after the pointer is initialized. Signed-off-by: Sebastian Reichel Signed-off-by: Tomi

[PATCH v6 76/84] drm/omap: dsi: display_enable cleanup

2020-12-15 Thread Tomi Valkeinen
We can drop dsi_display_enable(), which just calls _dsi_display_enable(), and rename _dsi_display_enable() to dsi_display_enable(). The WARN_ON(!dsi_bus_is_locked(dsi)) in dsi_display_enable is extra and can be dropped, as _dsi_display_enable() has the same WARN_ON(). Signed-off-by: Tomi

[PATCH v6 60/84] drm/panel: panel-dsi-cm: set column & page at setup

2020-12-15 Thread Tomi Valkeinen
Set the column & page address once during setup, instead of relying the DSI host driver to set those. Signed-off-by: Tomi Valkeinen Reviewed-by: Sam Ravnborg Reviewed-by: Laurent Pinchart Reviewed-by: Sebastian Reichel --- drivers/gpu/drm/panel/panel-dsi-cm.c | 20 +++

[PATCH v6 74/84] drm/omap: dsi: move structs & defines to dsi.h

2020-12-15 Thread Tomi Valkeinen
Move structs and defines to a private dsi.h header file to make dsi.c a bit easier to navigate. Also move the (now) private structs and defines from omapdss.h to dsi.h. Signed-off-by: Tomi Valkeinen Reviewed-by: Laurent Pinchart Reviewed-by: Sebastian Reichel --- drivers/gpu/drm/omapdrm/dss

[PATCH v6 81/84] drm/omap: dsi: fix and cleanup ddr_clk_always_on

2020-12-15 Thread Tomi Valkeinen
The driver ignores MIPI_DSI_CLOCK_NON_CONTINUOUS, and always uses non-continuous clock. Fix this by using MIPI_DSI_CLOCK_NON_CONTINUOUS and at the same time, drop ddr_clk_always_on field which seems pretty useless. Signed-off-by: Tomi Valkeinen Reviewed-by: Laurent Pinchart Reviewed-by

[PATCH v6 63/84] drm/omap: dsi: drop useless channel checks

2020-12-15 Thread Tomi Valkeinen
A DSI peripheral can have virtual channel ID of 0-3. This should be always the case, and there's no need in the driver to validate the channel. Signed-off-by: Tomi Valkeinen Reviewed-by: Laurent Pinchart Reviewed-by: Sebastian Reichel --- drivers/gpu/drm/omapdrm/dss/dsi.c | 11 -

[PATCH v6 77/84] drm/omap: dsi: display_disable cleanup

2020-12-15 Thread Tomi Valkeinen
We can drop dsi_display_disable() which just calls _dsi_display_disable(), and rename _dsi_display_disable() to dsi_display_disable(). The WARN_ON(!dsi_bus_is_locked(dsi)) in dsi_display_disable is extra and can be dropped, as _dsi_display_disable() has the same WARN_ON(). Signed-off-by: Tomi

[PATCH v6 75/84] drm/omap: dsi: move enable/disable to bridge enable/disable

2020-12-15 Thread Tomi Valkeinen
Clean up the code by inlining dsi_enable_video_outputs and dsi_disable_video_outputs functions. Signed-off-by: Tomi Valkeinen Reviewed-by: Laurent Pinchart Reviewed-by: Sebastian Reichel --- drivers/gpu/drm/omapdrm/dss/dsi.c | 55 +-- 1 file changed, 22 insertions

[PATCH v6 78/84] drm/omap: dsi: rename dsi_display_* functions

2020-12-15 Thread Tomi Valkeinen
The function names have evolved to be very confusing, and bunch of them have "display" in them even if the function doesn't deal with display as such (e.g. dsi_display_enable which just enables the DSI interface). Rename them by dropping the "display". Signed-off-by: To

[PATCH v6 80/84] drm/omap: dsi: split video mode enable/disable into separate func

2020-12-15 Thread Tomi Valkeinen
Clean up the code by separating video-mode enable/disable code into functions of their own. Signed-off-by: Tomi Valkeinen Reviewed-by: Laurent Pinchart Reviewed-by: Sebastian Reichel --- drivers/gpu/drm/omapdrm/dss/dsi.c | 101 +- 1 file changed, 57 insertions

[PATCH v6 84/84] drm/omap: dsi: allow DSI commands to be sent early

2020-12-15 Thread Tomi Valkeinen
i_detatch(), so there are no race conditions. Signed-off-by: Tomi Valkeinen Reviewed-by: Sebastian Reichel --- drivers/gpu/drm/omapdrm/dss/dsi.c | 50 +++ drivers/gpu/drm/omapdrm/dss/dsi.h | 3 ++ 2 files changed, 48 insertions(+), 5 deletions(-) diff --git a/dri

[PATCH v6 69/84] drm/omap: dsi: enable HS before sending the frame

2020-12-15 Thread Tomi Valkeinen
starting a frame update. Signed-off-by: Tomi Valkeinen Reviewed-by: Laurent Pinchart Reviewed-by: Sebastian Reichel --- drivers/gpu/drm/omapdrm/dss/dsi.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/gpu/drm/omapdrm/dss/dsi.c b/drivers/gpu/drm/omapdrm/dss/dsi.c index 6d97ca018a62

[PATCH v6 46/84] drm/omap: drop dssdev display field

2020-12-15 Thread Tomi Valkeinen
From: Sebastian Reichel All displays are now using a drm_panel or a drm_bridge that models the connector instead of dssdev, so this field is always 0 and can be dropped. Signed-off-by: Sebastian Reichel Signed-off-by: Tomi Valkeinen Reviewed-by: Laurent Pinchart --- drivers/gpu/drm/omapdrm

[PATCH v6 62/84] drm/omap: dsi: simplify VC handling

2020-12-15 Thread Tomi Valkeinen
mipi_dsi_device pointer and remove the for-loops which made passes over all the four VCs (just the first one was ever used). Signed-off-by: Tomi Valkeinen Reviewed-by: Laurent Pinchart Reviewed-by: Sebastian Reichel --- drivers/gpu/drm/omapdrm/dss/dsi.c | 49 --- 1 file

[PATCH v6 55/84] drm/panel: panel-dsi-cm: use MIPI_DCS_GET_ERROR_COUNT_ON_DSI

2020-12-15 Thread Tomi Valkeinen
Use the common MIPI_DCS_GET_ERROR_COUNT_ON_DSI define instead of driver's own. Signed-off-by: Tomi Valkeinen Reviewed-by: Sam Ravnborg Reviewed-by: Laurent Pinchart Reviewed-by: Sebastian Reichel --- drivers/gpu/drm/panel/panel-dsi-cm.c | 3 +-- 1 file changed, 1 insertion(+), 2 dele

[PATCH v6 65/84] drm/omap: dsi: rename 'channel' to 'vc'

2020-12-15 Thread Tomi Valkeinen
1) and 2) currently is "fine", as at the moment we only support DSI peripherals with DSI virtual channel 0, and we always use VC0 to send data. So both 1) and 2) are always 0. Signed-off-by: Tomi Valkeinen Reviewed-by: Laurent Pinchart Reviewed-by: Sebastian Reichel --- drivers/gpu/d

[PATCH v6 45/84] drm/omap: drop DSS ops_flags

2020-12-15 Thread Tomi Valkeinen
From: Sebastian Reichel The omapdss device's ops_flags field is no longer used and can be dropped. Signed-off-by: Sebastian Reichel Signed-off-by: Tomi Valkeinen Reviewed-by: Laurent Pinchart --- drivers/gpu/drm/omapdrm/dss/omapdss.h | 9 - drivers/gpu/drm/omapdrm/dss/venc.c

[PATCH v6 61/84] drm/omap: dsi: send nop instead of page & column

2020-12-15 Thread Tomi Valkeinen
LP state. This transition should take place at least once per frame." Signed-off-by: Tomi Valkeinen Reviewed-by: Laurent Pinchart Reviewed-by: Sebastian Reichel --- drivers/gpu/drm/omapdrm/dss/dsi.c | 46 --- 1 file changed, 17 insertions(+), 29 deletions(-)

[PATCH v6 66/84] drm/omap: dsi: pass vc and channel to various functions

2020-12-15 Thread Tomi Valkeinen
To start fixing the issues related to channels and vcs described in the previous commit, pass vc and/or channel to various functions which will need it do properly handle different DSI channels and VCs. No functional changes. Signed-off-by: Tomi Valkeinen Reviewed-by: Laurent Pinchart Reviewed

[PATCH v6 82/84] drm/omap: dsi: remove ulps support

2020-12-15 Thread Tomi Valkeinen
substantial enough. Signed-off-by: Tomi Valkeinen Reviewed-by: Laurent Pinchart Reviewed-by: Sebastian Reichel --- drivers/gpu/drm/omapdrm/dss/dsi.c | 297 +- drivers/gpu/drm/omapdrm/dss/dsi.h | 4 - 2 files changed, 8 insertions(+), 293 deletions(-) diff --git a

[PATCH v6 51/84] drm/omap: remove unused display.c

2020-12-15 Thread Tomi Valkeinen
The functions in display.c are not used, so drop the file. Signed-off-by: Tomi Valkeinen Reviewed-by: Laurent Pinchart Reviewed-by: Sebastian Reichel --- drivers/gpu/drm/omapdrm/Makefile | 2 +- drivers/gpu/drm/omapdrm/dss/display.c | 58 --- drivers/gpu/drm

[PATCH v6 83/84] drm/omap: dsi: fix DCS_CMD_ENABLE

2020-12-15 Thread Tomi Valkeinen
We only need to set VC_CTRL:DCS_CMD_ENABLE for command mode panels when the HW has DSI_QUIRK_DCS_CMD_CONFIG_VC quirk. The old code did this right by accident, but now we set DCS_CMD_ENABLE for video mode panels too. Fix this by skipping the set for video mode. Signed-off-by: Tomi Valkeinen

[PATCH v6 71/84] drm/panel: panel-dsi-cm: remove extra 'if'

2020-12-15 Thread Tomi Valkeinen
We have a useless 'if' in the dsicm_bl_update_status(), a left over from the conversion to DRM model. Drop the if. Signed-off-by: Tomi Valkeinen Reviewed-by: Sam Ravnborg Reviewed-by: Laurent Pinchart Reviewed-by: Sebastian Reichel --- drivers/gpu/drm/panel/panel-dsi-cm.c | 8 +

[PATCH v6 79/84] drm/omap: dsi: cleanup initial vc setup

2020-12-15 Thread Tomi Valkeinen
As we now have a fixed setup for VCs (VC0 for video stream, VC1 for commands), we can simplify the VC setup. Signed-off-by: Tomi Valkeinen Reviewed-by: Sebastian Reichel --- drivers/gpu/drm/omapdrm/dss/dsi.c | 85 +++ 1 file changed, 31 insertions(+), 54 deletions

[PATCH v6 73/84] drm/panel: panel-dsi-cm: drop unneeded includes

2020-12-15 Thread Tomi Valkeinen
Drop unneeded includes. Signed-off-by: Tomi Valkeinen Reviewed-by: Sam Ravnborg Reviewed-by: Laurent Pinchart Reviewed-by: Sebastian Reichel --- drivers/gpu/drm/panel/panel-dsi-cm.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/drivers/gpu/drm/panel/panel-dsi-cm.c b/drivers/gpu/drm

[PATCH v6 49/84] ARM: omap2plus_defconfig: Update for moved DSI command mode panel

2020-12-15 Thread Tomi Valkeinen
From: Sebastian Reichel The DSI command mode panel is no longer specific to OMAP and thus the config option has been renamed slightly. Signed-off-by: Sebastian Reichel Signed-off-by: Tomi Valkeinen Cc: Tony Lindgren Reviewed-by: Laurent Pinchart Acked-by: Tony Lindgren --- arch/arm

[PATCH v6 58/84] drm/omap: pll: fix iteration loop check

2020-12-15 Thread Tomi Valkeinen
If the PLL calc function is given bad parameters, n_start/m_start may be higher than n_stop/m_stop, which leads to the loops iterating through the whole u32 number space. Fix this by failing early on such cases. Signed-off-by: Tomi Valkeinen Reviewed-by: Laurent Pinchart Reviewed-by: Sebastian

[PATCH v6 72/84] drm/panel: panel-dsi-cm: add panel database to driver

2020-12-15 Thread Tomi Valkeinen
Add a panel database to the driver instead of reading propertes from DT data. This is similar to panel-simple, and I believe it's more future safe way to handle the panels. Signed-off-by: Tomi Valkeinen Reviewed-by: Sam Ravnborg Reviewed-by: Sebastian Reichel --- drivers/gpu/drm/panel/

[PATCH v6 40/84] drm/omap: dsi: Register a drm_bridge

2020-12-15 Thread Tomi Valkeinen
Reichel Signed-off-by: Tomi Valkeinen Reviewed-by: Laurent Pinchart --- drivers/gpu/drm/omapdrm/dss/dsi.c | 134 -- 1 file changed, 89 insertions(+), 45 deletions(-) diff --git a/drivers/gpu/drm/omapdrm/dss/dsi.c b/drivers/gpu/drm/omapdrm/dss/dsi.c index 6f66ef0be166

[PATCH v6 47/84] drm/omap: simplify DSI manual update code

2020-12-15 Thread Tomi Valkeinen
From: Sebastian Reichel Move dsi_ops into the main structure, since all other ops are gone. Instead of checking the device type we can simply check if dsi_ops are set. Signed-off-by: Sebastian Reichel Signed-off-by: Tomi Valkeinen Reviewed-by: Laurent Pinchart --- drivers/gpu/drm/omapdrm

Re: [PATCH v4 1/2] drm: automatic legacy gamma support

2020-12-15 Thread Tomi Valkeinen
On 11/12/2020 13:42, Tomi Valkeinen wrote: +/** + * drm_crtc_supports_legacy_gamma - does the crtc support legacy gamma correction table + * @crtc: CRTC object + * + * Returns true/false if the given crtc supports setting the legacy gamma + * correction table. + */ +static bool

Re: [PATCH -next] drm: omapdrm: Delete useless kfree code

2020-12-15 Thread Tomi Valkeinen
On 14/12/2020 15:46, Zheng Yongjun wrote: The parameter of kfree function is NULL, so kfree code is useless, delete it. Signed-off-by: Zheng Yongjun --- drivers/gpu/drm/omapdrm/tcm-sita.c | 1 - 1 file changed, 1 deletion(-) diff --git a/drivers/gpu/drm/omapdrm/tcm-sita.c b/drivers/gpu/drm

[PATCH] MAINTAINERS: Update addresses for TI display drivers

2020-12-16 Thread Tomi Valkeinen
Update the maintainer email addresses for TI display drivers. Signed-off-by: Tomi Valkeinen --- MAINTAINERS | 10 +- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/MAINTAINERS b/MAINTAINERS index 281de213ef47..c21471497a18 100644 --- a/MAINTAINERS +++ b/MAINTAINERS

Re: [PATCHv1] video: omapfb2: Make standard and custom DSI command mode panel driver mutually exclusive

2021-01-12 Thread Tomi Valkeinen
Hi, On 12/01/2021 14:02, Sebastian Reichel wrote: > [replace Tomi's TI mail address with something working] > > Hi, > > On Fri, Jan 08, 2021 at 08:58:39PM +0100, Sam Ravnborg wrote: >> Hi Sebastian, >> >> On Fri, Jan 08, 2021 at 12:24:41PM +0100, Sebastian Reichel wrote: >>> Standard DRM panel d

Re: [PATCH] drm: omapdrm: Fix implicit dma_buf fencing

2022-01-06 Thread Tomi Valkeinen
Hi, On 05/01/2022 17:36, Ivaylo Dimitrov wrote: Currently omapdrm driver does not initialize dma_buf_export_info resv member, which leads to a new dma_resv being allocated and attached to the exported dma_buf. This leads to the issue that fences created on dma_buf objects imported by other drive

[PATCH] drm/omap: check plane size

2016-04-26 Thread Tomi Valkeinen
At the moment we don't check the plane input/output sizes, which can lead to DSS HW errors when invalid values are given from the userspace. Add a check so that the sizes are > 0. Signed-off-by: Tomi Valkeinen --- drivers/gpu/drm/omapdrm/omap_plane.c | 6 ++ 1 file changed, 6 in

[PATCH 12/24] drm/omap: add extern C guard for the UAPI header

2016-04-28 Thread Tomi Valkeinen
On 21/04/16 23:17, Emil Velikov wrote: > Cc: Tomi Valkeinen > Cc: Laurent Pinchart > Signed-off-by: Emil Velikov > --- > include/uapi/drm/omap_drm.h | 8 > 1 file changed, 8 insertions(+) > > diff --git a/include/uapi/drm/omap_drm.h b/include/uapi/drm/om

[PATCH] drm/omap: Remove deprecated regulator_can_change_voltage() usage

2016-04-29 Thread Tomi Valkeinen
On 28/04/16 15:42, Peter Ujfalusi wrote: > regulator_can_change_voltage() is deprecated and it's use is not necessary > as commit: > 6a0028b3dd67b regulator: Deprecate regulator_can_change_voltage() > describers it clearly. > As there is no practical use of it it can be removed. > At this point th

[PATCH] Revert "drm/omap: no need to select OMAP2_DSS"

2016-04-29 Thread Tomi Valkeinen
On 28/04/16 15:42, Peter Ujfalusi wrote: > This reverts commit 1c278e5e3718d15475ec08ee2135f37a6b13361c. > > If DRM_OMAP does not select OMAP2_DSS it is possible to build a kernel with > DRM_OMAP only and not selecting OMAP2_DSS. Since omapdrm depends on > OMAP2_DSS this will result on broken ke

[PATCH v4 3/7] drm/fb-helper: Add fb_deferred_io support

2016-04-29 Thread Tomi Valkeinen
Hi, On 28/04/16 18:18, Noralf Trønnes wrote: > This adds deferred io support to drm_fb_helper. > The fbdev framebuffer changes are flushed using the callback > (struct drm_framebuffer *)->funcs->dirty() by a dedicated worker > ensuring that it always runs in process context. > > Signed-off-by: N

[PATCH v4 4/7] fbdev: fb_defio: Export fb_deferred_io_mmap

2016-04-29 Thread Tomi Valkeinen
b_deferred_io_mmap() either because we don't have > access to the file pointer that powerpc needs. > > Signed-off-by: Noralf Trønnes Acked-by: Tomi Valkeinen Tomi -- next part -- A non-text attachment was scrubbed... Name: signature.asc Type: application/pg

[PATCH v4 3/7] drm/fb-helper: Add fb_deferred_io support

2016-04-29 Thread Tomi Valkeinen
On 29/04/16 17:55, Daniel Vetter wrote: >> Who's calling {write,fillrect,copyarea,imageblit} in an atomic context? >> That sounds like a very bad idea to me... >> >> If this is only for accumulating changes, I think it may be better to >> leave that to the driver as it may have better idea of how

[RESEND Patch 2/4] gpu: drm: omapdrm: dss-of: add missing of_node_put after calling of_parse_phandle

2016-08-11 Thread Tomi Valkeinen
Hi, On 15/07/16 06:17, Peter Chen wrote: > of_node_put needs to be called when the device node which is got > from of_parse_phandle has finished using. > > Cc: Tomi Valkeinen > Signed-off-by: Peter Chen > --- > drivers/gpu/drm/omapdrm/dss/dss-of.c | 7 --- > 1 fi

[PATCH] drm/omap: remove unneeded conversions to bool

2016-08-11 Thread Tomi Valkeinen
On 01/07/16 17:27, Andrew F. Davis wrote: > Found with scripts/coccinelle/misc/boolconv.cocci. > > Signed-off-by: Andrew F. Davis > --- > drivers/gpu/drm/omapdrm/dss/dispc.c | 6 +++--- > 1 file changed, 3 insertions(+), 3 deletions(-) > > diff --git a/drivers/gpu/drm/omapdrm/dss/dispc.c > b/d

[PATCH 1/1] Revert "gpu: drm: omapdrm: dss-of: add missing of_node_put after calling of_parse_phandle"

2016-08-11 Thread Tomi Valkeinen
On 11/08/16 13:56, Sean Paul wrote: > On Thu, Aug 11, 2016 at 5:44 AM, Peter Chen wrote: >> This reverts commit 2ab9f5879162499e1c4e48613287e3f59e593c4f. >> >> The of_get_next_parent will drop refcount on the passed node, so the reverted >> patch is wrong, thanks f

[PATCH 07/15] drm/omap: Use per-plane rotation property

2016-08-11 Thread Tomi Valkeinen
Hi, On 22/07/16 16:43, ville.syrjala at linux.intel.com wrote: > From: Ville Syrjälä > > The global mode_config.rotation_property is going away, switch over to > per-plane rotation_property. > > Not sure I got the annoying crtc rotation_property handling right. > Might work, or migth not. I

Re: [PATCHv2 16/22] drm/bridge: tc358767: remove check for video mode in link enable

2019-05-03 Thread Tomi Valkeinen
On 21/04/2019 01:14, Laurent Pinchart wrote: > Hi Tomi, > > Thank you for the patch. > > On Tue, Mar 26, 2019 at 12:31:40PM +0200, Tomi Valkeinen wrote: >> tc_main_link_enable() checks if videomode has been set, and fails if >> there's no videomode. As tc_main_li

Re: [PATCHv2 15/22] drm/bridge: tc358767: clean-up link training

2019-05-03 Thread Tomi Valkeinen
On 21/04/2019 01:13, Laurent Pinchart wrote: > Hi Tomi, > > Thank you for the patch. > > On Tue, Mar 26, 2019 at 12:31:39PM +0200, Tomi Valkeinen wrote: >> The current link training code does unnecessary retry-loops, and does >> extra writes to the registers. It is ea

Re: [PATCHv2 07/22] drm/bridge: tc358767: move video stream setup to tc_main_link_stream

2019-05-03 Thread Tomi Valkeinen
On 21/04/2019 00:25, Laurent Pinchart wrote: > Hi Tomi, > > Thank you for the patch. > > On Tue, Mar 26, 2019 at 12:31:31PM +0200, Tomi Valkeinen wrote: >> The driver currently sets the video stream registers in >> tc_main_link_setup. One should be able to establish

Re: [PATCHv2 08/22] drm/bridge: tc358767: split stream enable/disable

2019-05-03 Thread Tomi Valkeinen
On 21/04/2019 00:29, Laurent Pinchart wrote: > Hi Tomi, > > Thank you for the patch. > > On Tue, Mar 26, 2019 at 12:31:32PM +0200, Tomi Valkeinen wrote: >> It is nicer to have enable/disable functions instead of set(bool enable) >> style function. > > When

Re: [PATCHv2 10/22] drm/bridge: tc358767: add link disable function

2019-05-03 Thread Tomi Valkeinen
On 21/04/2019 00:39, Laurent Pinchart wrote: > Hi Tomi, > > Thank you for the patch. > > On Mon, Apr 15, 2019 at 02:39:21PM +0300, Tomi Valkeinen wrote: >> On 15/04/2019 11:36, Andrzej Hajda wrote: >> >>>> +static int tc_main_link_disable(stru

Re: [PATCHv2 14/22] drm/bridge: tc358767: cleanup LT result check

2019-05-03 Thread Tomi Valkeinen
On 21/04/2019 01:06, Laurent Pinchart wrote: > Hi Tomi, > > Thank you for the patch. > > On Tue, Mar 26, 2019 at 12:31:38PM +0200, Tomi Valkeinen wrote: >> The driver has a loop after ending link training, where it reads the >> DPCD link status and prints an err

Re: [PATCHv2 13/22] drm/bridge: tc358767: use more reliable seq when finishing LT

2019-05-03 Thread Tomi Valkeinen
On 21/04/2019 00:44, Laurent Pinchart wrote: > Hi Tomi, > > Thank you for the patch. > > On Tue, Mar 26, 2019 at 12:31:37PM +0200, Tomi Valkeinen wrote: >> At the end of the link training, two steps have to be taken: 1) >> tc358767's LT mode is disabled by a wri

Re: [PATCHv2 03/22] drm/bridge: tc358767: fix ansi 8b10b use

2019-05-03 Thread Tomi Valkeinen
On 23/04/2019 17:56, Laurent Pinchart wrote: >> During initial driver development I had one eDP display that reports 0 in >> Bit 0 >> (ANSI 8B/10B) of DPCD reg 0x0006 (MAIN_LINK_CHANNEL_CODING). >> Also it does not react on setting Bit 0 (SET_ANSI 8B10B) in 0x0108 >> (MAIN_LINK_CHANNEL_CODING_SET

[PATCHv3 02/23] drm/bridge: tc358767: reset voltage-swing & pre-emphasis

2019-05-03 Thread Tomi Valkeinen
We need to reset DPCD voltage-swing & pre-emphasis before starting the link training, as otherwise tc358767 will use the previous values as minimums. Signed-off-by: Tomi Valkeinen Reviewed-by: Andrzej Hajda --- drivers/gpu/drm/bridge/tc358767.c | 7 +++ 1 file changed, 7 insert

[PATCHv3 00/23] drm/bridge: tc358767: DP support

2019-05-03 Thread Tomi Valkeinen
nable * Disable only the video stream in tc_stream_disable() * Fix tc_connector_detect for eDP panels Tomi Tomi Valkeinen (23): drm/bridge: tc358767: fix tc_aux_get_status error handling drm/bridge: tc358767: reset voltage-swing & pre-emphasis drm/bridge: tc358767: fix ansi 8b10b use drm/bridge: tc

[PATCHv3 03/23] drm/bridge: tc358767: fix ansi 8b10b use

2019-05-03 Thread Tomi Valkeinen
working. This patch makes the driver to always use ANSI 8B10B encoding, and drops the 'coding8b10b' field which is no longer used. Signed-off-by: Tomi Valkeinen Reviewed-by: Andrzej Hajda --- drivers/gpu/drm/bridge/tc358767.c | 11 +++ 1 file changed, 3 insertions(+), 8 deletion

[PATCHv3 05/23] drm/bridge: tc358767: remove unused swing & preemp

2019-05-03 Thread Tomi Valkeinen
swing and preemp fields are not used. Remove them. Signed-off-by: Tomi Valkeinen Reviewed-by: Andrzej Hajda Reviewed-by: Laurent Pinchart --- drivers/gpu/drm/bridge/tc358767.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/drivers/gpu/drm/bridge/tc358767.c b/drivers/gpu/drm/bridge

[PATCHv3 04/23] drm/bridge: tc358767: cleanup spread & scrambler_dis

2019-05-03 Thread Tomi Valkeinen
Minor cleanups: - Use bool for boolean fields - Use DP_MAX_DOWNSPREAD_0_5 instead of BIT(0) - debug print down-spread and scrambler status Signed-off-by: Tomi Valkeinen Reviewed-by: Andrzej Hajda Reviewed-by: Laurent Pinchart --- drivers/gpu/drm/bridge/tc358767.c | 13 - 1 file

[PATCHv3 07/23] drm/bridge: tc358767: move video stream setup to tc_main_link_stream

2019-05-03 Thread Tomi Valkeinen
The driver currently sets the video stream registers in tc_main_link_setup. One should be able to establish the DP link without any video stream, so a more logical place is to configure the stream in the tc_main_link_stream. So move them there. Signed-off-by: Tomi Valkeinen Reviewed-by: Andrzej

[PATCHv3 06/23] drm/bridge: tc358767: cleanup aux_link_setup

2019-05-03 Thread Tomi Valkeinen
Modify aux_link_setup so that it does not use tc->link, and thus makes aux setup independent of the link probing. Signed-off-by: Tomi Valkeinen Reviewed-by: Andrzej Hajda Reviewed-by: Laurent Pinchart --- drivers/gpu/drm/bridge/tc358767.c | 9 +++-- 1 file changed, 3 insertions(+), 6 deletio

[PATCHv3 01/23] drm/bridge: tc358767: fix tc_aux_get_status error handling

2019-05-03 Thread Tomi Valkeinen
tc_aux_get_status() does not report AUX_TIMEOUT correctly, as it only checks the AUX_TIMEOUT if aux is still busy. Fix this by always checking for AUX_TIMEOUT. Signed-off-by: Tomi Valkeinen Reviewed-by: Andrzej Hajda --- drivers/gpu/drm/bridge/tc358767.c | 11 +++ 1 file changed, 7

[PATCHv3 15/23] drm/bridge: tc358767: cleanup LT result check

2019-05-03 Thread Tomi Valkeinen
ff-by: Tomi Valkeinen Reviewed-by: Andrzej Hajda --- drivers/gpu/drm/bridge/tc358767.c | 62 +-- 1 file changed, 35 insertions(+), 27 deletions(-) diff --git a/drivers/gpu/drm/bridge/tc358767.c b/drivers/gpu/drm/bridge/tc358767.c index 87eb875e1174..2cec06520fcf 1

[PATCHv3 11/23] drm/bridge: tc358767: disable only video stream in tc_stream_disable

2019-05-03 Thread Tomi Valkeinen
EN in tc_stream_disable to stop the video stream while keeping the link enabled. Signed-off-by: Tomi Valkeinen --- drivers/gpu/drm/bridge/tc358767.c | 5 - 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/bridge/tc358767.c b/drivers/gpu/drm/bridge/tc358767.c index b22f5fe

[PATCHv3 10/23] drm/bridge: tc358767: add link disable function

2019-05-03 Thread Tomi Valkeinen
Currently we have tc_main_link_setup(), which configures and enabled the link, but we have no counter-part for disabling the link. Add tc_main_link_disable, and rename tc_main_link_setup to tc_main_link_enable. Signed-off-by: Tomi Valkeinen --- drivers/gpu/drm/bridge/tc358767.c | 27

[PATCHv3 17/23] drm/bridge: tc358767: remove check for video mode in link enable

2019-05-03 Thread Tomi Valkeinen
efore drm_bridge_funcs.enable is called, so we don't need the check there either. Signed-off-by: Tomi Valkeinen Reviewed-by: Andrzej Hajda --- drivers/gpu/drm/bridge/tc358767.c | 4 1 file changed, 4 deletions(-) diff --git a/drivers/gpu/drm/bridge/tc358767.c b/drivers/gpu/drm/bridge/tc3587

[PATCHv3 19/23] drm/bridge: tc358767: remove tc_connector_best_encoder

2019-05-03 Thread Tomi Valkeinen
drm_connector_helper_funcs.best_encoder is only needed when the connector can have more than one encoder, and that is never the case here. So remove tc_connector_best_encoder. Signed-off-by: Tomi Valkeinen Reviewed-by: Andrzej Hajda Reviewed-by: Laurent Pinchart --- drivers/gpu/drm/bridge

[PATCHv3 14/23] drm/bridge: tc358767: use more reliable seq when finishing LT

2019-05-03 Thread Tomi Valkeinen
d the link disconnects right after those steps. If I reverse the steps, it works every time. There's a chance that this is DP sink specific, though, but as my testing shows this sequence to be much more reliable, let's change it. Signed-off-by: Tomi Valkeinen Reviewed-by: Andrzej Hajda

[PATCHv3 12/23] drm/bridge: tc358767: ensure DP is disabled before LT

2019-05-03 Thread Tomi Valkeinen
be somewhat random if DP link has erroneously been left enabled, let's add a WARN_ON() for the case and set DP0CTL to 0. Signed-off-by: Tomi Valkeinen --- drivers/gpu/drm/bridge/tc358767.c | 4 1 file changed, 4 insertions(+) diff --git a/drivers/gpu/drm/bridge/tc358767.c b/drivers/gp

[PATCHv3 09/23] drm/bridge: tc358767: move PXL PLL enable/disable to stream enable/disable

2019-05-03 Thread Tomi Valkeinen
nable. Also, currently the PXL PLL is only disabled if the driver if removed. Let's disable the PXL PLL when the stream is disabled. Signed-off-by: Tomi Valkeinen Reviewed-by: Andrzej Hajda Reviewed-by: Laurent Pinchart --- drivers/gpu/drm/bridge/tc358767.c | 20 ++-- 1 file c

[PATCHv3 08/23] drm/bridge: tc358767: split stream enable/disable

2019-05-03 Thread Tomi Valkeinen
It is nicer to have enable/disable functions instead of set(bool enable) style function. Split tc_main_link_stream into tc_stream_enable and tc_stream_disable. Signed-off-by: Tomi Valkeinen --- drivers/gpu/drm/bridge/tc358767.c | 81 +-- 1 file changed, 45

[PATCHv3 22/23] drm/bridge: tc358767: add IRQ and HPD support

2019-05-03 Thread Tomi Valkeinen
Add support for interrupt and hotplug handling. Both are optional. Signed-off-by: Tomi Valkeinen --- drivers/gpu/drm/bridge/tc358767.c | 166 ++ 1 file changed, 148 insertions(+), 18 deletions(-) diff --git a/drivers/gpu/drm/bridge/tc358767.c b/drivers/gpu/drm

[PATCHv3 16/23] drm/bridge: tc358767: clean-up link training

2019-05-03 Thread Tomi Valkeinen
ch handles waiting for the LT phase to finish, and does the necessary LT register setups in tc_main_link_enable, without extra loops. Signed-off-by: Tomi Valkeinen --- drivers/gpu/drm/bridge/tc358767.c | 136 +- 1 file changed, 60 insertions(+), 76 deletions(-) di

[PATCHv3 21/23] drm/bridge: tc358767: add GPIO & interrupt registers

2019-05-03 Thread Tomi Valkeinen
Add GPIO and interrupt related registers for HPD work. Mark INTSTS_G and GPIOI as volatile. Signed-off-by: Tomi Valkeinen Reviewed-by: Andrzej Hajda --- drivers/gpu/drm/bridge/tc358767.c | 8 1 file changed, 8 insertions(+) diff --git a/drivers/gpu/drm/bridge/tc358767.c b/drivers

[PATCHv3 13/23] drm/bridge: tc358767: remove unnecessary msleep

2019-05-03 Thread Tomi Valkeinen
For some reason the driver has a msleep(100) after writing to DP_PHY_CTRL. Toshiba's documentation doesn't suggest any delay is needed, and I have not seen any issues with the sleep removed. Drop it, as msleep(100) is a rather big one. Signed-off-by: Tomi Valkeinen Reviewed-by: And

[PATCHv3 18/23] drm/bridge: tc358767: use bridge mode_valid

2019-05-03 Thread Tomi Valkeinen
We have tc_connector_mode_valid() to filter out videomdoes that the tc358767 cannot support. As it is a bridge limitation, change the code to use drm_bridge_funcs's mode_valid instead. Signed-off-by: Tomi Valkeinen Reviewed-by: Andrzej Hajda Reviewed-by: Laurent Pinchart --- drivers/gp

[PATCHv3 20/23] drm/bridge: tc358767: copy the mode data, instead of storing the pointer

2019-05-03 Thread Tomi Valkeinen
instead to ensure we don't refer to freed/modified data. Signed-off-by: Tomi Valkeinen --- drivers/gpu/drm/bridge/tc358767.c | 8 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/drivers/gpu/drm/bridge/tc358767.c b/drivers/gpu/drm/bridge/tc358767.c index 591bf64

<    1   2   3   4   5   6   7   8   9   10   >