summaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorHeiko Stuebner <heiko@sntech.de>2016-03-24 22:29:02 +0100
committerKishon Vijay Abraham I <kishon@ti.com>2016-04-13 18:33:05 +0530
commit332184adff50de9596f03735496c545e8bccc73e (patch)
tree70dbaab2e4ef99b7f7b874ad217fa6c532fd9520 /drivers
parent0311c76e4722b8d6e5fa47eaee63c6552bcc74f5 (diff)
downloadlinux-stable-332184adff50de9596f03735496c545e8bccc73e.tar.gz
linux-stable-332184adff50de9596f03735496c545e8bccc73e.tar.bz2
linux-stable-332184adff50de9596f03735496c545e8bccc73e.zip
phy: rockchip-emmc: should be a child device of the GRF
The emmc-phy is fully enclosed in the general register files (GRF). Therefore as seen from the device-tree it shouldn't be a separate platform- device but instead a sub-device of the GRF - using the simply-mfd mechanism. The driver entered the kernel in the current merge-window, so we can still adapt the binding without needing a fallback, as the binding hasn't been released with a full kernel yet. Signed-off-by: Heiko Stuebner <heiko@sntech.de> Acked-by: Rob Herring <robh@kernel.org> Reviewed-by: Shawn Lin <shawn.lin@rock-chips.com> Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/phy/phy-rockchip-emmc.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/phy/phy-rockchip-emmc.c b/drivers/phy/phy-rockchip-emmc.c
index 887b4c27195f..6ebcf3e41c46 100644
--- a/drivers/phy/phy-rockchip-emmc.c
+++ b/drivers/phy/phy-rockchip-emmc.c
@@ -176,7 +176,10 @@ static int rockchip_emmc_phy_probe(struct platform_device *pdev)
struct regmap *grf;
unsigned int reg_offset;
- grf = syscon_regmap_lookup_by_phandle(dev->of_node, "rockchip,grf");
+ if (!dev->parent || !dev->parent->of_node)
+ return -ENODEV;
+
+ grf = syscon_node_to_regmap(dev->parent->of_node);
if (IS_ERR(grf)) {
dev_err(dev, "Missing rockchip,grf property\n");
return PTR_ERR(grf);