@@ -1937,9 +1937,7 @@ static int dai_ssp_parse_tlv(struct dai_intel_ssp *dp, const uint8_t *aux_ptr, s
1937
1937
struct ssp_intel_ext_ctl * ext ;
1938
1938
#if SSP_IP_VER >= SSP_IP_VER_1_5
1939
1939
struct ssp_intel_link_ctl * link ;
1940
- #if SSP_IP_VER > SSP_IP_VER_1_5
1941
1940
struct dai_intel_ssp_plat_data * ssp = dai_get_plat_data (dp );
1942
- #endif
1943
1941
#endif
1944
1942
1945
1943
for (i = 0 ; i < aux_len ; i += hop ) {
@@ -1987,13 +1985,13 @@ static int dai_ssp_parse_tlv(struct dai_intel_ssp *dp, const uint8_t *aux_ptr, s
1987
1985
case SSP_LINK_CLK_SOURCE :
1988
1986
#if SSP_IP_VER >= SSP_IP_VER_1_5
1989
1987
link = (struct ssp_intel_link_ctl * )& aux_tlv -> val ;
1988
+ ssp -> link_clock = link -> clock_source ;
1990
1989
#if SSP_IP_VER < SSP_IP_VER_2_0
1991
1990
sys_write32 ((sys_read32 (dai_ip_base (dp ) + I2SLCTL_OFFSET ) &
1992
1991
~I2CLCTL_MLCS (0x7 )) |
1993
1992
I2CLCTL_MLCS (link -> clock_source ), dai_ip_base (dp ) +
1994
1993
I2SLCTL_OFFSET );
1995
1994
#elif SSP_IP_VER > SSP_IP_VER_1_5
1996
- ssp -> link_clock = link -> clock_source ;
1997
1995
sys_write32 ((sys_read32 (dai_i2svss_base (dp ) + I2SLCTL_OFFSET ) &
1998
1996
~I2CLCTL_MLCS (0x7 )) |
1999
1997
I2CLCTL_MLCS (link -> clock_source ),
@@ -2563,6 +2561,11 @@ static void ssp_acquire_ip(struct dai_intel_ssp *dp)
2563
2561
~I2CLCTL_MLCS (0x7 )) |
2564
2562
I2CLCTL_MLCS (ssp -> link_clock ),
2565
2563
dai_i2svss_base (dp ) + I2SLCTL_OFFSET );
2564
+ #elif SSP_IP_VER == SSP_IP_VER_1_5
2565
+ sys_write32 ((sys_read32 (dai_ip_base (dp ) + I2SLCTL_OFFSET ) &
2566
+ ~I2CLCTL_MLCS (0x7 )) |
2567
+ I2CLCTL_MLCS (ssp -> link_clock ), dai_ip_base (dp ) +
2568
+ I2SLCTL_OFFSET );
2566
2569
#endif
2567
2570
}
2568
2571
}
@@ -2595,6 +2598,11 @@ static void ssp_release_ip(struct dai_intel_ssp *dp)
2595
2598
~I2CLCTL_MLCS (0x7 )) |
2596
2599
I2CLCTL_MLCS (DAI_INTEL_SSP_CLOCK_XTAL_OSCILLATOR ),
2597
2600
dai_i2svss_base (dp ) + I2SLCTL_OFFSET );
2601
+ #elif SSP_IP_VER == SSP_IP_VER_1_5
2602
+ sys_write32 ((sys_read32 (dai_ip_base (dp ) + I2SLCTL_OFFSET ) &
2603
+ ~I2CLCTL_MLCS (0x7 )) |
2604
+ I2CLCTL_MLCS (DAI_INTEL_SSP_CLOCK_XTAL_OSCILLATOR ),
2605
+ dai_ip_base (dp ) + I2SLCTL_OFFSET );
2598
2606
#endif
2599
2607
2600
2608
dai_ssp_pm_runtime_en_ssp_clk_gating (dp , ssp -> ssp_index );
0 commit comments