[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <91e55d2b-abd0-35b4-cc18-98a96288f8de@lechnology.com>
Date: Thu, 22 Feb 2018 10:44:45 -0600
From: David Lechner <david@...hnology.com>
To: Philipp Zabel <p.zabel@...gutronix.de>,
Bartosz Golaszewski <brgl@...ev.pl>
Cc: linux-kernel@...r.kernel.org,
Bartosz Golaszewski <bgolaszewski@...libre.com>,
Sekhar Nori <nsekhar@...com>,
Kevin Hilman <khilman@...libre.com>
Subject: Re: [PATCH v4] reset: add support for non-DT systems
On 02/22/2018 05:34 AM, Philipp Zabel wrote:
> On Tue, 2018-02-20 at 10:40 -0600, David Lechner wrote:
> [...]
>>> In your case the platform code that adds the lookup may be identical to
>>> the code that registers the struct reset_controller_dev, but that
>>> doesn't have to be the case. I'm not sure how that is supposed to work
>>> for the phy framework (I see no platform code adding phy lookups, only
>>> drivers).
>>>
>> In our use case, we would be adding the lookup in the driver rather than
>> in the platform code, which is why I am suggesting doing it like the phy
>> framework.
>
> Shouldn't it be the job of the platform code to describe the connections
> between reset controller and peripheral module reset
> inputs?
I guess that depends on who you ask. There are many clock driver that
register clkdev lookups in drivers/clk/, so that is what we have done
with the clock driver we are working on. The clock device is also the
reset controller, so it makes sense to me to register the reset lookup
in the same place that we are registering the clkdev lookup.
We have a platform_device_id for each possible configuration, so that
it works very much like the device tree compatible string. You register
a platform device in the board file with the proper name and the driver
takes care of the reset because it knows which connections there are
based on the device name.
Powered by blists - more mailing lists