[Sound-open-firmware] [PATCH] cnl: ssp: fix DSP_B setting in ssp
Pierre-Louis Bossart
pierre-louis.bossart at linux.intel.com
Thu Mar 8 03:13:46 CET 2018
On 3/7/18 7:43 PM, rander.wang wrote:
> Hi Pierre,
>
> On 3/7/2018 10:01 PM, Pierre-Louis Bossart wrote:
>> On 3/6/18 10:31 PM, Rander Wang wrote:
>>> set ssp according to DSP_B spec
>>>
>>> Signed-off-by: Rander Wang <rander.wang at linux.intel.com>
>>> ---
>>> src/drivers/apl-ssp.c | 5 +++--
>>> 1 file changed, 3 insertions(+), 2 deletions(-)
>>>
>>> diff --git a/src/drivers/apl-ssp.c b/src/drivers/apl-ssp.c
>>> index a726f3c..c32bd35 100644
>>> --- a/src/drivers/apl-ssp.c
>>> +++ b/src/drivers/apl-ssp.c
>>> @@ -333,10 +333,11 @@ static inline int ssp_set_config(struct dai *dai,
>>> sscr0 |= SSCR0_MOD | SSCR0_FRDC(config->num_slots);
>>> /* set asserted frame length */
>>> - frame_len = config->sample_container_bits;
>>> + frame_len = 1;
>>
>> this needs to be done for DSP_B as well.
>
> you mean DSP_A ? yes, this patch is for DSP_B, next DSP_A will be
> validated
yes
>
>>
>>> /* handle frame polarity, DSP_A default is rising/active
>>> high */
>>> - sspsp |= SSPSP_SFRMP(inverted_frame);
>>> + sspsp |= SSPSP_SFRMP(!inverted_frame);
>>
>> I don't think this is correct. the documentation says with this bit
>> asserted (value=1) the frame is active high which is exactly what we
>> want.
>>
> No, the frame active low is what we want according to the ASOC
> spec. Data is sent when active low, frame sync is at active high.
Look at the diagrams I shared offline, this is not what you are
describing. We want the frame sync to be indicated by a low->high
transition (rising edge) immediately following a falling edge of the bit
clock.
>
> And without this modification, the frame sync clock is rotated 180
> compared to spec. And it is validated by Zhigang on APL and
>
> also it is set by COE
>
>>
>>> + sspsp |= SSPSP_FSRT;
>>
>> why is this necessary? this disables a fix for dummy stop/padding.
> it is get from COE setting.
that's not an explanation, sorry.
>>
>>> break;
>>> default:
>>>
>>
More information about the Sound-open-firmware
mailing list