From 33b343b23df60ce787f8ce09f15466fbd94fae80 Mon Sep 17 00:00:00 2001 From: Laxminath Kasam Date: Tue, 17 Dec 2019 13:12:58 +0530 Subject: [PATCH] soc: swr-ctrl: increase num retry count for soundwire link status Increase retry count to check soundwire link status at bootup inorder for probe to succeed. Handle error scenario if soundwire probe fails to cleanup device properly. Change-Id: I4a545530e68221a1f428e05aff3d8a93b1dacf84 Signed-off-by: Laxminath Kasam --- soc/swr-mstr-ctrl.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/soc/swr-mstr-ctrl.c b/soc/swr-mstr-ctrl.c index 8859302876e0..30dda5b71dd9 100644 --- a/soc/swr-mstr-ctrl.c +++ b/soc/swr-mstr-ctrl.c @@ -50,7 +50,7 @@ #define ERR_AUTO_SUSPEND_TIMER_VAL 0x1 #define SWRM_INTERRUPT_STATUS_MASK 0x1FDFD -#define SWRM_LINK_STATUS_RETRY_CNT 0x5 +#define SWRM_LINK_STATUS_RETRY_CNT 100 #define SWRM_ROW_48 48 #define SWRM_ROW_50 50 @@ -2464,7 +2464,7 @@ static int swrm_probe(struct platform_device *pdev) "%s: Error in master Initialization , err %d\n", __func__, ret); mutex_unlock(&swrm->mlock); - goto err_mstr_fail; + goto err_mstr_init_fail; } mutex_unlock(&swrm->mlock); @@ -2509,6 +2509,8 @@ static int swrm_probe(struct platform_device *pdev) return 0; err_irq_wakeup_fail: device_init_wakeup(swrm->dev, false); +err_mstr_init_fail: + swr_unregister_master(&swrm->master); err_mstr_fail: if (swrm->reg_irq) swrm->reg_irq(swrm->handle, swr_mstr_interrupt,