From: Sebastian Reichel <sebastian.reichel@collabora.com>
To: "H. Nikolaus Schaller" <hns@goldelico.com>
Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com>,
Tony Lindgren <tony@atomide.com>,
Tomi Valkeinen <tomi.valkeinen@ti.com>,
Linux-OMAP <linux-omap@vger.kernel.org>,
Jyri Sarha <jsarha@ti.com>,
kernel@pyra-handheld.com,
Discussions about the Letux Kernel
<letux-kernel@openphoenux.org>, David Shah <dave@ds0.me>
Subject: Re: module_mipi_dsi_driver panel with omapdrm?
Date: Sun, 2 Aug 2020 01:22:59 +0200 [thread overview]
Message-ID: <20200801232259.hitcfosiq6f2i57y@earth.universe> (raw)
In-Reply-To: <7023EB05-DC29-4D42-84C8-F0D14B50467D@goldelico.com>
[-- Attachment #1: Type: text/plain, Size: 4315 bytes --]
Hi,
On Sat, Aug 01, 2020 at 03:43:22PM +0200, H. Nikolaus Schaller wrote:
> > Am 24.07.2020 um 03:24 schrieb Laurent Pinchart <laurent.pinchart@ideasonboard.com>:
> > On Thu, Jul 23, 2020 at 09:03:49AM +0200, H. Nikolaus Schaller wrote:
> >>> Am 08.07.2020 um 09:52 schrieb H. Nikolaus Schaller <hns@goldelico.com>:
> >>>> Am 07.07.2020 um 21:04 schrieb H. Nikolaus Schaller <hns@goldelico.com>:
> >>>>
> >>>> And what I would need to know before I start to write new code is
> >>>> if is possible to operate a video mipi dsi panel with driver from
> >>>> gpu/drm/panel together with omapdrm (v5.7 and later).
> >>>
> >>> I did a quick test on a 5.7.6 kernel with the sysc fixes as
> >>> suggested by Tony.
> >>>
> >>> Then I overwrote the compatible entry of our display to be
> >>> orisetech,otm8009a and configured to build the otm8009a panel driver.
> >>>
> >>> The panel driver is loaded, but not probed (no call to otm8009a_probe).
> >>> It is shown in /sys/bus/mipi-dsi/drivers (and lsmod) but not /sys/bus/mipi-dsi/devices.
> >>>
> >>> So what should I try next?
> >>
> >> Any suggestions if and how it is possible to use a gpu/drm/panel MIPI DSI
> >> video mode panel with omapdrm (on OMAP5)?
> >
> > For the DSI panel to probe, the display driver needs to register a DSI
> > host with mipi_dsi_host_register(). omapdrm doesn't do so yet, we need
> > to integrate Sebastian's "[PATCHv2 00/56] drm/omap: Convert DSI code to
> > use drm_mipi_dsi and drm_panel" series first. I'll try to review it in
> > the near future.
> >
> >> The problem is that our old omapdrm/display driver is broken since v5.7 and
>
> Fortunately David did fix the broken "reboot" for OMAP5 (when using timer8).
> Now I could run an unattended bisect session for the MIPI DSI panel driver
> to find as the first bad commit:
>
> commit e7e67d9a2f1dd2f938adcc219b3769f5cc3f0df7
> Author: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
> Date: Wed Feb 26 13:24:59 2020 +0200
>
> drm/omap: Switch the HDMI and VENC outputs to drm_bridge
>
> This was merged through v5.7-rc1. The problem persists since then up
> to v5.8-rc7 and likely also to v5.9.
>
> What I guess from the change hunks is that this is the critical one:
>
> diff --git a/drivers/gpu/drm/omapdrm/dss/output.c b/drivers/gpu/drm/omapdrm/dss/output.c
> index 9ba7cc8539a1..ce21c798cca6 100644
> --- a/drivers/gpu/drm/omapdrm/dss/output.c
> +++ b/drivers/gpu/drm/omapdrm/dss/output.c
> @@ -60,6 +60,11 @@ int omapdss_device_init_output(struct omap_dss_device *out,
> }
>
> if (local_bridge) {
> + if (!out->bridge) {
> + ret = -EPROBE_DEFER;
> + goto error;
> + }
> +
The DSI code calls omapdss_device_init_output with
local_bridge=NULL, so this is no called.
> out->next_bridge = out->bridge;
> out->bridge = local_bridge;
> }
>
> Since I have not seen a reference to an omap DSI bridge driver in upstream kernels
> I would assume that out->bridge is NULL and therefore probing is deferred forever
> and the old MIPI DSI driver (which is still there) is no longer operational.
>
> This is consistent with that our (old omapdrm) panel driver is no longer probed.
>
> >> an experimental gpu/drm/panel driver does not probe. And I assume that
> >> omapdrm/display will disappear completely soon.
> >
> > Not before Sebastian's series gets integrated.
>
> Is there a simple patch (either from Sebastian's series or other source)
> that fixes this regression until Sebastian's series is fully merged and we
> can move to a module_mipi_dsi_driver based driver?
The purpose of the whole patchset is to move to drm_panel instead of
the omapdrm specific panel code. Some of the review feedback, that I
received implies that my patchset breaks your usecase (video model
DSI panel). The plan is to send it in smaller parts, which makes the
review process a bit simpler and also the rebasing work of the
series itself. The *.txt -> *.yaml binding patch has been queued
for 5.9 and the DT patches are currently waiting to be queued by
Tony. Next step is preparing for mipi_dsi. I will do this in two
steps:
1. patches up to the point creating problems for video mode
2. all the way to mipi_dsi (but not yet drm_panel)
-- Sebastian
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
next prev parent reply other threads:[~2020-08-01 23:23 UTC|newest]
Thread overview: 33+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-07-05 6:52 OMAP5: inconsistency between target-module and dsi_of_data_omap5 H. Nikolaus Schaller
2020-07-05 7:40 ` H. Nikolaus Schaller
2020-07-05 13:47 ` H. Nikolaus Schaller
2020-07-05 14:26 ` Tony Lindgren
2020-07-05 14:36 ` Tony Lindgren
2020-07-05 15:40 ` H. Nikolaus Schaller
2020-07-06 14:36 ` Tony Lindgren
2020-07-06 16:10 ` H. Nikolaus Schaller
2020-07-07 18:01 ` Tony Lindgren
2020-07-07 19:04 ` H. Nikolaus Schaller
2020-07-08 7:52 ` OMAP5: inconsistency between target-module and dsi_of_data_omap5 / module_mipi_dsi_driver panel with omapdrm H. Nikolaus Schaller
2020-07-23 7:03 ` Re:module_mipi_dsi_driver panel with omapdrm? H. Nikolaus Schaller
2020-07-24 1:24 ` module_mipi_dsi_driver " Laurent Pinchart
2020-07-24 5:50 ` H. Nikolaus Schaller
2020-08-01 13:43 ` H. Nikolaus Schaller
2020-08-01 23:22 ` Sebastian Reichel [this message]
2020-08-05 9:19 ` H. Nikolaus Schaller
2020-08-05 11:28 ` Sebastian Reichel
2020-08-05 11:49 ` H. Nikolaus Schaller
2020-08-05 12:08 ` Tomi Valkeinen
2020-08-06 15:50 ` David Shah
2020-08-06 16:04 ` [Letux-kernel] " David Shah
2020-08-06 18:44 ` David Shah
2020-08-06 19:01 ` H. Nikolaus Schaller
2020-08-06 19:44 ` David Shah
2020-08-07 6:53 ` Tomi Valkeinen
2020-08-16 11:24 ` H. Nikolaus Schaller
2020-08-18 9:16 ` Tony Lindgren
2020-08-04 12:43 ` Tomi Valkeinen
2020-08-05 9:25 ` H. Nikolaus Schaller
2020-08-05 11:07 ` Sebastian Reichel
2020-08-05 11:14 ` H. Nikolaus Schaller
[not found] <E1k3Hyu-0000Ac-BU@ds0.me>
2020-08-05 12:00 ` H. Nikolaus Schaller
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20200801232259.hitcfosiq6f2i57y@earth.universe \
--to=sebastian.reichel@collabora.com \
--cc=dave@ds0.me \
--cc=hns@goldelico.com \
--cc=jsarha@ti.com \
--cc=kernel@pyra-handheld.com \
--cc=laurent.pinchart@ideasonboard.com \
--cc=letux-kernel@openphoenux.org \
--cc=linux-omap@vger.kernel.org \
--cc=tomi.valkeinen@ti.com \
--cc=tony@atomide.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).