diff mbox

[5/9] ASoC: Intel: Skylake: Update for ssp node index in copier cfg

Message ID 1445536362-26670-6-git-send-email-vinod.koul@intel.com (mailing list archive)
State Accepted
Commit d7b188131c4823a85d17b992083bf8a8c32a2be3
Headers show

Commit Message

Vinod Koul Oct. 22, 2015, 5:52 p.m. UTC
From: Jeeja KP <jeeja.kp@intel.com>

DSP firmware has interface change for SSP node index structure.
New FW interface removes the dual_mono field and adds 4 bits for
TDM slot group index. This patch updates the ssp dma to align with
the DSP firmware structure.

Signed-off-by: Jeeja KP <jeeja.kp@intel.com>
Signed-off-by: Vinod Koul <vinod.koul@intel.com>
---
 sound/soc/intel/skylake/skl-messages.c | 7 ++++---
 sound/soc/intel/skylake/skl-topology.h | 3 +--
 2 files changed, 5 insertions(+), 5 deletions(-)

Comments

Mark Brown Oct. 23, 2015, 4:30 p.m. UTC | #1
On Thu, Oct 22, 2015 at 11:22:38PM +0530, Vinod Koul wrote:
> From: Jeeja KP <jeeja.kp@intel.com>
> 
> DSP firmware has interface change for SSP node index structure.
> New FW interface removes the dual_mono field and adds 4 bits for
> TDM slot group index. This patch updates the ssp dma to align with
> the DSP firmware structure.

This probably doesn't matter right now since things haven't been
released yet but it's going to become an ABI issue...
Vinod Koul Oct. 24, 2015, 11:56 a.m. UTC | #2
On Sat, Oct 24, 2015 at 01:30:52AM +0900, Mark Brown wrote:
> On Thu, Oct 22, 2015 at 11:22:38PM +0530, Vinod Koul wrote:
> > From: Jeeja KP <jeeja.kp@intel.com>
> > 
> > DSP firmware has interface change for SSP node index structure.
> > New FW interface removes the dual_mono field and adds 4 bits for
> > TDM slot group index. This patch updates the ssp dma to align with
> > the DSP firmware structure.
> 
> This probably doesn't matter right now since things haven't been
> released yet but it's going to become an ABI issue...

Yes, I am trying to ensure after this cycle is done we dont have any more
interface changes..
diff mbox

Patch

diff --git a/sound/soc/intel/skylake/skl-messages.c b/sound/soc/intel/skylake/skl-messages.c
index 826d4fd8930a..77c0736d3c9e 100644
--- a/sound/soc/intel/skylake/skl-messages.c
+++ b/sound/soc/intel/skylake/skl-messages.c
@@ -303,6 +303,7 @@  static void skl_setup_cpr_gateway_cfg(struct skl_sst *ctx,
 			struct skl_cpr_cfg *cpr_mconfig)
 {
 	union skl_connector_node_id node_id = {0};
+	union skl_ssp_dma_node ssp_node  = {0};
 	struct skl_pipe_params *params = mconfig->pipe->p_params;
 
 	switch (mconfig->dev_type) {
@@ -320,9 +321,9 @@  static void skl_setup_cpr_gateway_cfg(struct skl_sst *ctx,
 			(SKL_CONN_SOURCE == mconfig->hw_conn_type) ?
 			SKL_DMA_I2S_LINK_OUTPUT_CLASS :
 			SKL_DMA_I2S_LINK_INPUT_CLASS;
-		node_id.node.vindex = params->host_dma_id +
-					 (mconfig->time_slot << 1) +
-					 (mconfig->vbus_id << 3);
+		ssp_node.dma_node.time_slot_index = mconfig->time_slot;
+		ssp_node.dma_node.i2s_instance = mconfig->vbus_id;
+		node_id.node.vindex = ssp_node.val;
 		break;
 
 	case SKL_DEVICE_DMIC:
diff --git a/sound/soc/intel/skylake/skl-topology.h b/sound/soc/intel/skylake/skl-topology.h
index 0c83dc3ea3e2..2399535a196a 100644
--- a/sound/soc/intel/skylake/skl-topology.h
+++ b/sound/soc/intel/skylake/skl-topology.h
@@ -153,8 +153,7 @@  enum skl_dma_type {
 union skl_ssp_dma_node {
 	u8 val;
 	struct {
-		u8 dual_mono:1;
-		u8 time_slot:3;
+		u8 time_slot_index:4;
 		u8 i2s_instance:4;
 	} dma_node;
 };