summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGrzegorz Jaszczyk <jaz@semihalf.com>2018-04-11 12:26:14 +0200
committerKostya Porotchkin <kostap@marvell.com>2018-04-16 17:11:30 +0300
commit07c0cf0d3564d337e0dbefd0b5ef4ec4145f13e6 (patch)
tree31d2dd77473a5f5b728f9a8ed0d05ad18de28956
parent15d3e6fdb72112b4deefc5cd9b2ffe58efbb5152 (diff)
mvebu: cp110: fix digital reset RT SVC
The command argument (x4) was missing and not passed during digital reset function call. Change-Id: I50fa176182ddabe904ab1d2f9cae5d73f6fbb7c0 Signed-off-by: Grzegorz Jaszczyk <jaz@semihalf.com> Reviewed-on: http://vgitil04.il.marvell.com:8080/53132 Tested-by: iSoC Platform CI <ykjenk@marvell.com> Reviewed-by: Kostya Porotchkin <kostap@marvell.com> Reviewed-by: Hanna Hawa <hannah@marvell.com>
-rw-r--r--drivers/marvell/comphy/phy-comphy-cp110.h3
-rw-r--r--plat/marvell/common/mrvl_sip_svc.c6
2 files changed, 5 insertions, 4 deletions
diff --git a/drivers/marvell/comphy/phy-comphy-cp110.h b/drivers/marvell/comphy/phy-comphy-cp110.h
index 98f05ec6..5d32f139 100644
--- a/drivers/marvell/comphy/phy-comphy-cp110.h
+++ b/drivers/marvell/comphy/phy-comphy-cp110.h
@@ -9,4 +9,5 @@ int mvebu_cp110_comphy_is_pll_locked(uint64_t comphy_base, uint64_t comphy_index
int mvebu_cp110_comphy_power_off(uint64_t comphy_base, uint64_t comphy_index);
int mvebu_cp110_comphy_power_on(uint64_t comphy_base, uint64_t comphy_index, uint64_t comphy_mode);
int mvebu_cp110_comphy_xfi_rx_training(uint64_t comphy_base, uint8_t comphy_index);
-int mvebu_cp110_comphy_digital_reset(uint64_t comphy_base, uint8_t comphy_index, uint32_t comphy_mode);
+int mvebu_cp110_comphy_digital_reset(uint64_t comphy_base, uint8_t comphy_index,
+ uint32_t comphy_mode, uint32_t command);
diff --git a/plat/marvell/common/mrvl_sip_svc.c b/plat/marvell/common/mrvl_sip_svc.c
index f1f5e8be..c14e6132 100644
--- a/plat/marvell/common/mrvl_sip_svc.c
+++ b/plat/marvell/common/mrvl_sip_svc.c
@@ -28,7 +28,7 @@
/* This macro is used to identify COMPHY related calls from SMC function ID */
#define is_comphy_fid(fid) \
- ((fid) >= MV_SIP_COMPHY_POWER_ON && (fid) <= MV_SIP_COMPHY_XFI_TRAIN)
+ ((fid) >= MV_SIP_COMPHY_POWER_ON && (fid) <= MV_SIP_COMPHY_DIG_RESET)
uint64_t mrvl_sip_smc_handler(uint32_t smc_fid,
@@ -75,8 +75,8 @@ uint64_t mrvl_sip_smc_handler(uint32_t smc_fid,
ret = mvebu_cp110_comphy_xfi_rx_training(x1, x2);
SMC_RET1(handle, ret);
case MV_SIP_COMPHY_DIG_RESET:
- /* x1: comphy_base, x2: comphy_index */
- ret = mvebu_cp110_comphy_digital_reset(x1, x2, x3);
+ /* x1: comphy_base, x2: comphy_index, x3: mode, x4: command */
+ ret = mvebu_cp110_comphy_digital_reset(x1, x2, x3, x4);
SMC_RET1(handle, ret);
default:
ERROR("%s: unhandled SMC (0x%x)\n", __func__, smc_fid);