Message ID | 20240403034314.3623830-1-nichen@iscas.ac.cn |
---|---|
State | New |
Headers | show |
Series | ata: sata_gemini: Add check for clk_enable | expand |
On 4/3/24 12:43, Chen Ni wrote: > As the potential failure of the clk_enable(), it should be better to > check it and return error if fails. Simplify please: The call to clk_enable() in gemini_sata_start_bridge() can fail. Add a check to detect such failure. > > Signed-off-by: Chen Ni <nichen@iscas.ac.cn> > --- > drivers/ata/sata_gemini.c | 5 ++++- > 1 file changed, 4 insertions(+), 1 deletion(-) > > diff --git a/drivers/ata/sata_gemini.c b/drivers/ata/sata_gemini.c > index 400b22ee99c3..4c270999ba3c 100644 > --- a/drivers/ata/sata_gemini.c > +++ b/drivers/ata/sata_gemini.c > @@ -200,7 +200,10 @@ int gemini_sata_start_bridge(struct sata_gemini *sg, unsigned int bridge) > pclk = sg->sata0_pclk; > else > pclk = sg->sata1_pclk; > - clk_enable(pclk); > + ret = clk_enable(pclk); > + if (ret) > + return ret; > + > msleep(10); > > /* Do not keep clocking a bridge that is not online */
diff --git a/drivers/ata/sata_gemini.c b/drivers/ata/sata_gemini.c index 400b22ee99c3..4c270999ba3c 100644 --- a/drivers/ata/sata_gemini.c +++ b/drivers/ata/sata_gemini.c @@ -200,7 +200,10 @@ int gemini_sata_start_bridge(struct sata_gemini *sg, unsigned int bridge) pclk = sg->sata0_pclk; else pclk = sg->sata1_pclk; - clk_enable(pclk); + ret = clk_enable(pclk); + if (ret) + return ret; + msleep(10); /* Do not keep clocking a bridge that is not online */
As the potential failure of the clk_enable(), it should be better to check it and return error if fails. Signed-off-by: Chen Ni <nichen@iscas.ac.cn> --- drivers/ata/sata_gemini.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-)