diff --git a/asoc/codecs/swr-dmic.c b/asoc/codecs/swr-dmic.c index df3105d8fa..1c8aac7ca8 100644 --- a/asoc/codecs/swr-dmic.c +++ b/asoc/codecs/swr-dmic.c @@ -37,6 +37,7 @@ static int swr_master_channel_map[] = { ZERO, + SWRM_TX_PCM_OUT, SWRM_TX1_CH1, SWRM_TX1_CH2, SWRM_TX1_CH3, @@ -49,7 +50,7 @@ static int swr_master_channel_map[] = { SWRM_TX3_CH2, SWRM_TX3_CH3, SWRM_TX3_CH4, - SWRM_PCM_IN, + SWRM_TX_PCM_IN, }; /* @@ -364,10 +365,10 @@ err_port_map: } static const char * const tx_master_port_text[] = { - "ZERO", "SWRM_TX1_CH1", "SWRM_TX1_CH2", "SWRM_TX1_CH3", "SWRM_TX1_CH4", - "SWRM_TX2_CH1", "SWRM_TX2_CH2", "SWRM_TX2_CH3", "SWRM_TX2_CH4", - "SWRM_TX3_CH1", "SWRM_TX3_CH2", "SWRM_TX3_CH3", "SWRM_TX3_CH4", - "SWRM_PCM_IN", + "ZERO", "SWRM_PCM_OUT", "SWRM_TX1_CH1", "SWRM_TX1_CH2", "SWRM_TX1_CH3", + "SWRM_TX1_CH4", "SWRM_TX2_CH1", "SWRM_TX2_CH2", "SWRM_TX2_CH3", + "SWRM_TX2_CH4", "SWRM_TX3_CH1", "SWRM_TX3_CH2", "SWRM_TX3_CH3", + "SWRM_TX3_CH4", "SWRM_PCM_IN", }; static const struct soc_enum tx_master_port_enum = diff --git a/asoc/codecs/wcd938x/wcd938x.c b/asoc/codecs/wcd938x/wcd938x.c index 3deffb3f5d..1f0c228fea 100644 --- a/asoc/codecs/wcd938x/wcd938x.c +++ b/asoc/codecs/wcd938x/wcd938x.c @@ -2886,10 +2886,10 @@ static int wcd938x_ldoh_put(struct snd_kcontrol *kcontrol, } const char * const tx_master_ch_text[] = { - "ZERO", "SWRM_TX1_CH1", "SWRM_TX1_CH2", "SWRM_TX1_CH3", "SWRM_TX1_CH4", - "SWRM_TX2_CH1", "SWRM_TX2_CH2", "SWRM_TX2_CH3", "SWRM_TX2_CH4", - "SWRM_TX3_CH1", "SWRM_TX3_CH2", "SWRM_TX3_CH3", "SWRM_TX3_CH4", - "SWRM_PCM_IN", + "ZERO", "SWRM_PCM_OUT", "SWRM_TX1_CH1", "SWRM_TX1_CH2", "SWRM_TX1_CH3", + "SWRM_TX1_CH4", "SWRM_TX2_CH1", "SWRM_TX2_CH2", "SWRM_TX2_CH3", + "SWRM_TX2_CH4", "SWRM_TX3_CH1", "SWRM_TX3_CH2", "SWRM_TX3_CH3", + "SWRM_TX3_CH4", "SWRM_PCM_IN", }; const struct soc_enum tx_master_ch_enum = diff --git a/asoc/codecs/wcd938x/wcd938x.h b/asoc/codecs/wcd938x/wcd938x.h index 69b148ab49..1c0c876b11 100644 --- a/asoc/codecs/wcd938x/wcd938x.h +++ b/asoc/codecs/wcd938x/wcd938x.h @@ -46,6 +46,7 @@ static const struct swr_slave_ch_map swr_slv_tx_ch_idx[] = { static int swr_master_ch_map[] = { ZERO, + SWRM_TX_PCM_OUT, SWRM_TX1_CH1, SWRM_TX1_CH2, SWRM_TX1_CH3, @@ -58,7 +59,7 @@ static int swr_master_ch_map[] = { SWRM_TX3_CH2, SWRM_TX3_CH3, SWRM_TX3_CH4, - SWRM_PCM_IN, + SWRM_TX_PCM_IN, }; #if IS_ENABLED(CONFIG_SND_SOC_WCD938X) diff --git a/asoc/kalama-port-config.h b/asoc/kalama-port-config.h index b1eeb28151..b9b6482cbe 100644 --- a/asoc/kalama-port-config.h +++ b/asoc/kalama-port-config.h @@ -17,53 +17,83 @@ */ static struct port_params wsa_frame_params_default[SWR_MSTR_PORT_LEN] = { - {7, 1, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00}, - {31, 2, 0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00}, - {63, 12, 31, 0xFF, 0xFF, 0xFF, 0x1, 0xFF, 0xFF, 0x00, 0x00}, - {7, 6, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00}, - {31, 18, 0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00}, - {63, 13, 31, 0xFF, 0xFF, 0xFF, 0x1, 0xFF, 0xFF, 0x00, 0x00}, - {15, 7, 0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00}, - {15, 10, 0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00}, + {7, 1, 0, 0, 0, 1, 0, 0, 0xFF, 0x00, 0x00}, /* SPKR1 */ + {31, 3, 7, 0, 0, 1, 1, 0, 0xFF, 0x00, 0x00}, /* CMP1 */ + {63, 5, 31, 0, 0, 1, 1, 0, 0xFF, 0x00, 0x00}, /* SB1 */ + {7, 2, 0, 0, 0, 1, 0, 0, 0xFF, 0x00, 0x00}, /* SPKR2 */ + {31, 4, 7, 0, 0, 1, 1, 0, 0xFF, 0x00, 0x00}, /* CMP2 */ + {63, 21, 31, 0, 0, 1, 1, 0, 0xFF, 0x00, 0x00}, /* SB2 */ + {399, 0, 0, 8, 0, 9, 0, 0, 0xFF, 0x00, 0x01}, /* PBR */ + {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00}, /* HAPT */ + {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x01}, /* OCPM */ + {15, 6, 0, 0, 15, 1, 1, 0, 0xFF, 0x01, 0x00}, /* IVS1 */ + {15, 13, 0, 0, 15, 1, 1, 0, 0xFF, 0x01, 0x00}, /* IVS2 */ + {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x01, 0x01}, /* ICPM */ + {799, 0, 0, 15, 15, 25, 0, 0, 0xFF, 0x01, 0x01}, /* CPS */ + }; static struct port_params wsa_frame_params_receiver[SWR_MSTR_PORT_LEN] = { - {3, 1, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00}, - {31, 2, 3, 0xFF, 0xFF, 0xFF, 0x1, 0xFF, 0xFF, 0x00, 0x00}, - {63, 7, 0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00}, - {3, 6, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00}, - {31, 18, 0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00}, - {63, 13, 31, 0xFF, 0xFF, 0xFF, 0x1, 0xFF, 0xFF, 0x00, 0x00}, - {15, 3, 0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00}, - {15, 10, 0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00}, + {3, 1, 0, 0, 0, 1, 0, 0, 0xFF, 0x00, 0x00}, /* SPKR1 */ + {31, 3, 7, 0, 0, 1, 1, 0, 0xFF, 0x00, 0x00}, /* CMP1 */ + {63, 5, 31, 0, 0, 1, 1, 0, 0xFF, 0x00, 0x00}, /* SB1 */ + {3, 2, 0, 0, 0, 1, 0, 0, 0xFF, 0x00, 0x00}, /* SPKR2 */ + {31, 4, 7, 0, 0, 1, 1, 0, 0xFF, 0x00, 0x00}, /* CMP2 */ + {63, 21, 31, 0, 0, 1, 1, 0, 0xFF, 0x00, 0x00}, /* SB2 */ + {399, 0, 0, 8, 0, 9, 0, 0, 0xFF, 0x00, 0x01}, /* PBR */ + {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00}, /* HAPT */ + {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x01}, /* OCPM */ + {15, 6, 0, 0, 15, 1, 1, 0, 0xFF, 0x01, 0x00}, /* IVS1 */ + {15, 13, 0, 0, 15, 1, 1, 0, 0xFF, 0x01, 0x00}, /* IVS2 */ + {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x01, 0x01}, /* ICPM */ + {799, 0, 0, 15, 15, 25, 0, 0, 0xFF, 0x01, 0x01}, /* CPS */ }; static struct port_params rx_frame_params_dsd[SWR_MSTR_PORT_LEN] = { - {3, 0, 0, 0xFF, 0xFF, 1, 0xFF, 0xFF, 1, 0x00, 0x00}, - {31, 0, 0, 3, 6, 7, 0, 0xFF, 0, 0x00, 0x02}, - {31, 11, 11, 0xFF, 0xFF, 4, 1, 0xFF, 0, 0x00, 0x02}, - {7, 9, 0, 0xFF, 0xFF, 0xFF, 0xFF, 1, 0, 0x00, 0x00}, - {3, 1, 0, 0xFF, 0xFF, 0xFF, 0xFF, 3, 0, 0x00, 0x00}, + {3, 0, 0, 0xFF, 0xFF, 1, 0xFF, 0xFF, 1, 0x00, 0x00}, /* HPH/EAR */ + {31, 0, 0, 3, 6, 7, 0, 0xFF, 0, 0x00, 0x02}, /* HPH_CLH */ + {31, 11, 11, 0xFF, 0xFF, 4, 1, 0xFF, 0, 0x00, 0x02}, /* HPH_CMP */ + {7, 9, 0, 0xFF, 0xFF, 0xFF, 0xFF, 1, 0, 0x00, 0x00}, /* LO/AUX */ + {3, 1, 0, 0xFF, 0xFF, 0xFF, 0xFF, 3, 0, 0x00, 0x00}, /* DSD */ + {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF}, /* GPPO */ + {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF}, /* HAPT */ + {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF}, /* HIFI */ + {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF}, /* HPHT */ + {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF}, /* CMPT */ + {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF}, /* IPCM */ }; /* Headset + PCM Haptics */ static struct port_params rx_frame_params_default[SWR_MSTR_PORT_LEN] = { - {3, 0, 0, 0xFF, 0xFF, 1, 0xFF, 0xFF, 1, 0x00, 0x00}, /* HPH/EAR */ - {31, 0, 0, 3, 6, 7, 0, 0xFF, 0, 0x00, 0x02}, /* HPH_CLH */ - {31, 11, 11, 0xFF, 0xFF, 4, 1, 0xFF, 0, 0x00, 0x02}, /* HPH_CMP */ - {7, 1, 0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0, 0x00, 0x00}, /* LO/AUX */ - {0, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF, 0, 0, 0x00, 0x00}, /* DSD */ - {0x18F, 0, 0, 0x8, 0x8, 0x0F, 0x00, 0, 0, 0x00, 0x01}, /* PCM_OUT */ + {3, 0, 0, 0xFF, 0xFF, 1, 0xFF, 0xFF, 1, 0x00, 0x00}, /* HPH/EAR */ + {31, 0, 0, 3, 6, 7, 0, 0xFF, 0, 0x00, 0x02}, /* HPH_CLH */ + {31, 11, 11, 0xFF, 0xFF, 4, 1, 0xFF, 0, 0x00, 0x02}, /* HPH_CMP */ + {7, 1, 0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0, 0x00, 0x00}, /* LO/AUX */ + {0, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF, 0, 0, 0x00, 0x00}, /* DSD */ + {0x18F, 0, 0, 0x8, 0x8, 0x0F, 0x00, 0, 0, 0x00, 0x01}, /* PCM_OUT */ + {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF}, /* GPPO */ + {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF}, /* HAPT */ + {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF}, /* HIFI */ + {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF}, /* HPHT */ + {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF}, /* CMPT */ + {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF}, /* IPCM */ + }; /* Headset(44.1K) + PCM Haptics */ static struct port_params rx_frame_params_44p1KHz[SWR_MSTR_PORT_LEN] = { - {3, 0, 0, 0xFF, 0xFF, 1, 0xFF, 0xFF, 1, 0x00, 0x00}, /* HPH/EAR */ - {63, 0, 0, 3, 6, 7, 0, 0xFF, 0, 0x00, 0x02}, /* HPH_CLH */ - {31, 11, 11, 0xFF, 0xFF, 4, 1, 0xFF, 0, 0x00, 0x02}, /* HPH_CMP */ - {3, 1, 0, 0xFF, 0xFF, 0xFF, 0xFF, 0x01, 0, 0x00, 0x00}, /* LO/AUX */ - {0, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF, 0, 0, 0x00, 0x00}, /* DSD */ - {0x1FF, 0, 0, 0x8, 0x8, 0x0F, 0, 0, 0, 0x00, 0x01}, /* PCM_OUT */ + {3, 0, 0, 0xFF, 0xFF, 1, 0xFF, 0xFF, 1, 0x00, 0x00}, /* HPH/EAR */ + {63, 0, 0, 3, 6, 7, 0, 0xFF, 0, 0x00, 0x02}, /* HPH_CLH */ + {31, 11, 11, 0xFF, 0xFF, 4, 1, 0xFF, 0, 0x00, 0x02}, /* HPH_CMP */ + {3, 1, 0, 0xFF, 0xFF, 0xFF, 0xFF, 0x01, 0, 0x00, 0x00}, /* LO/AUX */ + {0, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF, 0, 0, 0x00, 0x00}, /* DSD */ + {0x1FF, 0, 0, 0x8, 0x8, 0x0F, 0, 0, 0, 0x00, 0x01}, /* PCM_OUT */ + {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF}, /* GPPO */ + {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF}, /* HAPT */ + {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF}, /* HIFI */ + {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF}, /* HPHT */ + {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF}, /* CMPT */ + {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF}, /* IPCM */ }; static struct swr_mstr_port_map sm_port_map[] = { diff --git a/asoc/kalama.c b/asoc/kalama.c index 58b04f6210..fce5bf85ac 100644 --- a/asoc/kalama.c +++ b/asoc/kalama.c @@ -1439,15 +1439,16 @@ static struct snd_soc_card *populate_snd_card_dailinks(struct device *dev, int w static int msm_int_wsa_init(struct snd_soc_pcm_runtime *rtd) { - u8 spkleft_ports[WSA884X_MAX_SWR_PORTS] = {0, 1, 2, 3}; - u8 spkright_ports[WSA884X_MAX_SWR_PORTS] = {0, 1, 2, 3}; + u8 spkleft_ports[WSA884X_MAX_SWR_PORTS] = {0, 1, 2, 3, 4, 5}; + u8 spkright_ports[WSA884X_MAX_SWR_PORTS] = {0, 1, 2, 3, 4, 5}; u8 spkleft_port_types[WSA884X_MAX_SWR_PORTS] = {SPKR_L, SPKR_L_COMP, - SPKR_L_BOOST, SPKR_L_VI}; + SPKR_L_BOOST, PBR, SPKR_L_VI, CPS}; u8 spkright_port_types[WSA884X_MAX_SWR_PORTS] = {SPKR_R, SPKR_R_COMP, - SPKR_R_BOOST, SPKR_R_VI}; + SPKR_R_BOOST, PBR, SPKR_R_VI, CPS}; unsigned int ch_rate[WSA884X_MAX_SWR_PORTS] = {SWR_CLK_RATE_2P4MHZ, SWR_CLK_RATE_0P6MHZ, - SWR_CLK_RATE_0P3MHZ, SWR_CLK_RATE_1P2MHZ}; - unsigned int ch_mask[WSA884X_MAX_SWR_PORTS] = {0x1, 0xF, 0x3, 0x3}; + SWR_CLK_RATE_0P3MHZ, SWR_CLK_RATE_48KHZ, + SWR_CLK_RATE_1P2MHZ, SWR_CLK_RATE_24KHZ}; + unsigned int ch_mask[WSA884X_MAX_SWR_PORTS] = {0x1, 0xF, 0x3, 0x3, 0x3, 0x3}; struct snd_soc_component *component = NULL; diff --git a/include/bindings/audio-codec-port-types.h b/include/bindings/audio-codec-port-types.h index 4e04ba8a8b..3a24aebd24 100644 --- a/include/bindings/audio-codec-port-types.h +++ b/include/bindings/audio-codec-port-types.h @@ -28,48 +28,60 @@ #define SPKR_L 1 #define SPKR_L_COMP 2 #define SPKR_L_BOOST 3 -#define SPKR_L_VI 4 -#define SPKR_R 5 -#define SPKR_R_COMP 6 -#define SPKR_R_BOOST 7 -#define SPKR_R_VI 8 -#define HPH_L 9 -#define HPH_R 10 -#define COMP_L 11 -#define COMP_R 12 -#define CLSH 13 -#define LO 14 -#define DSD_L 15 -#define DSD_R 16 -#define MBHC 17 -#define ADC1 18 -#define ADC2 19 -#define ADC3 20 -#define ADC4 21 -#define DMIC0 22 -#define DMIC1 23 -#define DMIC2 24 -#define DMIC3 25 -#define DMIC4 26 -#define DMIC5 27 -#define DMIC6 28 -#define DMIC7 29 -#define DMIC8 30 -#define DMIC9 31 -#define DMIC10 32 -#define PCM_OUT1 33 -#define SWRM_TX1_CH1 34 -#define SWRM_TX1_CH2 35 -#define SWRM_TX1_CH3 36 -#define SWRM_TX1_CH4 37 -#define SWRM_TX2_CH1 38 -#define SWRM_TX2_CH2 39 -#define SWRM_TX2_CH3 40 -#define SWRM_TX2_CH4 41 -#define SWRM_TX3_CH1 42 -#define SWRM_TX3_CH2 43 -#define SWRM_TX3_CH3 44 -#define SWRM_TX3_CH4 45 -#define SWRM_PCM_IN 46 +#define SPKR_R 4 +#define SPKR_R_COMP 5 +#define SPKR_R_BOOST 6 +#define PBR 7 +#define SPKR_HAPT 8 +#define OCPM 9 +#define SPKR_L_VI 10 +#define SPKR_R_VI 11 +#define SPKR_IPCM 12 +#define CPS 13 +#define HPH_L 14 +#define HPH_R 15 +#define COMP_L 16 +#define COMP_R 17 +#define CLSH 18 +#define LO 19 +#define DSD_L 20 +#define DSD_R 21 +#define PCM_OUT1 22 +#define GPPO 23 +#define HAPT 24 +#define HIFI 25 +#define HPTH 26 +#define CMPT 27 +#define IPCM 28 +#define MBHC 29 +#define ADC1 30 +#define ADC2 31 +#define ADC3 32 +#define ADC4 33 +#define DMIC0 34 +#define DMIC1 35 +#define DMIC2 36 +#define DMIC3 37 +#define DMIC4 38 +#define DMIC5 39 +#define DMIC6 40 +#define DMIC7 41 +#define DMIC8 42 +#define DMIC9 43 +#define DMIC10 44 +#define SWRM_TX_PCM_OUT 45 +#define SWRM_TX1_CH1 46 +#define SWRM_TX1_CH2 47 +#define SWRM_TX1_CH3 48 +#define SWRM_TX1_CH4 49 +#define SWRM_TX2_CH1 50 +#define SWRM_TX2_CH2 51 +#define SWRM_TX2_CH3 52 +#define SWRM_TX2_CH4 53 +#define SWRM_TX3_CH1 54 +#define SWRM_TX3_CH2 55 +#define SWRM_TX3_CH3 56 +#define SWRM_TX3_CH4 57 +#define SWRM_TX_PCM_IN 58 #endif /* __AUDIO_CODEC_PORT_TYPES_H */ diff --git a/include/soc/soundwire.h b/include/soc/soundwire.h index bde88ddcee..3963afa0b3 100644 --- a/include/soc/soundwire.h +++ b/include/soc/soundwire.h @@ -1,6 +1,6 @@ /* SPDX-License-Identifier: GPL-2.0-only */ /* - * Copyright (c) 2015-2020, The Linux Foundation. All rights reserved. + * Copyright (c) 2015-2021, The Linux Foundation. All rights reserved. */ #ifndef _LINUX_SOUNDWIRE_H @@ -19,6 +19,8 @@ enum { SWR_UC_MAX, }; +#define SWR_CLK_RATE_24KHZ 24000 +#define SWR_CLK_RATE_48KHZ 48000 #define SWR_CLK_RATE_0P3MHZ 300000 #define SWR_CLK_RATE_0P6MHZ 600000 #define SWR_CLK_RATE_1P2MHZ 1200000 diff --git a/include/soc/swr-common.h b/include/soc/swr-common.h index 56723979e9..b8c3602455 100755 --- a/include/soc/swr-common.h +++ b/include/soc/swr-common.h @@ -1,6 +1,6 @@ /* SPDX-License-Identifier: GPL-2.0-only */ /* - * Copyright (c) 2015, 2017-2020 The Linux Foundation. All rights reserved. + * Copyright (c) 2015, 2017-2021 The Linux Foundation. All rights reserved. */ #ifndef _LINUX_SWR_COMMON_H @@ -36,6 +36,6 @@ struct swr_mstr_port_map { struct port_params *swr_port_params; }; -#define SWR_MSTR_PORT_LEN 8 /* Number of master ports */ +#define SWR_MSTR_PORT_LEN 13 /* Number of master ports */ #endif /* _LINUX_SWR_COMMON_H */ diff --git a/soc/swr-mstr-ctrl.h b/soc/swr-mstr-ctrl.h index 8a17a6d379..beec09bfbd 100644 --- a/soc/swr-mstr-ctrl.h +++ b/soc/swr-mstr-ctrl.h @@ -15,7 +15,7 @@ #include #include -#define SWR_MSTR_MAX_REG_ADDR 0x6B160A8 +#define SWR_MSTR_MAX_REG_ADDR 0x60A8 #define SWR_MSTR_START_REG_ADDR 0x00 #define SWR_MSTR_MAX_BUF_LEN 32 #define BYTES_PER_LINE 12 @@ -32,7 +32,7 @@ #define SWR_WCD_NAME "swr-wcd" -#define SWR_MSTR_PORT_LEN 8 /* Number of master ports */ +#define SWR_MSTR_PORT_LEN 13 /* Number of master ports */ #define SWRM_VERSION_1_0 0x01010000 #define SWRM_VERSION_1_2 0x01030000