[Sound-open-firmware] [RFC PATCH 6/6] apl-ssp: fix SSCR1_SFRMDIR
Pierre-Louis Bossart
pierre-louis.bossart at linux.intel.com
Wed Jul 18 04:24:31 CEST 2018
This bitfield indicates the codec is frame master (CFM), set it as
needed. The existing code could only deal with the SoC frame master
(CFS)
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart at linux.intel.com>
---
src/drivers/apl-ssp.c | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/src/drivers/apl-ssp.c b/src/drivers/apl-ssp.c
index fdd40bd..c9f8a7c 100644
--- a/src/drivers/apl-ssp.c
+++ b/src/drivers/apl-ssp.c
@@ -206,13 +206,11 @@ static inline int ssp_set_config(struct dai *dai,
/* ssrsa dynamic setting is RTSA, default 2 slots */
ssrsa = config->ssp.rx_slots;
- /* clock masters */
- sscr1 &= ~SSCR1_SFRMDIR;
-
trace_value(config->format);
switch (config->format & SOF_DAI_FMT_MASTER_MASK) {
case SOF_DAI_FMT_CBM_CFM:
sscr1 |= SSCR1_SCLKDIR;
+ sscr1 |= SSCR1_SFRMDIR;
/*
* FIXME: does SSRC1.SCFR need to be set
* when codec is master ?
@@ -231,6 +229,7 @@ static inline int ssp_set_config(struct dai *dai,
break;
case SOF_DAI_FMT_CBS_CFM:
ssioc |= SSIOC_SCOE;
+ sscr1 |= SSCR1_SFRMDIR;
/* FIXME: this mode has not been tested */
break;
default:
--
2.14.1
More information about the Sound-open-firmware
mailing list