mailbox: sprd: Use devm_clk_get_enabled() helpers

The devm_clk_get_enabled() helpers:
- call devm_clk_get()
- call clk_prepare_enable() and register what is needed in order to
call clk_disable_unprepare() when needed, as a managed resource.

This simplifies the code and avoids the calls to clk_disable_unprepare().

Due to clk only used in probe, not in suspend\resume, this pointer can
remove from sprd_mbox_priv to save a little memory.

Signed-off-by: Huan Yang <link@vivo.com>
Reviewed-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
Reviewed-by: Baolin Wang <baolin.wang@linux.alibaba.com>
Signed-off-by: Jassi Brar <jassisinghbrar@gmail.com>

authored by Huan Yang and committed by Jassi Brar 0d97651b e92d87c9

+4 -21
+4 -21
drivers/mailbox/sprd-mailbox.c
··· 62 62 void __iomem *outbox_base; 63 63 /* Base register address for supplementary outbox */ 64 64 void __iomem *supp_base; 65 - struct clk *clk; 66 65 u32 outbox_fifo_depth; 67 66 68 67 struct mutex lock; ··· 290 291 .shutdown = sprd_mbox_shutdown, 291 292 }; 292 293 293 - static void sprd_mbox_disable(void *data) 294 - { 295 - struct sprd_mbox_priv *priv = data; 296 - 297 - clk_disable_unprepare(priv->clk); 298 - } 299 - 300 294 static int sprd_mbox_probe(struct platform_device *pdev) 301 295 { 302 296 struct device *dev = &pdev->dev; 303 297 struct sprd_mbox_priv *priv; 304 298 int ret, inbox_irq, outbox_irq, supp_irq; 305 299 unsigned long id, supp; 300 + struct clk *clk; 306 301 307 302 priv = devm_kzalloc(dev, sizeof(*priv), GFP_KERNEL); 308 303 if (!priv) ··· 324 331 if (IS_ERR(priv->outbox_base)) 325 332 return PTR_ERR(priv->outbox_base); 326 333 327 - priv->clk = devm_clk_get(dev, "enable"); 328 - if (IS_ERR(priv->clk)) { 334 + clk = devm_clk_get_enabled(dev, "enable"); 335 + if (IS_ERR(clk)) { 329 336 dev_err(dev, "failed to get mailbox clock\n"); 330 - return PTR_ERR(priv->clk); 331 - } 332 - 333 - ret = clk_prepare_enable(priv->clk); 334 - if (ret) 335 - return ret; 336 - 337 - ret = devm_add_action_or_reset(dev, sprd_mbox_disable, priv); 338 - if (ret) { 339 - dev_err(dev, "failed to add mailbox disable action\n"); 340 - return ret; 337 + return PTR_ERR(clk); 341 338 } 342 339 343 340 inbox_irq = platform_get_irq_byname(pdev, "inbox");