davinci-mcasp: fix _CBM_CFS pin directions

The current davinci_mcasp_set_dai_fmt() sets bits ACLKX and ACLKR in the PDIR
register for the codec clock-master/frame-slave mode; however, this results in
the ACLKX and ACLKR pins being outputs according to SPRUFM1 [1] which
conflicts with "codec is clock master."

Similarly to the previous patch in this series, "fix _CBM_CFS hw_params" --
For codec clock-master/frame-slave mode (_CMB_CFS), clear bits ACLKX and ACLKR
in the PDIR register to set the pins as inputs and hence allow externally
sourced bit-clocks.

[1] http://www.ti.com/litv/pdf/sprufm1

Signed-off-by: Ben Gardiner <bengardiner@nanometrics.ca>
Reviewed-by: James Nuss <jamesnuss@nanometrics.ca>
Acked-by: Liam Girdwood <lrg@ti.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

authored by Ben Gardiner and committed by Mark Brown db92f437 a90f549e

+3 -1
+3 -1
sound/soc/davinci/davinci-mcasp.c
··· 445 445 mcasp_clr_bits(base + DAVINCI_MCASP_ACLKRCTL_REG, ACLKRE); 446 446 mcasp_set_bits(base + DAVINCI_MCASP_RXFMCTL_REG, AFSRE); 447 447 448 + mcasp_clr_bits(base + DAVINCI_MCASP_PDIR_REG, 449 + ACLKX | ACLKR); 448 450 mcasp_set_bits(base + DAVINCI_MCASP_PDIR_REG, 449 - ACLKX | AFSX | ACLKR | AFSR); 451 + AFSX | AFSR); 450 452 break; 451 453 case SND_SOC_DAIFMT_CBM_CFM: 452 454 /* codec is clock and frame master */