Hi Kishon, On Dec 15, 2015, at 7:46 PM, Kishon Vijay Abraham I <kishon@xxxxxx> wrote: > > Hi Shin, > > On Thursday 26 November 2015 04:35 PM, Sergei Shtylyov wrote: >> Hello. >> >> On 11/26/2015 5:56 AM, Jaedon Shin wrote: >> >>> Add data for phy version, and the default value of version is using the >>> BRCM_SATA_PHY_28NM. >>> >>> Signed-off-by: Jaedon Shin <jaedon.shin@xxxxxxxxx> >>> Tested-by: Florian Fainelli <f.fainelli@xxxxxxxxx> >>> Acked-by: Brian Norris <computersforpeace@xxxxxxxxx> >>> --- >>> drivers/phy/phy-brcmstb-sata.c | 23 ++++++++++++++++++++--- >>> 1 file changed, 20 insertions(+), 3 deletions(-) >>> >>> diff --git a/drivers/phy/phy-brcmstb-sata.c b/drivers/phy/phy-brcmstb-sata.c >>> index 0be55dafe9ea..5de394f589c8 100644 >>> --- a/drivers/phy/phy-brcmstb-sata.c >>> +++ b/drivers/phy/phy-brcmstb-sata.c >>> @@ -30,7 +30,11 @@ >>> #define MAX_PORTS 2 >>> >>> /* Register offset between PHYs in PCB space */ >>> -#define SATA_MDIO_REG_SPACE_SIZE 0x1000 >>> +#define SATA_MDIO_REG_28NM_SPACE_SIZE 0x1000 >>> + >>> +enum brcm_sata_phy_version { >>> + BRCM_SATA_PHY_28NM, >>> +}; >> >> So an uninitialized .data field would mean the same? > > Are you planning to fix this? > > Thanks > Kishon No, I do not have a plan in this version. Of course, It is good that correspond to the case of NULL, but a .data field is not empty at any time. I'm sure it must have BRCM_SATA_PHY_28NM or BRCM_SATA_PHY_40NM. And Sergei, thanks to your good point. Thanks, Jaedon >> >> [...] >>> @@ -126,7 +135,8 @@ static const struct phy_ops phy_ops_28nm = { >>> }; >>> >>> static const struct of_device_id brcm_sata_phy_of_match[] = { >>> - { .compatible = "brcm,bcm7445-sata-phy" }, >>> + { .compatible = "brcm,bcm7445-sata-phy", >>> + .data = (void *)BRCM_SATA_PHY_28NM }, >>> {}, >>> }; >>> MODULE_DEVICE_TABLE(of, brcm_sata_phy_of_match); >>> @@ -135,6 +145,7 @@ static int brcm_sata_phy_probe(struct platform_device *pdev) >>> { >>> struct device *dev = &pdev->dev; >>> struct device_node *dn = dev->of_node, *child; >>> + const struct of_device_id *of_id; >>> struct brcm_sata_phy *priv; >>> struct resource *res; >>> struct phy_provider *provider; >>> @@ -154,6 +165,12 @@ static int brcm_sata_phy_probe(struct platform_device >>> *pdev) >>> if (IS_ERR(priv->phy_base)) >>> return PTR_ERR(priv->phy_base); >>> >>> + of_id = of_match_node(brcm_sata_phy_of_match, dn); >>> + if (of_id) >>> + priv->version = (enum brcm_sata_phy_version)of_id->data; >>> + else >>> + priv->version = BRCM_SATA_PHY_28NM; >>> + >>> for_each_available_child_of_node(dn, child) { >>> unsigned int id; >>> struct brcm_sata_port *port; >> >> MBR, Sergei -- To unsubscribe from this list: send the line "unsubscribe linux-ide" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html