summaryrefslogtreecommitdiff
path: root/drivers/phy
diff options
context:
space:
mode:
authorIgal Liberman <igall@marvell.com>2017-08-22 11:14:22 +0300
committerStefan Roese <sr@denx.de>2021-04-29 08:45:24 +0300
commitc2bf42f5fd7867d4a33cc644a8f45090d7553440 (patch)
tree3c1e9349b32f6446418ee27ab67f40df5ed08113 /drivers/phy
parent3e69b4abffdd2b11b9d382e3a21414d6b7640efe (diff)
downloadu-boot-c2bf42f5fd7867d4a33cc644a8f45090d7553440.tar.xz
phy: marvell: fix several minor bugs in comphy_probe
If fdtdec_get_int can't find speed, set COMPHY_SPEED_INVALID If fdtdec_get_int can't find type, set COMPHY_TYPE_INVALID Move the error print if phy-type is invalid Add continue to the probe loop (in a case of invalid phy) Cosmetic changes Change-Id: I0c61b40bfe685437426fe907942ed338b7845378 Signed-off-by: Igal Liberman <igall@marvell.com>
Diffstat (limited to 'drivers/phy')
-rw-r--r--drivers/phy/marvell/comphy_core.c29
1 files changed, 19 insertions, 10 deletions
diff --git a/drivers/phy/marvell/comphy_core.c b/drivers/phy/marvell/comphy_core.c
index 835fc2e907..d3c89c9774 100644
--- a/drivers/phy/marvell/comphy_core.c
+++ b/drivers/phy/marvell/comphy_core.c
@@ -136,21 +136,30 @@ static int comphy_probe(struct udevice *dev)
if (!fdtdec_get_is_enabled(blob, subnode))
continue;
- comphy_map_data[lane].speed = fdtdec_get_int(
- blob, subnode, "phy-speed", COMPHY_TYPE_INVALID);
- comphy_map_data[lane].type = fdtdec_get_int(
- blob, subnode, "phy-type", COMPHY_SPEED_INVALID);
- comphy_map_data[lane].invert = fdtdec_get_int(
- blob, subnode, "phy-invert", COMPHY_POLARITY_NO_INVERT);
- comphy_map_data[lane].clk_src = fdtdec_get_bool(blob, subnode,
- "clk-src");
- comphy_map_data[lane].end_point = fdtdec_get_bool(blob, subnode,
- "end_point");
+ comphy_map_data[lane].type =
+ fdtdec_get_int(blob, subnode, "phy-type",
+ COMPHY_TYPE_INVALID);
+
if (comphy_map_data[lane].type == COMPHY_TYPE_INVALID) {
printf("no phy type for lane %d, setting lane as unconnected\n",
lane + 1);
+ continue;
}
+ comphy_map_data[lane].speed =
+ fdtdec_get_int(blob, subnode, "phy-speed",
+ COMPHY_SPEED_INVALID);
+
+ comphy_map_data[lane].invert =
+ fdtdec_get_int(blob, subnode, "phy-invert",
+ COMPHY_POLARITY_NO_INVERT);
+
+ comphy_map_data[lane].clk_src =
+ fdtdec_get_bool(blob, subnode, "clk-src");
+
+ comphy_map_data[lane].end_point =
+ fdtdec_get_bool(blob, subnode, "end_point");
+
lane++;
}