From: ryadav-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org
To: Rob Clark <robdclark-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
Cc: devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
Doug Anderson <dianders-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org>,
linux-arm-msm
<linux-arm-msm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
Sandeep Panda <spanda-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>,
dri-devel
<dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org>,
Stephen Boyd <swboyd-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org>,
Abhinav Kumar <abhinavk-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>,
"Kristian H. Kristensen"
<hoegsberg-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org>,
freedreno
<freedreno-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org>,
chandanu-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org
Subject: Re: [[DPU]PATCH] drm/msm/dsi: move the API setting PLL src to modeset_init()
Date: Tue, 10 Jul 2018 18:56:08 +0530 [thread overview]
Message-ID: <759602f6e0584f55224f5ceb96ec3bbb@codeaurora.org> (raw)
In-Reply-To: <CAF6AEGv6u=HSHQJ-uFBQwWH-cM3AVi+jjtsF54QYkXgeJ3=emw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
A brief update on this topic:
The DSI clock warnings are addressed after adding runtime_pm support to
DPU driver [1].
MDSS GDSC is used as genpd w/ above series and is requested by parent
MDSS device on
behalf of all child devices (like DPU, DSI etc).
Before adding the runtime_pm support, DSI driver probing was happening
before MDSS GDSC
initialization and is why the RCG clock configuration for byte and pixel
clocks was not
consumed by hardware leading to the warnings.
Regarding display handover from bootloader to Linux display drivers
(referred as continuous splash feature),
is supported downstream for DSI displays (where splash screen in handed
over to kernel drivers w/o re-init'ing the hardware)
and needs coordination (as pointed out by Rob) b/t display, clock, gdsc
and iommu teams.
But continuous splash for hot-pluggable displays is not attempted so
far.
We will discuss among the teams to see if continuous slash changes
(present downstream) in conjunction w/ Rob's work
can make their way upstream.
[1]
https://lists.freedesktop.org/archives/freedreno/2018-May/002502.html
Thanks,
Rajesh
On 2018-06-28 06:05, Rob Clark wrote:
> On Wed, Jun 27, 2018 at 2:48 PM, Doug Anderson <dianders@chromium.org>
> wrote:
>> Hi,
>>
>> On Tue, Jun 26, 2018 at 10:27 AM, Rob Clark <robdclark@gmail.com>
>> wrote:
>>> On Tue, Jun 26, 2018 at 11:55 AM, Doug Anderson
>>> <dianders@chromium.org> wrote:
>>>> Hi,
>>>>
>>>> On Mon, Jun 25, 2018 at 9:45 PM, Sandeep Panda
>>>> <spanda@codeaurora.org> wrote:
>>>>> From: Abhinav Kumar <abhinavk@codeaurora.org>
>>>>>
>>>>> Setting the DSI PLL src in probe doesn't provide the clock
>>>>> driver sufficient time to reclaim unused clock resources
>>>>> from coreboot resulting in warnings from clock driver.
>>>>>
>>>>> Move the DSI PLL src setting to modeset_init() so that the
>>>>> clock driver can claim unused display clock resources before
>>>>> the display driver requests for them again.
>>>>
>>>> IMHO this is a bad design. Sean and Stephen can feel free to
>>>> override
>>>> me, but I think the clock driver should be improved to handle this
>>>> case and not require the clock to get disabled before Linux enables
>>>> it.
>>>>
>>>
>>> I experimented with it a while back[1] (in this case w/ lk lighting
>>> up
>>> the display). In that case I needed both the clk and gdsc code to
>>> realize that clks/gdsc's were on at boot, and fixup the refcnt of the
>>> clks (and parent clocks and so on). And then when probed the display
>>> driver would check if clocks were enabled to decide to readback the
>>> state from the hw. (Maybe you can short-circuit some of that if you
>>> only care about DSI panels with a single fixed resolution, but as
>>> soon
>>> as external displays come into the picture you can't assume so much
>>> about the hw state.)
>>>
>>> BR,
>>> -R
>>>
>>> [1] https://github.com/freedreno/kernel-msm/commits/display-handover
>>
>> It seems like something like that is the right real solution here, but
>> I guess someone needs to step up and work on it.
>>
>
> yeah, sadly I haven't found time to revisit it (kinda been short on
> time to work on display/kernel side of things.. it would be helpful if
> qcom would stop coming out with new gpu's so often :-P)
>
> But I am pretty sure if we want a general solution that can also deal
> w/ splash screen on hot-pluggable display, and not just the simpler
> case of fixed resolution dsi panels, it is going to require
> cooperation between clk/gdsc and display driver.
>
>> ...in general I'm wary of any patch that will not work when
>> "clk_ignore_unused" is passed as a command line parameter. It's
>> useful to be able to use this command line parameter for debugging
>> sometimes and it would be unfortunate if doing so spewed a bunch of
>> extra warnings.
>
> for "full distro" config where all the display drivers are built as
> modules and prior to real display driver loading you have kernel
> inheriting the display via efifb or simplefb, I think we need to be
> able to flag certain clocks and power domains (and on other platforms,
> perhaps regulators) as "if the bootloader left this on, keep it that
> way".. I guess for simple-fb we could perhaps solve it by attaching
> power domains and clks to the simple-fb node, but that doesn't really
> work for efifb..
>
> BR,
> -R
>
>
>>
>>
>> On a side node, it appears that even without ${SUBJECT} patch the
>> warnings seem to have gone away with the latest stack of patches I've
>> been testing. The warnings don't even come back with
>> "clk_ignore_unused". I haven't personally dug into why, but I figured
>> I'd mention it.
>>
>>
>> -Doug
> _______________________________________________
> dri-devel mailing list
> dri-devel@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/dri-devel
_______________________________________________
Freedreno mailing list
Freedreno@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/freedreno
prev parent reply other threads:[~2018-07-10 13:26 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-06-26 4:45 [[DPU]PATCH] drm/msm/dsi: move the API setting PLL src to modeset_init() Sandeep Panda
2018-06-26 15:55 ` Doug Anderson
2018-06-26 17:27 ` Rob Clark
[not found] ` <CAF6AEGtbehXbc5PQ8-_18vOhB9eLFbD9ibjZuWwW5iG1G=8=fg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2018-06-27 18:48 ` Doug Anderson
2018-06-28 0:35 ` Rob Clark
[not found] ` <CAF6AEGv6u=HSHQJ-uFBQwWH-cM3AVi+jjtsF54QYkXgeJ3=emw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2018-07-10 13:26 ` ryadav-sgV2jX0FEOL9JmXXK+q4OQ [this message]
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=759602f6e0584f55224f5ceb96ec3bbb@codeaurora.org \
--to=ryadav-sgv2jx0feol9jmxxk+q4oq@public.gmane.org \
--cc=abhinavk-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org \
--cc=chandanu-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org \
--cc=devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=dianders-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org \
--cc=dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org \
--cc=freedreno-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org \
--cc=hoegsberg-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org \
--cc=linux-arm-msm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=robdclark-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
--cc=spanda-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org \
--cc=swboyd-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org \
/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).