[[DPU]PATCH] drm/msm/dsi: move the API setting PLL src to modeset_init()

Rob Clark robdclark at gmail.com
Tue Jun 26 17:27:14 UTC 2018


On Tue, Jun 26, 2018 at 11:55 AM, Doug Anderson <dianders at chromium.org> wrote:
> Hi,
>
> On Mon, Jun 25, 2018 at 9:45 PM, Sandeep Panda <spanda at codeaurora.org> wrote:
>> From: Abhinav Kumar <abhinavk at 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


More information about the dri-devel mailing list