diff options
author | Vinod G <vinodg@nvidia.com> | 2011-05-02 15:17:19 -0700 |
---|---|---|
committer | Varun Colbert <vcolbert@nvidia.com> | 2011-05-13 18:38:17 -0700 |
commit | 0e3f21cb8aaae12171a908426a9c3487dce4da18 (patch) | |
tree | fdb02c6e5aa4ad9da9f09ffb70ed7f5c2bddef72 /arch/arm/mach-tegra/spdif.c | |
parent | 64e1800300d6394363e6509cfdf4edc7f766c9e6 (diff) |
arm: tegra: Exposing more i2s port for Baseband.
Exposed the baseband i2s port for cardhu.
Added separate audio init function.
Change-Id: I9ff38f101c5540ad6e2365ed93a8c88373164ea3
Reviewed-on: http://git-master/r/30087
Reviewed-by: Vinod Gopalakrishnakurup <vinodg@nvidia.com>
Reviewed-by: Scott Peterson <speterson@nvidia.com>
Tested-by: Vinod Gopalakrishnakurup <vinodg@nvidia.com>
Diffstat (limited to 'arch/arm/mach-tegra/spdif.c')
-rw-r--r-- | arch/arm/mach-tegra/spdif.c | 47 |
1 files changed, 3 insertions, 44 deletions
diff --git a/arch/arm/mach-tegra/spdif.c b/arch/arm/mach-tegra/spdif.c index df2600cb556c..972ca2bc8e06 100644 --- a/arch/arm/mach-tegra/spdif.c +++ b/arch/arm/mach-tegra/spdif.c @@ -573,50 +573,6 @@ void spdif_restore_regs(unsigned long base) spdif_writel(base, regs->spdif_usr_sta_rx_a_0, SPDIF_USR_STA_RX_A_0); spdif_writel(base, regs->spdif_usr_dat_tx_a_0, SPDIF_USR_DAT_TX_A_0); } - -void spdif_get_all_regs(unsigned long base, struct spdif_regs_cache* regs) -{ - regs->spdif_ctrl_0 = spdif_readl(base, SPDIF_CTRL_0); - regs->spdif_status_0 = spdif_readl(base, SPDIF_STATUS_0); - regs->spdif_strobe_ctrl_0 = spdif_readl(base, SPDIF_STROBE_CTRL_0); - regs->spdif_data_fifo_scr_0 = spdif_readl(base, SPDIF_DATA_FIFO_CSR_0); - regs->spdif_ch_sta_rx_a_0 = spdif_readl(base, SPDIF_CH_STA_RX_A_0); - regs->spdif_ch_sta_rx_b_0 = spdif_readl(base, SPDIF_CH_STA_RX_B_0); - regs->spdif_ch_sta_rx_c_0 = spdif_readl(base, SPDIF_CH_STA_RX_C_0); - regs->spdif_ch_sta_rx_d_0 = spdif_readl(base, SPDIF_CH_STA_RX_D_0); - regs->spdif_ch_sta_rx_e_0 = spdif_readl(base, SPDIF_CH_STA_RX_E_0); - regs->spdif_ch_sta_rx_f_0 = spdif_readl(base, SPDIF_CH_STA_RX_F_0); - regs->spdif_ch_sta_tx_a_0 = spdif_readl(base, SPDIF_CH_STA_TX_A_0); - regs->spdif_ch_sta_tx_b_0 = spdif_readl(base, SPDIF_CH_STA_TX_B_0); - regs->spdif_ch_sta_tx_c_0 = spdif_readl(base, SPDIF_CH_STA_TX_C_0); - regs->spdif_ch_sta_tx_d_0 = spdif_readl(base, SPDIF_CH_STA_TX_D_0); - regs->spdif_ch_sta_tx_e_0 = spdif_readl(base, SPDIF_CH_STA_TX_E_0); - regs->spdif_ch_sta_tx_f_0 = spdif_readl(base, SPDIF_CH_STA_TX_F_0); - regs->spdif_usr_sta_rx_a_0 = spdif_readl(base, SPDIF_USR_STA_RX_A_0); - regs->spdif_usr_dat_tx_a_0 = spdif_readl(base, SPDIF_USR_DAT_TX_A_0); -} - -void spdif_set_all_regs(unsigned long base, struct spdif_regs_cache* regs) -{ - spdif_writel(base, regs->spdif_ctrl_0, SPDIF_CTRL_0); - spdif_writel(base, regs->spdif_status_0, SPDIF_STATUS_0); - spdif_writel(base, regs->spdif_strobe_ctrl_0, SPDIF_STROBE_CTRL_0); - spdif_writel(base, regs->spdif_data_fifo_scr_0, SPDIF_DATA_FIFO_CSR_0); - spdif_writel(base, regs->spdif_ch_sta_rx_a_0, SPDIF_CH_STA_RX_A_0); - spdif_writel(base, regs->spdif_ch_sta_rx_b_0, SPDIF_CH_STA_RX_B_0); - spdif_writel(base, regs->spdif_ch_sta_rx_c_0, SPDIF_CH_STA_RX_C_0); - spdif_writel(base, regs->spdif_ch_sta_rx_d_0, SPDIF_CH_STA_RX_D_0); - spdif_writel(base, regs->spdif_ch_sta_rx_e_0, SPDIF_CH_STA_RX_E_0); - spdif_writel(base, regs->spdif_ch_sta_rx_f_0, SPDIF_CH_STA_RX_F_0); - spdif_writel(base, regs->spdif_ch_sta_tx_a_0, SPDIF_CH_STA_TX_A_0); - spdif_writel(base, regs->spdif_ch_sta_tx_b_0, SPDIF_CH_STA_TX_B_0); - spdif_writel(base, regs->spdif_ch_sta_tx_c_0, SPDIF_CH_STA_TX_C_0); - spdif_writel(base, regs->spdif_ch_sta_tx_d_0, SPDIF_CH_STA_TX_D_0); - spdif_writel(base, regs->spdif_ch_sta_tx_e_0, SPDIF_CH_STA_TX_E_0); - spdif_writel(base, regs->spdif_ch_sta_tx_f_0, SPDIF_CH_STA_TX_F_0); - spdif_writel(base, regs->spdif_usr_sta_rx_a_0, SPDIF_USR_STA_RX_A_0); - spdif_writel(base, regs->spdif_usr_dat_tx_a_0, SPDIF_USR_DAT_TX_A_0); -} #else static int spdif_get_apbif_channel(int fifo_mode) @@ -730,6 +686,9 @@ int spdif_set_acif(int fifo_mode, struct audio_cif *cifInfo) audio_switch_set_acif(spinfo->base + SPDIF_AUDIOCIF_RXDATA_CTRL_0, tx_audio_cif); + apbif_set_pack_mode(spdif_get_apbif_channel(fifo_mode), + fifo_mode, AUDIO_FIFO_PACK_16); + audio_apbif_set_acif(spdif_get_apbif_channel(fifo_mode), fifo_mode, tx_audio_cif); |