Re: Query: Phy: How to find consumer device on dt platform

Kishon Vijay Abraham I
2014-01-28T14:28:48Z

Hi,

On Tuesday 28 January 2014 07:43 PM, Pratyush Anand wrote:
> Hi Kishon,
>
> I have a phy driver which has to be used by two different consumer
> driver, say pcie and sata.

I assume you have multiple instances of the same IP and you have a single
driver for it?
>
> I have a common set of registers, which need to be programmed
> differently for PCIe and SATA during phy init/exit.

One way is differentiate using different compatible strings fro pcie and sata
and use of_device_is_compatible to select a particular path.
>
> Therefore, in the init/exit routine of phy_ops, I need some way of
> identifying that phy_init/exit has been called from PCIe driver or
> SATA driver.

In this case you'll be actually registering two different PHYs (each for pcie
and sata), so your phy_get should give you the only the appropriate phy.

Cheers
Kishon