[U-Boot] [PATCH v2 1/2] core: add uclass_get_device_by_phandle_id() api

Simon Glass sjg at chromium.org
Sun Feb 25 15:54:44 UTC 2018


Hi Kever,

On 23 February 2018 at 19:08, Kever Yang <kever.yang at rock-chips.com> wrote:
> Hi Simon,
>
>
> On 02/12/2018 10:35 PM, Simon Glass wrote:
>> Hi Kever,
>>
>> On 8 February 2018 at 19:56, Kever Yang <kever.yang at rock-chips.com> wrote:
>>> Add api for who can not get phandle from a device property.
>> Can you please add a motivation to the commit message? It is not
>> obvious to me when this function would be used.
> Here is the example why I need this, see the dts node here:
> lvds at ff2e0000 {
>     ...
>     rockchip,grf = <&grf>;
>     port {
>         port at 0 {
>             endpoint at 0 {
>                 remote-endpoint = <&vopl_out_lvds>;
>             }
>         }
>     }
> }
>
> We can only get 'grf' udevice by uclass_get_device_by_phandle(),
> but we not able to get udevice 'vopl_out_lvds', other driver like
> rockchip pinctrl
> also need to get udevice by a phandle which is not one of direct property of
> another device node.

OK I see. This sort of info is useful in the commit message. It helps
to know two things about a patch:

- why it is needed
- what it does

In this case see rk_display_init() for how it handles the
'remote-endpoint' property. I think it would be better to have
something like:

ofnode ofnode_lookup_phandle(ofnode node, const char *prop_name);

This should meet your needs without needing to decoding the phandle
property in the caller.

Regards,
Simon


More information about the U-Boot mailing list