[U-Boot] [PATCH v5 02/11] reset: add reset_count()

Simon Glass sjg at chromium.org
Mon Jun 12 23:51:10 UTC 2017


Hi Patrice,

On 12 June 2017 at 01:51, Patrice CHOTARD <patrice.chotard at st.com> wrote:
>
>
> On 06/12/2017 09:27 AM, Patrice CHOTARD wrote:
>> Hi Simon
>>
>> On 06/06/2017 11:08 PM, Simon Glass wrote:
>>> Hi,
>>>
>>> On 5 June 2017 at 05:18, Marek Vasut <marex at denx.de> wrote:
>>>> On 06/05/2017 11:34 AM, Patrice CHOTARD wrote:
>>>>> Hi Marek
>>>>>
>>>>> On 06/03/2017 08:02 AM, Marek Vasut wrote:
>>>>>> On 06/01/2017 01:36 PM, patrice.chotard at st.com wrote:
>>>>>>> From: Patrice Chotard <patrice.chotard at st.com>
>>>>>>>
>>>>>>> Add reset_count() method to be able to get the number
>>>>>>> of resets contained into a resets property. This will allow
>>>>>>> to allocate the right amount of memory in order to keep resets
>>>>>>> reference. These resets reference can be used later on error path
>>>>>>> or in .remove callback to release these resets.
>>>>>>>
>>>>>>> Signed-off-by: Patrice Chotard <patrice.chotard at st.com>
>>>>>>> ---
>>>>>>> v5:         _ replace fdtdec_parse_phandle_with_args() by dev_read_phandle_with_args()
>>>>>>> v4:     _ add reset_count() method
>>>>>>>
>>>>>>>     drivers/reset/reset-uclass.c | 13 +++++++++++++
>>>>>>>     include/reset.h              | 11 +++++++++++
>>>>>>>     2 files changed, 24 insertions(+)
>>>>>>>
>>>>>>> diff --git a/drivers/reset/reset-uclass.c b/drivers/reset/reset-uclass.c
>>>>>>> index 4fd82b9..4b17d4c 100644
>>>>>>> --- a/drivers/reset/reset-uclass.c
>>>>>>> +++ b/drivers/reset/reset-uclass.c
>>>>>>> @@ -97,6 +97,19 @@ int reset_get_by_name(struct udevice *dev, const char *name,
>>>>>>>       return reset_get_by_index(dev, index, reset_ctl);
>>>>>>>     }
>>>>>>>
>>>>>>> +int reset_count(struct udevice *dev)
>>>>>>> +{
>>>>>>> +   int count;
>>>>>>> +   struct ofnode_phandle_args args;
>>>>>>> +
>>>>>>> +   for (count = 0; ; count++) {
>>>>>>> +           if (dev_read_phandle_with_args(dev,
>>>>>>> +                                          "resets", "#reset-cells", 0,
>>>>>>> +                                          count, &args))
>>>>>>
>>>>>> Don't we have some generic thing in libfdt to count number of phandle
>>>>>> args ? This looks weird to me ...
>>>>>
>>>>> I didn't find anything in libfdt doing that.
>>>>
>>>> Maybe someone else can hop in, I'm quite sure there should be something
>>>> like that.
>>>
>>> In linux there is of_count_phandle_with_args(). Now that we have
>>> livetree we could copy that function over. Then for flat tree we could
>>> use fdtdec_parse_phandle_with_args() passing a -ve index.
>>>
>>> Then we need something like dev_read_phandle_count().
>>>
>>> Patrice what do you think?
>>
>> Agree with that.
>> Ping me when this will be available, then i will update and resubmit my
>> series.
>
> Or do you prefer me to do this ? just tell me ?

Please go ahead, thanks.

Regards,
Simon


More information about the U-Boot mailing list