This register enables the bclk output and only makes sense in codec slave mode (SoC drives the bit clock)
Signed-off-by: Pierre-Louis Bossart pierre-louis.bossart@linux.intel.com --- src/drivers/apl-ssp.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/src/drivers/apl-ssp.c b/src/drivers/apl-ssp.c index fd5905c..af0ad63 100644 --- a/src/drivers/apl-ssp.c +++ b/src/drivers/apl-ssp.c @@ -190,8 +190,8 @@ static inline int ssp_set_config(struct dai *dai, /* sspsp2 no dynamic setting */ sspsp2 = 0x0;
- /* ssioc dynamic setting is SFCR */ - ssioc = SSIOC_SCOE; + /* ssioc dynamic setting is SCOE, SFCR */ + ssioc = 0x0;
/* i2s_m M divider setting, default 1 */ i2s_m = 0x1; @@ -224,6 +224,7 @@ static inline int ssp_set_config(struct dai *dai, case SOF_DAI_FMT_CBS_CFS: sscr1 |= SSCR1_SCFR; ssioc |= SSIOC_SFCR; + ssioc |= SSIOC_SCOE; break; case SOF_DAI_FMT_CBM_CFS: sscr0 |= SSCR0_ECS; /* external clock used */ @@ -235,6 +236,7 @@ static inline int ssp_set_config(struct dai *dai, /* FIXME: this mode has not been tested */ break; case SOF_DAI_FMT_CBS_CFM: + ssioc |= SSIOC_SCOE; sscr1 |= SSCR1_SCFR; /* FIXME: this mode has not been tested */ break;