@@ -137,7 +137,7 @@ static inline int ssp_set_config(struct dai *dai,
137137 uint32_t i2s_m ;
138138 uint32_t i2s_n ;
139139 uint32_t data_size ;
140- uint32_t start_delay ;
140+ uint32_t start_delay = 0 ;
141141 uint32_t frame_end_padding ;
142142 uint32_t slot_end_padding ;
143143 uint32_t frame_len = 0 ;
@@ -536,45 +536,14 @@ static inline int ssp_set_config(struct dai *dai,
536536 break ;
537537 case SOF_DAI_FMT_DSP_A :
538538
539- start_delay = 0 ;
540-
541- sscr0 |= SSCR0_MOD | SSCR0_FRDC (config -> ssp .tdm_slots );
542-
543- /* set asserted frame length */
544- frame_len = 1 ; /* default */
545-
546- if (cfs && ssp -> params .frame_pulse_width > 0 &&
547- ssp -> params .frame_pulse_width <=
548- SOF_DAI_INTEL_SSP_FRAME_PULSE_WIDTH_MAX ) {
549- frame_len = ssp -> params .frame_pulse_width ;
550- }
551-
552- /* frame_pulse_width must less or equal 38 */
553- if (ssp -> params .frame_pulse_width >
554- SOF_DAI_INTEL_SSP_FRAME_PULSE_WIDTH_MAX ) {
555- trace_ssp_error ("efa" );
556- ret = - EINVAL ;
557- goto out ;
558- }
559-
560- /*
561- * handle frame polarity, DSP_A default is rising/active high,
562- * non-inverted(inverted_frame=0) -- active high(SFRMP=1),
563- * inverted(inverted_frame=1) -- falling/active low(SFRMP=0),
564- * so, we should set SFRMP to !inverted_frame.
565- */
566- sspsp |= SSPSP_SFRMP (!inverted_frame );
539+ start_delay = 1 ;
567540 sspsp |= SSPSP_FSRT ;
568541
569- active_tx_slots = hweight_32 (config -> ssp .tx_slots );
570- active_rx_slots = hweight_32 (config -> ssp .rx_slots );
571-
572- sspsp2 |= (frame_end_padding & SSPSP2_FEP_MASK );
542+ /* fallthrough */
573543
574- break ;
575544 case SOF_DAI_FMT_DSP_B :
576545
577- start_delay = 0 ;
546+ /* default start_delay value is set to 0 */
578547
579548 sscr0 |= SSCR0_MOD | SSCR0_FRDC (config -> ssp .tdm_slots );
580549
0 commit comments