[PATCHv2 49/56] drm/omap: drop unused DSS next pointer

2020-02-25 Thread 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 --- drivers/gpu/drm/omapdrm/dss/base.c | 2 +- drivers/gpu/drm/omapdrm/dss/omapdss.h | 1 - drivers/gpu/drm/omapdrm/dss/output.c | 13

[PATCHv2 30/56] drm/dsi: add MIPI_DSI_MODE_ULPS_IDLE

2020-02-25 Thread Sebastian Reichel
the DSI host implementation that the panel allows going into ULPS mode. Signed-off-by: Sebastian Reichel --- include/drm/drm_mipi_dsi.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/include/drm/drm_mipi_dsi.h b/include/drm/drm_mipi_dsi.h index 360e6377e84b..f36f89c14b4a 100644

[PATCHv2 40/56] drm/omap: panel-dsi-cm: fix remove()

2020-02-25 Thread Sebastian Reichel
Do not try to reset the panel after DSI has been detached, since the DSI clocks may have been disabled at this point. The panel will be disabled and unprepared before being removed and a reset will be done when being probed again. Signed-off-by: Sebastian Reichel --- drivers/gpu/drm/omapdrm

[PATCHv2 16/56] drm/omap: dsi: request VC via mipi_dsi_attach

2020-02-25 Thread Sebastian Reichel
Drop custom request_vc/release_vc callbacks by using the generic mipi_dsi_attach/mipi_dsi_detach functions. Signed-off-by: Sebastian Reichel --- .../gpu/drm/omapdrm/displays/panel-dsi-cm.c | 24 +--- drivers/gpu/drm/omapdrm/dss/dsi.c | 61 --- drivers/gpu/drm

[PATCHv2 07/56] drm/omap: dsi: add generic transfer function

2020-02-25 Thread Sebastian Reichel
-by: Sebastian Reichel --- drivers/gpu/drm/omapdrm/dss/dsi.c | 52 +++ drivers/gpu/drm/omapdrm/dss/omapdss.h | 3 ++ 2 files changed, 55 insertions(+) diff --git a/drivers/gpu/drm/omapdrm/dss/dsi.c b/drivers/gpu/drm/omapdrm/dss/dsi.c index f01e0476296d..84e2eb0b51d7 100644

[PATCHv2 04/56] omap/drm: drop unused dsi.configure_pins

2020-02-25 Thread Sebastian Reichel
The panel-dsi-cm's ddata->pin_config is always NULL, so this callback is never called. Instead the DSI encoder gets the pin configuration directly from DT. Signed-off-by: Sebastian Reichel --- drivers/gpu/drm/omapdrm/displays/panel-dsi-cm.c | 11 --- drivers/gpu/drm/omapdrm/dss/ds

[PATCHv2 09/56] drm/omap: dsi: unexport specific data transfer functions

2020-02-25 Thread Sebastian Reichel
After converting all DSI drivers, unexport the specific transfer functions. Signed-off-by: Sebastian Reichel --- drivers/gpu/drm/omapdrm/dss/dsi.c | 12 drivers/gpu/drm/omapdrm/dss/omapdss.h | 20 2 files changed, 32 deletions(-) diff --git a/drivers/gpu

[PATCHv2 01/56] ARM: dts: omap: add channel to DSI panels

2020-02-25 Thread Sebastian Reichel
The standard binding for DSI requires, that the channel number of the panel is encoded in DT. This adds the channel number in all OMAP3-5 boards, in preparation for using common infrastructure. Signed-off-by: Sebastian Reichel --- .../devicetree/bindings/display/panel/panel-dsi-cm.txt | 4

[PATCHv2 44/56] drm/panel: Move OMAP's DSI command mode panel driver

2020-02-25 Thread 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 --- drivers/gpu/drm/omapdrm/Kconfig| 1 - drivers/gpu/drm/omapdrm/Makefile | 1 - drivers/gpu/drm

[PATCHv2 17/56] drm/omap: panel-dsi-cm: drop hardcoded VC

2020-02-25 Thread Sebastian Reichel
Use dsi->channel everywhere, which originates from DT. Signed-off-by: Sebastian Reichel --- .../gpu/drm/omapdrm/displays/panel-dsi-cm.c | 20 +++ 1 file changed, 7 insertions(+), 13 deletions(-) diff --git a/drivers/gpu/drm/omapdrm/displays/panel-dsi-cm.c b/drivers/gpu/

[PATCHv2 34/56] drm/omap: dsi: drop custom panel capability support

2020-02-25 Thread Sebastian Reichel
Due to previous changes the DSI encoder gets the capabilities via DSI client's mode_flags and no longer needs the omapdss specific caps. The core code now checks if the DSI encoder is actually configured into command mode instead of just checking the panel capabilities. Signed-off-by: Sebastian

[PATCHv2 06/56] drm/omap: constify write buffers

2020-02-25 Thread Sebastian Reichel
The write buffers are not modified, so they can be constant. Signed-off-by: Sebastian Reichel --- drivers/gpu/drm/omapdrm/dss/dsi.c | 24 drivers/gpu/drm/omapdrm/dss/omapdss.h | 10 +- 2 files changed, 17 insertions(+), 17 deletions(-) diff --git a/drivers

[PATCHv2 13/56] drm/omap: dsi: switch dsi_vc_send_long/short to mipi_dsi_msg

2020-02-25 Thread Sebastian Reichel
Simplify the DSI encoder by using mipi_dsi_msg for dsi_vc_send_long and dsi_vc_send_short. Further improvements require cleaning up the channel allocation code first. Signed-off-by: Sebastian Reichel --- drivers/gpu/drm/omapdrm/dss/dsi.c | 92 +++ 1 file changed, 45

[PATCHv2 47/56] drm/omap: remove unused omap_connector

2020-02-25 Thread Sebastian Reichel
Remove unused code. Connectors are now created via drm_bridge_connector_init() and no longer OMAP specific. Signed-off-by: Sebastian Reichel --- drivers/gpu/drm/omapdrm/Makefile | 1 - drivers/gpu/drm/omapdrm/omap_connector.c | 128 --- drivers/gpu/drm/omapdrm

[PATCHv2 19/56] drm/omap: dsi: drop unused memory_read()

2020-02-25 Thread Sebastian Reichel
Signed-off-by: Sebastian Reichel --- .../gpu/drm/omapdrm/displays/panel-dsi-cm.c | 93 --- drivers/gpu/drm/omapdrm/dss/omapdss.h | 4 - 2 files changed, 97 deletions(-) diff --git a/drivers/gpu/drm/omapdrm/displays/panel-dsi-cm.c b/drivers/gpu/drm/omapdrm/displays

[PATCHv2 23/56] drm/omap: dsi: use pixel-format and mode from attach

2020-02-25 Thread Sebastian Reichel
In order to reduce the amount of custom functionality, this moves handling of pixel format and DSI mode from set_config() to dsi attach. Signed-off-by: Sebastian Reichel --- .../gpu/drm/omapdrm/displays/panel-dsi-cm.c | 2 -- drivers/gpu/drm/omapdrm/dss/dsi.c | 20

[PATCHv2 41/56] drm/omap: dsi: return proper error code from dsi_update_all()

2020-02-25 Thread Sebastian Reichel
Signed-off-by: Sebastian Reichel --- drivers/gpu/drm/omapdrm/dss/dsi.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/gpu/drm/omapdrm/dss/dsi.c b/drivers/gpu/drm/omapdrm/dss/dsi.c index acbfffe83b3e..f629e6b1025b 100644 --- a/drivers/gpu/drm/omapdrm/dss/dsi.c +++ b

[PATCHv2 35/56] drm/omap: dsi: convert to drm_panel

2020-02-25 Thread Sebastian Reichel
This converts the DSI module to expect common drm_panel display drivers instead of dssdev based ones. Signed-off-by: Sebastian Reichel --- .../gpu/drm/omapdrm/displays/panel-dsi-cm.c | 210 +++--- drivers/gpu/drm/omapdrm/dss/dsi.c | 133 +-- .../gpu/drm/omapdrm

[PATCHv2 46/56] drm/omap: remove legacy DSS device operations

2020-02-25 Thread Sebastian Reichel
All DSS devices have been converted to bridge API, so the device operations are always NULL. This removes the device ops function pointers and all code using it. Signed-off-by: Sebastian Reichel --- drivers/gpu/drm/omapdrm/dss/base.c | 66 drivers/gpu/drm/omapdrm

[PATCHv2 50/56] drm/omap: drop empty omap_encoder helper functions

2020-02-25 Thread Sebastian Reichel
Cleanup empty functions for encoder enable, disable and atomic check. Signed-off-by: Sebastian Reichel --- drivers/gpu/drm/omapdrm/omap_encoder.c | 28 -- 1 file changed, 28 deletions(-) diff --git a/drivers/gpu/drm/omapdrm/omap_encoder.c b/drivers/gpu/drm/omapdrm

[PATCHv2 56/56] ARM: dts: omap4-droid4: add panel orientation

2020-02-25 Thread Sebastian Reichel
Add information about panel orientation, so that the system boots into a properly rotated shell. Signed-off-by: Sebastian Reichel --- arch/arm/boot/dts/motorola-mapphone-common.dtsi | 1 + 1 file changed, 1 insertion(+) diff --git a/arch/arm/boot/dts/motorola-mapphone-common.dtsi b/arch/arm

[PATCHv2 20/56] drm/omap: dsi: drop unused get_te()

2020-02-25 Thread Sebastian Reichel
The get_te() callback is not used, so we can drop the custom API. Signed-off-by: Sebastian Reichel --- drivers/gpu/drm/omapdrm/displays/panel-dsi-cm.c | 13 - drivers/gpu/drm/omapdrm/dss/omapdss.h | 1 - 2 files changed, 14 deletions(-) diff --git a/drivers/gpu/drm

[PATCHv2 28/56] drm/omap: dsi: do bus locking in host driver

2020-02-25 Thread 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 --- .../gpu/drm/omapdrm/displays/panel-dsi-cm.c | 46 +-- drivers/gpu/drm/omapdrm/dss/dsi.c | 33

[PATCHv2 02/56] ARM: dts: omap4-droid4: add panel compatible

2020-02-25 Thread Sebastian Reichel
Add Droid 4 specific compatible value in addition to the generic one, so that we have the ability to add panel specific quirks in the future. Signed-off-by: Sebastian Reichel --- arch/arm/boot/dts/motorola-mapphone-common.dtsi | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git

[PATCHv2 05/56] drm/omap: dsi: use MIPI_DSI_FMT_* instead of OMAP_DSS_DSI_FMT_*

2020-02-25 Thread Sebastian Reichel
This replaces OMAP specific enum for pixel format with common implementation. Signed-off-by: Sebastian Reichel --- .../gpu/drm/omapdrm/displays/panel-dsi-cm.c | 2 +- drivers/gpu/drm/omapdrm/dss/dsi.c | 49 +++ drivers/gpu/drm/omapdrm/dss/omapdss.h | 10

[PATCHv2 26/56] drm/omap: dsi: move TE GPIO handling into core

2020-02-25 Thread Sebastian Reichel
in the same way as the exynos DSI implementation. Signed-off-by: Sebastian Reichel --- .../gpu/drm/omapdrm/displays/panel-dsi-cm.c | 101 + drivers/gpu/drm/omapdrm/dss/dsi.c | 140 -- 2 files changed, 135 insertions(+), 106 deletions(-) diff --git a/drivers

[PATCHv2 11/56] drm/omap: dsi: simplify write function

2020-02-25 Thread Sebastian Reichel
Simplify the write related messages handling by using the functionality provided by CONFIG_DRM_MIPI_DSI. Signed-off-by: Sebastian Reichel --- drivers/gpu/drm/omapdrm/dss/Kconfig | 1 + drivers/gpu/drm/omapdrm/dss/dsi.c | 144 +++- 2 files changed, 33 insertions

[PATCHv2 18/56] drm/omap: panel-dsi-cm: use common MIPI DCS 1.3 defines

2020-02-25 Thread Sebastian Reichel
Drop local definition of common MIPI DCS 1.3 defines. Signed-off-by: Sebastian Reichel --- drivers/gpu/drm/omapdrm/displays/panel-dsi-cm.c | 12 ++-- 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/drivers/gpu/drm/omapdrm/displays/panel-dsi-cm.c b/drivers/gpu/drm/omapdrm

[PATCHv2 08/56] drm/omap: panel-dsi-cm: convert to transfer API

2020-02-25 Thread Sebastian Reichel
This converts the panel-dsi-cm driver to use the transfer API instead of specific functions, so that the specific functions can be unexported and squashed into the generic transfer function. Signed-off-by: Sebastian Reichel --- .../gpu/drm/omapdrm/displays/panel-dsi-cm.c | 133

[PATCHv2 48/56] drm/omap: simplify omap_display_id

2020-02-25 Thread Sebastian Reichel
We no longer need to check for the DSS API, since all encoders, panels and connectors have been converted to the bridge API. Signed-off-by: Sebastian Reichel --- drivers/gpu/drm/omapdrm/omap_drv.c | 9 + 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/drivers/gpu/drm

[PATCHv2 00/56] drm/omap: Convert DSI code to use drm_mipi_dsi and drm_panel

2020-02-25 Thread Sebastian Reichel
suggestion is to merge the first two patches ASAP and backport to stable, since it does not affect old kernels and the change is rather small. RFCv1: https://lore.kernel.org/dri-devel/20191117023946.VjCC3yE08DMx7JIKxNagPoT5et7WTnKGVV6MtOtB9Ro@z/ -- Sebastian Sebastian Reichel (56): ARM: dts

[PATCHv2 14/56] drm/omap: dsi: introduce mipi_dsi_host

2020-02-25 Thread Sebastian Reichel
This moves from custom platform driver infrastructure to mipi_dsi_host and mipi_dsi_device. Note, that this is a graduate step and the driver only uses the devices types and transfer function, but not yet the new device binding style or drm_panel. Signed-off-by: Sebastian Reichel --- .../gpu

[PATCHv2 42/56] drm/omap: remove global dss_device variable

2020-02-25 Thread 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 --- drivers/gpu/drm/omapdrm/dss/base.c| 14

[PATCHv2 36/56] drm/omap: drop omapdss-boot-init

2020-02-25 Thread 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 --- drivers/gpu/drm/omapdrm/dss/Kconfig | 3 - drivers/gpu/drm/omapdrm/dss/Makefile | 2 - .

Re: [PATCHv2 00/56] drm/omap: Convert DSI code to use drm_mipi_dsi and drm_panel

2020-02-24 Thread Sebastian Reichel
Hi, On Mon, Feb 24, 2020 at 04:10:11PM -0800, Tony Lindgren wrote: > * Sebastian Reichel [200224 23:22]: > > This updates the existing omapdrm DSI code, so that it uses > > common drm_mipi_dsi API and drm_panel. > > > > The patchset has been tested with Droid 4

Re: [PATCHv2 01/56] ARM: dts: omap: add channel to DSI panels

2020-02-24 Thread Sebastian Reichel
Hi Laurent, On Tue, Feb 25, 2020 at 01:38:21AM +0200, Laurent Pinchart wrote: > Hi Sebastian, > > Thank you for the patch. > > On Tue, Feb 25, 2020 at 12:20:31AM +0100, Sebastian Reichel wrote: > > The standard binding for DSI requires, that the channel number > > of

Re: [PATCHv2 02/56] ARM: dts: omap4-droid4: add panel compatible

2020-02-24 Thread Sebastian Reichel
Hi Laurent, On Tue, Feb 25, 2020 at 01:37:08AM +0200, Laurent Pinchart wrote: > Hi Sebastian, > > Thank you for the patch. Thanks for the review. > On Tue, Feb 25, 2020 at 12:20:32AM +0100, Sebastian Reichel wrote: > > Add Droid 4 specific compatible value in addition to t

Re: [PATCH 1/3] drm/omap: Prepare DSS for probing without legacy platform data

2020-02-24 Thread Sebastian Reichel
n > Signed-off-by: Tony Lindgren > --- > > This is needed for dropping DSS platform data that I'll be posting > seprately. If this looks OK, can you guys please test and ack? > > --- Reviewed-by: Sebastian Reichel FWIW, I dropped omapdss-boot-init.c in my patch series upda

Re: [PATCH v6 49/51] drm/omap: dss: Remove unused omap_dss_device operations

2020-02-21 Thread Sebastian Reichel
Hi, On Thu, Feb 20, 2020 at 11:45:30PM +0200, Laurent Pinchart wrote: > On Thu, Feb 20, 2020 at 10:39:38PM +0100, Sebastian Reichel wrote: > > On Sun, Feb 16, 2020 at 11:03:06PM +0200, Laurent Pinchart wrote: > > > The omap_dss_device .pre_enable(), .post_disable(

Re: [PATCH v6 49/51] drm/omap: dss: Remove unused omap_dss_device operations

2020-02-20 Thread Sebastian Reichel
Hi, On Sun, Feb 16, 2020 at 11:03:06PM +0200, Laurent Pinchart wrote: > The omap_dss_device .pre_enable(), .post_disable() and .set_timings() > are not used anymore. Remove them. > > Signed-off-by: Laurent Pinchart > Reviewed-by: Tomi Valkeinen > --- Actually it would be good to postpone this

Re: [PATCH] backlight: add led-backlight driver

2020-02-19 Thread Sebastian Reichel
<2>; > ti,led-mode = <0>; > label = ":backlight"; > - linux,default-trigger = "backlight"; > }; > > led@1 { > diff --git a/arch/arm/configs/omap2plus_

Re: [PATCH v6 00/51] drm/omap: Replace custom display drivers with drm_bridge and drm_panel

2020-02-17 Thread Sebastian Reichel
t; [2] https://patchwork.kernel.org/cover/11102445/ > [3] https://patchwork.kernel.org/cover/11349617/ The series is Tested-by: Sebastian Reichel Reviewed-by: Sebastian Reichel Testing was done on Droid 4, DSI command mode panel is still working. I had to add the following patch because of the base

Re: [PATCH 2/3] ARM: dts: am437x-gp/epos-evm: drop unused panel timings

2020-02-13 Thread Sebastian Reichel
Hi, On Tue, Feb 11, 2020 at 01:10:07PM +0200, Laurent Pinchart wrote: > On Tue, Feb 11, 2020 at 01:08:12PM +0200, Tomi Valkeinen wrote: > > On 11/02/2020 13:07, Laurent Pinchart wrote: > > > > >> Hopefully soon (in five years? =) we can say that omapdrm supports all > > >> the boards, and we can

Re: [PATCH 2/3] ARM: dts: am437x-gp/epos-evm: drop unused panel timings

2020-02-13 Thread Sebastian Reichel
Hi, On Tue, Feb 11, 2020 at 07:22:14PM +0200, Tomi Valkeinen wrote: > On 11/02/2020 18:27, Tony Lindgren wrote: > > > We are still missing DSI command mode support, and moving it > > > to the common DRM model. > > > > Nope, DSI command mode support has been working just fine for > > a while now

Re: [RFCv1 33/42] drm/omap: dsi: use atomic helper for dirtyfb

2019-11-19 Thread Sebastian Reichel
Hi, On Tue, Nov 19, 2019 at 07:46:28PM +0100, Andreas Kemnade wrote: > On Tue, 19 Nov 2019 17:55:57 +0200 > Tomi Valkeinen wrote: > > > On 19/11/2019 17:06, Tony Lindgren wrote: > > > > >> The userspace apps need to do this. If they're using single-buffering, > > >> then > > >> using the

Re: [RFCv1 11/42] ARM: dts: omap: add channel to DSI panels

2019-11-19 Thread Sebastian Reichel
Hi Tony, On Mon, Nov 18, 2019 at 02:52:09PM -0800, Tony Lindgren wrote: > * Sebastian Reichel [191118 15:03]: > > On Mon, Nov 18, 2019 at 03:37:12PM +0100, H. Nikolaus Schaller wrote: > > > > Am 18.11.2019 um 15:33 schrieb Sebastian Reichel > > > > : > >

Re: [RFCv1 32/42] drm/omap: dsi: convert to drm_panel

2019-11-19 Thread Sebastian Reichel
Hi Nikolaus, On Tue, Nov 19, 2019 at 10:42:55AM +0100, H. Nikolaus Schaller wrote: > > Am 18.11.2019 um 15:51 schrieb H. Nikolaus Schaller : > > > >> Ok, I tried not to break video mode support, but I do not have any > >> hardware. Make sure to set the MIPI_DSI_MODE_VIDEO flag in the panel > >>

Re: [RFCv1 32/42] drm/omap: dsi: convert to drm_panel

2019-11-19 Thread Sebastian Reichel
Hi, On Sun, Nov 17, 2019 at 08:23:05PM +0100, H. Nikolaus Schaller wrote: > > [...] > > > + drm_panel_init(>panel, dev, _panel_funcs, > > + DRM_MODE_CONNECTOR_DSI); > > + > > This leads to > > drivers/gpu/drm/panel/panel-dsi-cm.c: In function 'dsicm_probe': >

Re: [RFCv1 11/42] ARM: dts: omap: add channel to DSI panels

2019-11-19 Thread Sebastian Reichel
Hi, On Mon, Nov 18, 2019 at 03:37:12PM +0100, H. Nikolaus Schaller wrote: > > Am 18.11.2019 um 15:33 schrieb Sebastian Reichel > > : > > On Mon, Nov 18, 2019 at 03:05:07PM +0200, Tomi Valkeinen wrote: > >> On 17/11/2019 04:39, Sebastian Reichel wrote: > >>>

Re: [RFCv1 11/42] ARM: dts: omap: add channel to DSI panels

2019-11-19 Thread Sebastian Reichel
Hi, On Mon, Nov 18, 2019 at 03:05:07PM +0200, Tomi Valkeinen wrote: > On 17/11/2019 04:39, Sebastian Reichel wrote: > > The standard binding for DSI requires, that the channel number > > of the panel is encoded in DT. This adds the channel number in > > all OMAP3-5 b

[RFCv1 42/42] drm/panel: Move OMAP's DSI command mode panel driver

2019-11-17 Thread 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 --- drivers/gpu/drm/omapdrm/displays/Kconfig | 6 -- drivers/gpu/drm/omapdrm/displays/Makefile| 1 - drivers/gpu

[RFCv1 29/42] drm/omap: dsi: do ULPS in host driver

2019-11-17 Thread Sebastian Reichel
Move ULPS handling into the DSI host controller, so that we no longer need a custom API for the DSI client. Signed-off-by: Sebastian Reichel --- .../gpu/drm/omapdrm/displays/panel-dsi-cm.c | 273 +- drivers/gpu/drm/omapdrm/dss/dsi.c | 61 +++- drivers/gpu/drm

[RFCv1 36/42] drm/omap: panel-dsi-cm: support unbinding

2019-11-17 Thread 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 --- drivers/gpu/drm/omapdrm/displays/panel-dsi-cm.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/drivers/gpu/drm/omapdrm/displays

[RFCv1 23/42] drm/omap: dsi: lp/hs switching support for transfer()

2019-11-17 Thread Sebastian Reichel
Integrate low-power / high-speed bus switching into transfer function and drop the omapdrm specific enable_hs() callback. Signed-off-by: Sebastian Reichel --- drivers/gpu/drm/omapdrm/displays/panel-dsi-cm.c | 6 +++--- drivers/gpu/drm/omapdrm/dss/dsi.c | 13 +++-- drivers

[RFCv1 38/42] drm/omap: panel-dsi-cm: do not power on/off twice

2019-11-17 Thread Sebastian Reichel
Make sure, that we only power on/off the device once. Signed-off-by: Sebastian Reichel --- drivers/gpu/drm/omapdrm/displays/panel-dsi-cm.c | 6 ++ 1 file changed, 6 insertions(+) diff --git a/drivers/gpu/drm/omapdrm/displays/panel-dsi-cm.c b/drivers/gpu/drm/omapdrm/displays/panel-dsi-cm.c

[RFCv1 18/42] drm/omap: dsi: drop unused get_te()

2019-11-17 Thread Sebastian Reichel
Signed-off-by: Sebastian Reichel --- drivers/gpu/drm/omapdrm/displays/panel-dsi-cm.c | 13 - drivers/gpu/drm/omapdrm/dss/omapdss.h | 1 - 2 files changed, 14 deletions(-) diff --git a/drivers/gpu/drm/omapdrm/displays/panel-dsi-cm.c b/drivers/gpu/drm/omapdrm/displays

[RFCv1 34/42] drm/omap: dsi: implement check timings

2019-11-17 Thread Sebastian Reichel
Implement check timings, which will check if its possible to configure the clocks for the provided mode using the same code as the set_config() hook. Signed-off-by: Sebastian Reichel --- drivers/gpu/drm/omapdrm/dss/dsi.c | 70 +++ 1 file changed, 44 insertions(+), 26

[RFCv1 33/42] drm/omap: dsi: use atomic helper for dirtyfb

2019-11-17 Thread Sebastian Reichel
We can simply use the atomic helper for handling the dirtyfb callback. Signed-off-by: Sebastian Reichel --- drivers/gpu/drm/omapdrm/omap_crtc.c | 6 +- drivers/gpu/drm/omapdrm/omap_crtc.h | 1 - drivers/gpu/drm/omapdrm/omap_fb.c | 21 ++--- 3 files changed, 3 insertions

[RFCv1 09/42] drm/omap: dsi: simplify read functions

2019-11-17 Thread Sebastian Reichel
Simplify the read related message handling by using the functionality provided by CONFIG_DRM_MIPI_DSI. Signed-off-by: Sebastian Reichel --- drivers/gpu/drm/omapdrm/dss/dsi.c | 109 +- 1 file changed, 33 insertions(+), 76 deletions(-) diff --git a/drivers/gpu/drm

[RFCv1 21/42] drm/omap: dsi: use pixel-format and mode from attach

2019-11-17 Thread Sebastian Reichel
In order to reduce the amount of custom functionality, this moves handling of pixel format and DSI mode from set_config() to dsi attach. Signed-off-by: Sebastian Reichel --- .../gpu/drm/omapdrm/displays/panel-dsi-cm.c | 2 -- drivers/gpu/drm/omapdrm/dss/dsi.c | 20

[RFCv1 39/42] drm/omap: dsi: return proper error code from dsi_update_all()

2019-11-17 Thread Sebastian Reichel
Signed-off-by: Sebastian Reichel --- drivers/gpu/drm/omapdrm/dss/dsi.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/gpu/drm/omapdrm/dss/dsi.c b/drivers/gpu/drm/omapdrm/dss/dsi.c index 1b57f516618a..bc96f74f1740 100644 --- a/drivers/gpu/drm/omapdrm/dss/dsi.c +++ b

[RFCv1 07/42] drm/omap: dsi: drop virtual channel logic

2019-11-17 Thread Sebastian Reichel
This drops the virtual channel logic. Afterwards DSI clients request their channel number and get the virtual channel with the same number or -EBUSY if already in use. Signed-off-by: Sebastian Reichel --- .../gpu/drm/omapdrm/displays/panel-dsi-cm.c | 11 ++--- drivers/gpu/drm/omapdrm/dss

[RFCv1 27/42] drm/omap: dsi: untangle ulps ops from enable/disable

2019-11-17 Thread 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 --- .../gpu/drm/omapdrm/displays/panel-dsi-cm.c | 8

[RFCv1 13/42] drm/omap: panel-dsi-cm: use DSI helpers

2019-11-17 Thread Sebastian Reichel
After converting the driver to mipi_dsi_device we can use the generic message helpers to simplify the driver a lot. Signed-off-by: Sebastian Reichel --- .../gpu/drm/omapdrm/displays/panel-dsi-cm.c | 126 +++--- 1 file changed, 18 insertions(+), 108 deletions(-) diff --git

[RFCv1 05/42] drm/omap: panel-dsi-cm: convert to transfer API

2019-11-17 Thread Sebastian Reichel
This converts the panel-dsi-cm driver to use the transfer API instead of specific functions, so that the specific functions can be unexported and squashed into the generic transfer function. Signed-off-by: Sebastian Reichel --- .../gpu/drm/omapdrm/displays/panel-dsi-cm.c | 133

[RFCv1 12/42] drm/omap: dsi: introduce mipi_dsi_host

2019-11-17 Thread Sebastian Reichel
This moves from custom platform driver infrastructure to mipi_dsi_host and mipi_dsi_device. Note, that this is a graduate step and the driver only uses the devices types and transfer function, but not yet the new device binding style or drm_panel. Signed-off-by: Sebastian Reichel --- .../gpu

[RFCv1 14/42] drm/omap: dsi: request VC via mipi_dsi_attach

2019-11-17 Thread Sebastian Reichel
Drop custom request_vc/release_vc callbacks by using the generic mipi_dsi_attach/mipi_dsi_detach functions. Signed-off-by: Sebastian Reichel --- .../gpu/drm/omapdrm/displays/panel-dsi-cm.c | 24 +--- drivers/gpu/drm/omapdrm/dss/dsi.c | 61 --- drivers/gpu/drm

[RFCv1 17/42] drm/omap: dsi: drop unused memory_read()

2019-11-17 Thread Sebastian Reichel
Signed-off-by: Sebastian Reichel --- .../gpu/drm/omapdrm/displays/panel-dsi-cm.c | 93 --- drivers/gpu/drm/omapdrm/dss/omapdss.h | 4 - 2 files changed, 97 deletions(-) diff --git a/drivers/gpu/drm/omapdrm/displays/panel-dsi-cm.c b/drivers/gpu/drm/omapdrm/displays

[RFCv1 37/42] drm/omap: panel-dsi-cm: fix remove()

2019-11-17 Thread Sebastian Reichel
The remove function should disable the panel by calling the unprepare() function before the panel is disconnected from MIPI bus instead of trying to reset it. Signed-off-by: Sebastian Reichel --- drivers/gpu/drm/omapdrm/displays/panel-dsi-cm.c | 5 ++--- 1 file changed, 2 insertions(+), 3

[RFCv1 25/42] drm/omap: dsi: drop custom enable_te() API

2019-11-17 Thread Sebastian Reichel
Instead of using the custon enable_te() API, this automatically enables/disables TE core support when a matching packet is send to the panel. Signed-off-by: Sebastian Reichel --- .../gpu/drm/omapdrm/displays/panel-dsi-cm.c | 3 -- drivers/gpu/drm/omapdrm/dss/dsi.c | 33

[RFCv1 08/42] drm/omap: dsi: simplify write function

2019-11-17 Thread Sebastian Reichel
Simplify the write related messages handling by using the functionality provided by CONFIG_DRM_MIPI_DSI. Signed-off-by: Sebastian Reichel --- drivers/gpu/drm/omapdrm/dss/Kconfig | 1 + drivers/gpu/drm/omapdrm/dss/dsi.c | 144 +++- 2 files changed, 33 insertions

[RFCv1 32/42] drm/omap: dsi: convert to drm_panel

2019-11-17 Thread Sebastian Reichel
be enabled at this point, so that the panel can use it. Other drivers run drm_panel_attach() in their dsi host attach, which makes it possible to call drm_panel_get_modes() afterwards and the get the correct mode from the connector. Signed-off-by: Sebastian Reichel --- .../gpu/drm/omapdrm/displays

[RFCv1 06/42] drm/omap: dsi: unexport specific data transfer functions

2019-11-17 Thread Sebastian Reichel
After converting all DSI drivers, unexport the specific transfer functions. Signed-off-by: Sebastian Reichel --- drivers/gpu/drm/omapdrm/dss/dsi.c | 12 drivers/gpu/drm/omapdrm/dss/omapdss.h | 20 2 files changed, 32 deletions(-) diff --git a/drivers/gpu

[RFCv1 24/42] drm/omap: dsi: move TE GPIO handling into core

2019-11-17 Thread Sebastian Reichel
in the same way as the exynos DSI implementation. Signed-off-by: Sebastian Reichel --- .../gpu/drm/omapdrm/displays/panel-dsi-cm.c | 101 + drivers/gpu/drm/omapdrm/dss/dsi.c | 140 -- 2 files changed, 135 insertions(+), 106 deletions(-) diff --git a/drivers

[RFCv1 04/42] drm/omap: dsi: add generic transfer function

2019-11-17 Thread Sebastian Reichel
-by: Sebastian Reichel --- drivers/gpu/drm/omapdrm/dss/dsi.c | 52 +++ drivers/gpu/drm/omapdrm/dss/omapdss.h | 3 ++ 2 files changed, 55 insertions(+) diff --git a/drivers/gpu/drm/omapdrm/dss/dsi.c b/drivers/gpu/drm/omapdrm/dss/dsi.c index bf6131e5fa14..7560411f8ed6 100644

[RFCv1 01/42] omap/drm: drop unused dsi.configure_pins

2019-11-17 Thread Sebastian Reichel
The panel-dsi-cm's ddata->pin_config is always NULL, so this callback is never called. Instead the DSI encoder gets the pin configuration directly from DT. Signed-off-by: Sebastian Reichel --- drivers/gpu/drm/omapdrm/displays/panel-dsi-cm.c | 11 --- drivers/gpu/drm/omapdrm/dss/ds

[RFCv1 40/42] drm/omap: dsi: support panel un/re-binding

2019-11-17 Thread Sebastian Reichel
and gets back to running setup when the encoder is rebound later. Making this possible is just a side- effect of panel unbinding support. Signed-off-by: Sebastian Reichel --- drivers/gpu/drm/omapdrm/dss/base.c | 2 +- drivers/gpu/drm/omapdrm/dss/dsi.c | 63 ++ 2

[RFCv1 02/42] drm/omap: dsi: use MIPI_DSI_FMT_* instead of OMAP_DSS_DSI_FMT_*

2019-11-17 Thread Sebastian Reichel
This replaces OMAP specific enum for pixel format with common implementation. Signed-off-by: Sebastian Reichel --- .../gpu/drm/omapdrm/displays/panel-dsi-cm.c | 2 +- drivers/gpu/drm/omapdrm/dss/dsi.c | 49 +++ drivers/gpu/drm/omapdrm/dss/omapdss.h | 10

[RFCv1 10/42] drm/omap: dsi: switch dsi_vc_send_long/short to mipi_dsi_msg

2019-11-17 Thread Sebastian Reichel
Simplify the DSI encoder by using mipi_dsi_msg for dsi_vc_send_long and dsi_vc_send_short. Further improvements require cleaning up the channel allocation code first. Signed-off-by: Sebastian Reichel --- drivers/gpu/drm/omapdrm/dss/dsi.c | 92 +++ 1 file changed, 45

[RFCv1 16/42] drm/omap: panel-dsi-cm: use common MIPI DCS 1.3 defines

2019-11-17 Thread Sebastian Reichel
Drop local definition of common MIPI DCS 1.3 defines. Signed-off-by: Sebastian Reichel --- drivers/gpu/drm/omapdrm/displays/panel-dsi-cm.c | 12 ++-- 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/drivers/gpu/drm/omapdrm/displays/panel-dsi-cm.c b/drivers/gpu/drm/omapdrm

[RFCv1 41/42] ARM: dts: omap4-droid4: add panel compatible

2019-11-17 Thread Sebastian Reichel
Add Droid 4 specific compatible value in addition to the generic one, so that we have the ability to add panel specific quirks in the future. Signed-off-by: Sebastian Reichel --- arch/arm/boot/dts/omap4-droid4-xt894.dts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch

[RFCv1 26/42] drm/omap: dsi: do bus locking in host driver

2019-11-17 Thread 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 --- .../gpu/drm/omapdrm/displays/panel-dsi-cm.c | 46 +-- drivers/gpu/drm/omapdrm/dss/dsi.c | 33

[RFCv1 15/42] drm/omap: panel-dsi-cm: drop hardcoded VC

2019-11-17 Thread Sebastian Reichel
Use dsi->channel everywhere, which originates from DT. Signed-off-by: Sebastian Reichel --- .../gpu/drm/omapdrm/displays/panel-dsi-cm.c | 20 +++ 1 file changed, 7 insertions(+), 13 deletions(-) diff --git a/drivers/gpu/drm/omapdrm/displays/panel-dsi-cm.c b/drivers/gpu/

[RFCv1 03/42] drm/omap: constify write buffers

2019-11-17 Thread Sebastian Reichel
The write buffers are not modified, so they can be constant. Signed-off-by: Sebastian Reichel --- drivers/gpu/drm/omapdrm/dss/dsi.c | 24 drivers/gpu/drm/omapdrm/dss/omapdss.h | 10 +- 2 files changed, 17 insertions(+), 17 deletions(-) diff --git a/drivers

[RFCv1 31/42] drm/omap: dsi: Reverse direction of the DSS device enable/disable operations

2019-11-17 Thread Sebastian Reichel
it further to a standard drm_panel driver. Signed-off-by: Sebastian Reichel --- .../gpu/drm/omapdrm/displays/panel-dsi-cm.c | 75 ++- drivers/gpu/drm/omapdrm/omap_encoder.c| 20 ++--- 2 files changed, 44 insertions(+), 51 deletions(-) diff --git a/drivers/gpu/drm/omapdr

[RFCv1 22/42] drm/omap: panel-dsi-cm: use bulk regulator API

2019-11-17 Thread Sebastian Reichel
Use bulk regulator API to simplify the code. This also switches from _optional variant to normal variant, which will provide a dummy regulator (i.e. if some always-enabled regulator is not described in DT). Signed-off-by: Sebastian Reichel --- .../gpu/drm/omapdrm/displays/panel-dsi-cm.c | 65

[RFCv1 19/42] drm/omap: dsi: drop unused enable_te()

2019-11-17 Thread Sebastian Reichel
Signed-off-by: Sebastian Reichel --- .../gpu/drm/omapdrm/displays/panel-dsi-cm.c | 39 --- drivers/gpu/drm/omapdrm/dss/omapdss.h | 2 - 2 files changed, 41 deletions(-) diff --git a/drivers/gpu/drm/omapdrm/displays/panel-dsi-cm.c b/drivers/gpu/drm/omapdrm/displays

[RFCv1 00/42] drm/omap: Convert DSI code to use drm_mipi_dsi and drm_panel

2019-11-17 Thread Sebastian Reichel
, but that already exists with current mainline implementation. -- Sebastian Sebastian Reichel (42): omap/drm: drop unused dsi.configure_pins drm/omap: dsi: use MIPI_DSI_FMT_* instead of OMAP_DSS_DSI_FMT_* drm/omap: constify write buffers drm/omap: dsi: add generic transfer function drm

[RFCv1 28/42] drm/dsi: add MIPI_DSI_MODE_ULPS_IDLE

2019-11-17 Thread Sebastian Reichel
the DSI host implementation that the panel allows going into ULPS mode. Signed-off-by: Sebastian Reichel --- include/drm/drm_mipi_dsi.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/include/drm/drm_mipi_dsi.h b/include/drm/drm_mipi_dsi.h index 13cf2ae59f6c..5f2e3e6fb013 100644

[RFCv1 35/42] drm/omap: panel-dsi-cm: use DEVICE_ATTR_RO

2019-11-17 Thread Sebastian Reichel
Use DEVICE_ATTR_RO helper instead of plain DEVICE_ATTR, which makes the code a bit shorter and easier to read. Signed-off-by: Sebastian Reichel --- drivers/gpu/drm/omapdrm/displays/panel-dsi-cm.c | 8 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/drivers/gpu/drm/omapdrm

[RFCv1 20/42] drm/omap: dsi: drop useless sync()

2019-11-17 Thread 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 --- .../gpu/drm/omapdrm/displays/panel-dsi-cm.c| 18 -- drivers/gpu/drm/omapdrm/dss

[RFCv1 30/42] drm/omap: dsi: move panel refresh function to host

2019-11-17 Thread Sebastian Reichel
This moves the panel refresh/update function from the panel driver into the DSI host driver to prepare for common drm_panel support. Signed-off-by: Sebastian Reichel --- .../gpu/drm/omapdrm/displays/panel-dsi-cm.c | 68 drivers/gpu/drm/omapdrm/dss/dsi.c | 101

[RFCv1 11/42] ARM: dts: omap: add channel to DSI panels

2019-11-17 Thread Sebastian Reichel
The standard binding for DSI requires, that the channel number of the panel is encoded in DT. This adds the channel number in all OMAP3-5 boards, in preparation for using common infrastructure. Signed-off-by: Sebastian Reichel --- .../devicetree/bindings/display/panel/panel-dsi-cm.txt | 4

[PATCHv1 1/2] drm/panel: simple: Add support for AUO G121EAN01.4 panel

2019-11-08 Thread Sebastian Reichel
Add timings for the AUO G121EAN01.4 panel. Signed-off-by: Sebastian Reichel --- drivers/gpu/drm/panel/panel-simple.c | 26 ++ 1 file changed, 26 insertions(+) diff --git a/drivers/gpu/drm/panel/panel-simple.c b/drivers/gpu/drm/panel/panel-simple.c index 28fa6ba7b767

[PATCHv1 2/2] drm/panel: simple: Add support for AUO G156XTN01.0 panel

2019-11-08 Thread Sebastian Reichel
Add timings for the AUO G156XTN01.0 panel. Signed-off-by: Sebastian Reichel --- drivers/gpu/drm/panel/panel-simple.c | 26 ++ 1 file changed, 26 insertions(+) diff --git a/drivers/gpu/drm/panel/panel-simple.c b/drivers/gpu/drm/panel/panel-simple.c index 46ca59db6819

Re: [PATCH 0/5] Fix SPI module alias for panels used by omapdrm

2019-10-07 Thread Sebastian Reichel
Hi, On Mon, Oct 07, 2019 at 08:07:56PM +0300, Laurent Pinchart wrote: > This patch series fixes a module alias issue with the five recently > added panel drivers used by omapdrm. For the whole series: Reviewed-by: Sebastian Reichel -- Sebastian signature.asc Description: PGP sig

Re: [PATCH] drm: panels: fix spi aliases of former omap panels

2019-10-07 Thread Sebastian Reichel
Hi, On Mon, Oct 07, 2019 at 06:41:30PM +0200, Andreas Kemnade wrote: > When the panels were moved from omap/displays/ to panel/ > omapdss prefix was stripped, which cause spi modalias > to not contain the vendor-prefix anymore. > > so we had e.g. in former times: >

Re: [PATCH v8 5/5] backlight: add led-backlight driver

2019-10-03 Thread Sebastian Reichel
EDs can be used for a single backlight. > > Signed-off-by: Tomi Valkeinen > Signed-off-by: Jean-Jacques Hiblot > Acked-by: Pavel Machek > Reviewed-by: Daniel Thompson > --- Reviewed-by: Sebastian Reichel (with some suggestions below) > drivers/video/backlight/Kconfig | 7 +

Re: [PATCH v8 4/5] dt-bindings: backlight: Add led-backlight binding

2019-10-03 Thread Sebastian Reichel
Hi, On Thu, Oct 03, 2019 at 10:28:11AM +0200, Jean-Jacques Hiblot wrote: > Add DT binding for led-backlight. > > Signed-off-by: Jean-Jacques Hiblot > Reviewed-by: Daniel Thompson Reviewed-by: Sebastian Reichel -- Sebastian > --- > .../bindings/leds/backlight/led-

Re: [PATCH v8 3/5] leds: Add managed API to get a LED from a device driver

2019-10-03 Thread Sebastian Reichel
return ERR_PTR(-ENOTSUPP); I suggested to move the CONFIG_OF check and the NULL check for of_node into of_led_get(). Otherwise Reviewed-by: Sebastian Reichel -- Sebastian > + > + led = of_led_get(dev->of_node, index); > + if (IS_ERR(led)) > + return led; &g

<    1   2   3   4   5   6   7   >