Re: [PATCH v1 1/3] phy: phy-core: allow specifying supply at port level

From: Kishon Vijay Abraham I
Date: Wed Mar 25 2015 - 19:45:04 EST


Hi,

On Thursday 26 March 2015 04:19 AM, Dmitry Torokhov wrote:
> On Thu, Mar 26, 2015 at 04:09:23AM +0530, Kishon Vijay Abraham I wrote:
>> Hi,
>>
>> On Thursday 26 March 2015 03:47 AM, Dmitry Torokhov wrote:
>>> On Wed, Mar 25, 2015 at 3:11 PM, Kishon Vijay Abraham I <kishon@xxxxxx> wrote:
>>>> Hi,
>>>>
>>>> On Saturday 21 March 2015 02:55 AM, Arun Ramamurthy wrote:
>>>>> Multi-port phy's may have per-port power supplies. Let's change phy core
>>>>> to first attempt to look up the supply at the port level, and then, if
>>>>> not found, check parent device.
>>>>
>>>> Why not just have every port provide the power supply if it needs?
>>>> I don't think checking for parent device should be present in the phy-core at
>>>> all.
>>>
>>> We need to do that if we want to keep compatibility with the current
>>> DTSes: before this patch the supply would be always looked up on
>>> device and not port level.
>>
>> ah okay.
>> so just using regulator_get_optional(&phy->dev, "phy"); should be sufficient
>
> This is for regulators specified at port level (&phy->dev represents
> port).
>
>> right? Why do we need regulator_get_optional(phy->dev.parent, "phy");?
>>
>
> This is for compatibility with old multi-port bindings where supply is
> specified at parent device level and phy_create() is called with dev and
> node that is not NULL and not the same as dev->of_node. I have no idea
> if such bindings exist in wild, but wanted to keep them working given
> stated DT stability rules.

Such a binding doesn't exist. So let's keep only the
regulator_get_optional(&phy->dev, "phy"); part. Only TI SoCs and recently
sun9i started using phy-supply and none of them use multi-phy PHY provider.

Thanks
Kishon
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/