[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Tue, 3 Mar 2020 17:35:18 +0200
From: Tomi Valkeinen <tomi.valkeinen@...com>
To: Tony Lindgren <tony@...mide.com>
CC: <linux-omap@...r.kernel.org>, "Andrew F . Davis" <afd@...com>,
Dave Gerlach <d-gerlach@...com>,
Faiz Abbas <faiz_abbas@...com>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
Keerthy <j-keerthy@...com>, Nishanth Menon <nm@...com>,
Peter Ujfalusi <peter.ujfalusi@...com>,
Roger Quadros <rogerq@...com>, Suman Anna <s-anna@...com>,
Tero Kristo <t-kristo@...com>, <linux-kernel@...r.kernel.org>,
<linux-arm-kernel@...ts.infradead.org>, Jyri Sarha <jsarha@...com>,
Laurent Pinchart <laurent.pinchart@...asonboard.com>,
<dri-devel@...ts.freedesktop.org>
Subject: Re: [PATCH 3/3] bus: ti-sysc: Implement display subsystem reset quirk
On 03/03/2020 17:13, Tony Lindgren wrote:
> Hi,
>
> * Tomi Valkeinen <tomi.valkeinen@...com> [200303 06:03]:
>> On 24/02/2020 21:12, Tony Lindgren wrote:
>>> + /* Remap the whole module range to be able to reset dispc outputs */
>>> + devm_iounmap(ddata->dev, ddata->module_va);
>>> + ddata->module_va = devm_ioremap(ddata->dev,
>>> + ddata->module_pa,
>>> + ddata->module_size);
>>
>> Why is this needed? The range is not mapped when sysc_pre_reset_quirk_dss()
>> is called? This will unmap and remap twice, as this function is called
>> twice. And then left mapped.
>
> That's because by default we only ioremap the module revision, sysconfig
> and sysstatus register are and provide the rest as a range for the child
> nodes.
>
> In the dss quirk case we need to tinker with registers also in the dispc
> range, and at the parent dss probe time dispc has not probed yet.
>
> We may be able to eventually move the reset quirk to dispc, but then
> it won't happen in the current setup until after dss top level driver
> has loaded.
>
> We leave the module range ioremapped as we still need to access
> sysconfig related registers for PM runtime.
Ok, makes sense. I guess a minor improvement would be to unmap & remap once in
sysc_pre_reset_quirk_dss before calling sysc_quirk_dispc.
Tomi
--
Texas Instruments Finland Oy, Porkkalankatu 22, 00180 Helsinki.
Y-tunnus/Business ID: 0615521-4. Kotipaikka/Domicile: Helsinki
Powered by blists - more mailing lists