diff options
author | Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com> | 2014-10-30 06:21:25 -0400 |
---|---|---|
committer | Kishon Vijay Abraham I <kishon@ti.com> | 2014-11-13 01:19:43 -0500 |
commit | 8203f8b4619a158a685ba317356a679b5f1ac422 (patch) | |
tree | 7cc4982b20049b9bafbfca35f3adb12cd639ab20 | |
parent | a98d41d6a1204b61bac03bb3eabdbc2fe93b495d (diff) |
phy: berlin-sata: Add support for BG2 SATA PHY
Berlin BG2 also has a SATA PHY compatible with the current driver
except different PHY_BASE. Add a new compatible to the driver
reflecting the different PHY_BASE.
Acked-by: Antoine Ténart <antoine.tenart@free-electrons.com>
Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
-rw-r--r-- | drivers/phy/phy-berlin-sata.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/drivers/phy/phy-berlin-sata.c b/drivers/phy/phy-berlin-sata.c index cdb46d1203a4..873e7a890fee 100644 --- a/drivers/phy/phy-berlin-sata.c +++ b/drivers/phy/phy-berlin-sata.c | |||
@@ -30,6 +30,7 @@ | |||
30 | #define MBUS_WRITE_REQUEST_SIZE_128 (BIT(2) << 16) | 30 | #define MBUS_WRITE_REQUEST_SIZE_128 (BIT(2) << 16) |
31 | #define MBUS_READ_REQUEST_SIZE_128 (BIT(2) << 19) | 31 | #define MBUS_READ_REQUEST_SIZE_128 (BIT(2) << 19) |
32 | 32 | ||
33 | #define BG2_PHY_BASE 0x080 | ||
33 | #define BG2Q_PHY_BASE 0x200 | 34 | #define BG2Q_PHY_BASE 0x200 |
34 | 35 | ||
35 | /* register 0x01 */ | 36 | /* register 0x01 */ |
@@ -222,7 +223,10 @@ static int phy_berlin_sata_probe(struct platform_device *pdev) | |||
222 | if (!priv->phys) | 223 | if (!priv->phys) |
223 | return -ENOMEM; | 224 | return -ENOMEM; |
224 | 225 | ||
225 | priv->phy_base = BG2Q_PHY_BASE; | 226 | if (of_device_is_compatible(dev->of_node, "marvell,berlin2-sata-phy")) |
227 | priv->phy_base = BG2_PHY_BASE; | ||
228 | else | ||
229 | priv->phy_base = BG2Q_PHY_BASE; | ||
226 | 230 | ||
227 | dev_set_drvdata(dev, priv); | 231 | dev_set_drvdata(dev, priv); |
228 | spin_lock_init(&priv->lock); | 232 | spin_lock_init(&priv->lock); |
@@ -271,6 +275,7 @@ static int phy_berlin_sata_probe(struct platform_device *pdev) | |||
271 | } | 275 | } |
272 | 276 | ||
273 | static const struct of_device_id phy_berlin_sata_of_match[] = { | 277 | static const struct of_device_id phy_berlin_sata_of_match[] = { |
278 | { .compatible = "marvell,berlin2-sata-phy" }, | ||
274 | { .compatible = "marvell,berlin2q-sata-phy" }, | 279 | { .compatible = "marvell,berlin2q-sata-phy" }, |
275 | { }, | 280 | { }, |
276 | }; | 281 | }; |