[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <5162C44B.90501@ti.com>
Date: Mon, 8 Apr 2013 18:51:15 +0530
From: Kishon Vijay Abraham I <kishon@...com>
To: Stephen Warren <swarren@...dotorg.org>
CC: <balbi@...com>, <gregkh@...uxfoundation.org>, <arnd@...db.de>,
<akpm@...ux-foundation.org>, <sylvester.nawrocki@...il.com>,
<rob@...dley.net>, <netdev@...r.kernel.org>, <davem@...emloft.net>,
<cesarb@...arb.net>, <linux-usb@...r.kernel.org>,
<linux-omap@...r.kernel.org>, <linux-kernel@...r.kernel.org>,
<tony@...mide.com>, <grant.likely@...retlab.ca>,
<rob.herring@...xeda.com>, <b-cousson@...com>,
<linux@....linux.org.uk>, <eballetbo@...il.com>,
<javier@...hile0.org>, <mchehab@...hat.com>,
<santosh.shilimkar@...com>, <broonie@...nsource.wolfsonmicro.com>,
<swarren@...dia.com>, <linux-doc@...r.kernel.org>,
<devicetree-discuss@...ts.ozlabs.org>,
<linux-arm-kernel@...ts.infradead.org>
Subject: Re: [PATCH v5 1/6] drivers: phy: add generic PHY framework
Hi,
On Thursday 04 April 2013 05:24 AM, Stephen Warren wrote:
> On 04/03/2013 06:53 AM, Kishon Vijay Abraham I wrote:
>> The PHY framework provides a set of APIs for the PHY drivers to
>> create/destroy a PHY and APIs for the PHY users to obtain a reference to the
>> PHY with or without using phandle. To obtain a reference to the PHY without
>> using phandle, the platform specfic intialization code (say from board file)
>> should have already called phy_bind with the binding information. The binding
>> information consists of phy's device name, phy user device name and an index.
>> The index is used when the same phy user binds to mulitple phys.
>>
>> PHY drivers should create the PHY by passing phy_descriptor that has
>> describes the PHY (label, type etc..) and ops like init, exit, suspend, resume,
>> power_on, power_off.
>>
>> The documentation for the generic PHY framework is added in
>> Documentation/phy.txt and the documentation for the sysfs entry is added
>> in Documentation/ABI/testing/sysfs-class-phy and the documentation for
>> dt binding is can be found at
>> Documentation/devicetree/bindings/phy/phy-bindings.txt
>
>> diff --git a/include/linux/phy/phy.h b/include/linux/phy/phy.h
>
>> +extern struct phy *devm_phy_create(struct device *dev, const char *label,
>> + struct device_node *of_node, int type, struct phy_ops *ops,
>> + void *priv);
>
> Can't the function get of_node from dev->of_node?
>
> I wonder if we shouldn't split up the registration a bit though:
>
> A function which registers a PHY object itself. That's the function above.
>
> A function which registers a DT-based PHY provider.
>
> Then, the of_xlate op would be part of the PHY provider, not part of
> some random PHY that happens to exist on that node. So:
Yeah. Makes sense to me. By this we can avoid struct phy * to represent
two different things (phy provider and phy instance).
Thanks
Kishon
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists