[alsa-devel] [PATCH 8/9] ASoC: sh: fsi: remove fsi_module_init/kill

Kuninori Morimoto kuninori.morimoto.gx at renesas.com
Mon May 23 13:46:30 CEST 2011


FSIA/B ports is enabled by default when power-on,
and current FSI is supporting RuntimePM.
In addition, current fsi_module_init/kill doesn't care
simultaneous playback/recorde.
This mean FSI port control is not needed.
This patch remove fsi_module_init/kill

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx at renesas.com>
---
 sound/soc/sh/fsi.c |   30 ------------------------------
 1 files changed, 0 insertions(+), 30 deletions(-)

diff --git a/sound/soc/sh/fsi.c b/sound/soc/sh/fsi.c
index c755d21..a457e5b 100644
--- a/sound/soc/sh/fsi.c
+++ b/sound/soc/sh/fsi.c
@@ -669,32 +669,11 @@ static int fsi_set_master_clk(struct device *dev, struct fsi_priv *fsi,
 
 }
 
-#define fsi_module_init(m, d)	__fsi_module_clk_ctrl(m, d, 1)
-#define fsi_module_kill(m, d)	__fsi_module_clk_ctrl(m, d, 0)
-static void __fsi_module_clk_ctrl(struct fsi_master *master,
-				  struct device *dev,
-				  int enable)
-{
-	pm_runtime_get_sync(dev);
-
-	if (enable) {
-		/* enable only SR */
-		fsi_master_mask_set(master, SOFT_RST, FSISR, FSISR);
-		fsi_master_mask_set(master, SOFT_RST, PASR | PBSR, 0);
-	} else {
-		/* clear all registers */
-		fsi_master_mask_set(master, SOFT_RST, FSISR, 0);
-	}
-
-	pm_runtime_put_sync(dev);
-}
-
 #define fsi_port_start(f, i)	__fsi_port_clk_ctrl(f, i, 1)
 #define fsi_port_stop(f, i)	__fsi_port_clk_ctrl(f, i, 0)
 static void __fsi_port_clk_ctrl(struct fsi_priv *fsi, int is_play, int enable)
 {
 	struct fsi_master *master = fsi_get_master(fsi);
-	u32 soft = fsi_is_port_a(fsi) ? PASR : PBSR;
 	u32 clk  = fsi_is_port_a(fsi) ? CRA  : CRB;
 	int is_master = fsi_is_clk_master(fsi);
 
@@ -703,7 +682,6 @@ static void __fsi_port_clk_ctrl(struct fsi_priv *fsi, int is_play, int enable)
 	else
 		fsi_irq_disable(fsi, is_play);
 
-	fsi_master_mask_set(master, SOFT_RST, soft, (enable) ? soft : 0);
 	if (is_master)
 		fsi_master_mask_set(master, CLK_RST, clk, (enable) ? clk : 0);
 }
@@ -1309,8 +1287,6 @@ static int fsi_probe(struct platform_device *pdev)
 	pm_runtime_enable(&pdev->dev);
 	dev_set_drvdata(&pdev->dev, master);
 
-	fsi_module_init(master, &pdev->dev);
-
 	ret = request_irq(irq, &fsi_interrupt, IRQF_DISABLED,
 			  id_entry->name, master);
 	if (ret) {
@@ -1353,8 +1329,6 @@ static int fsi_remove(struct platform_device *pdev)
 
 	master = dev_get_drvdata(&pdev->dev);
 
-	fsi_module_kill(master, &pdev->dev);
-
 	free_irq(master->irq, master);
 	pm_runtime_disable(&pdev->dev);
 
@@ -1409,8 +1383,6 @@ static int fsi_suspend(struct device *dev)
 	master->saved_clk_rst	= fsi_master_read(master, CLK_RST);
 	master->saved_soft_rst	= fsi_master_read(master, SOFT_RST);
 
-	fsi_module_kill(master, dev);
-
 	pm_runtime_put_sync(dev);
 
 	return 0;
@@ -1422,8 +1394,6 @@ static int fsi_resume(struct device *dev)
 
 	pm_runtime_get_sync(dev);
 
-	fsi_module_init(master, dev);
-
 	fsi_master_mask_set(master, SOFT_RST, 0xffff, master->saved_soft_rst);
 	fsi_master_mask_set(master, CLK_RST, 0xffff, master->saved_clk_rst);
 	fsi_core_mask_set(master, a_mclk, 0xffff, master->saved_a_mclk);
-- 
1.7.1



More information about the Alsa-devel mailing list