Loading asoc/bengal-port-config.h +15 −1 Original line number Diff line number Diff line /* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (c) 2018-2019, The Linux Foundation. All rights reserved. * Copyright (c) 2018-2020, The Linux Foundation. All rights reserved. */ #ifndef _BENGAL_PORT_CONFIG Loading @@ -21,6 +21,15 @@ static struct port_params rx_frame_params_default[SWR_MSTR_PORT_LEN] = { {0, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF, 0, 0}, }; static struct port_params rx_frame_params_rouleur[SWR_MSTR_PORT_LEN] = { {3, 0, 0, 0xFF, 0xFF, 1, 0xFF, 0xFF, 1}, {31, 0, 0, 3, 6, 7, 0, 0xFF, 0}, {31, 1, 0, 0xFF, 0xFF, 4, 1, 0xFF, 0}, {7, 1, 0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0}, {0, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF, 0, 0}, }; static struct port_params rx_frame_params_dsd[SWR_MSTR_PORT_LEN] = { {3, 0, 0, 0xFF, 0xFF, 1, 0xFF, 0xFF, 1}, {31, 0, 0, 3, 6, 7, 0, 0xFF, 0}, Loading @@ -42,4 +51,9 @@ static struct swr_mstr_port_map sm_port_map[] = { {RX_MACRO, SWR_UC1, rx_frame_params_dsd}, }; static struct swr_mstr_port_map sm_port_map_rouleur[] = { {VA_MACRO, SWR_UC0, tx_frame_params_default}, {RX_MACRO, SWR_UC0, rx_frame_params_rouleur}, {RX_MACRO, SWR_UC1, rx_frame_params_dsd}, }; #endif /* _BENGAL_PORT_CONFIG */ asoc/bengal.c +35 −2 Original line number Diff line number Diff line Loading @@ -4259,6 +4259,9 @@ static int msm_int_audrx_init(struct snd_soc_pcm_runtime *rtd) struct snd_soc_dapm_context *dapm; struct snd_card *card; struct snd_info_entry *entry; struct platform_device *pdev = NULL; int i = 0; char *data = NULL; struct msm_asoc_mach_data *pdata = snd_soc_card_get_drvdata(rtd->card); Loading Loading @@ -4305,8 +4308,38 @@ static int msm_int_audrx_init(struct snd_soc_pcm_runtime *rtd) snd_soc_dapm_sync(dapm); bolero_set_port_map(component, ARRAY_SIZE(sm_port_map), for (i = 0; i < rtd->card->num_aux_devs; i++) { if (msm_aux_dev[i].name != NULL ) { if (strstr(msm_aux_dev[i].name, "wsa")) continue; } if (msm_aux_dev[i].codec_of_node) { pdev = of_find_device_by_node( msm_aux_dev[i].codec_of_node); if (pdev) data = (char*) of_device_get_match_data( &pdev->dev); if (data != NULL) { if (!strncmp(data, "wcd937x", sizeof("wcd937x"))) { bolero_set_port_map(component, ARRAY_SIZE(sm_port_map), sm_port_map); break; } else if (!strncmp( data, "rouleur", sizeof("rouleur"))) { bolero_set_port_map(component, ARRAY_SIZE(sm_port_map_rouleur), sm_port_map_rouleur); break; } } } } card = rtd->card->snd_card; if (!pdata->codec_root) { entry = snd_info_create_subdir(card->module, "codecs", Loading Loading
asoc/bengal-port-config.h +15 −1 Original line number Diff line number Diff line /* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (c) 2018-2019, The Linux Foundation. All rights reserved. * Copyright (c) 2018-2020, The Linux Foundation. All rights reserved. */ #ifndef _BENGAL_PORT_CONFIG Loading @@ -21,6 +21,15 @@ static struct port_params rx_frame_params_default[SWR_MSTR_PORT_LEN] = { {0, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF, 0, 0}, }; static struct port_params rx_frame_params_rouleur[SWR_MSTR_PORT_LEN] = { {3, 0, 0, 0xFF, 0xFF, 1, 0xFF, 0xFF, 1}, {31, 0, 0, 3, 6, 7, 0, 0xFF, 0}, {31, 1, 0, 0xFF, 0xFF, 4, 1, 0xFF, 0}, {7, 1, 0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0}, {0, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF, 0, 0}, }; static struct port_params rx_frame_params_dsd[SWR_MSTR_PORT_LEN] = { {3, 0, 0, 0xFF, 0xFF, 1, 0xFF, 0xFF, 1}, {31, 0, 0, 3, 6, 7, 0, 0xFF, 0}, Loading @@ -42,4 +51,9 @@ static struct swr_mstr_port_map sm_port_map[] = { {RX_MACRO, SWR_UC1, rx_frame_params_dsd}, }; static struct swr_mstr_port_map sm_port_map_rouleur[] = { {VA_MACRO, SWR_UC0, tx_frame_params_default}, {RX_MACRO, SWR_UC0, rx_frame_params_rouleur}, {RX_MACRO, SWR_UC1, rx_frame_params_dsd}, }; #endif /* _BENGAL_PORT_CONFIG */
asoc/bengal.c +35 −2 Original line number Diff line number Diff line Loading @@ -4259,6 +4259,9 @@ static int msm_int_audrx_init(struct snd_soc_pcm_runtime *rtd) struct snd_soc_dapm_context *dapm; struct snd_card *card; struct snd_info_entry *entry; struct platform_device *pdev = NULL; int i = 0; char *data = NULL; struct msm_asoc_mach_data *pdata = snd_soc_card_get_drvdata(rtd->card); Loading Loading @@ -4305,8 +4308,38 @@ static int msm_int_audrx_init(struct snd_soc_pcm_runtime *rtd) snd_soc_dapm_sync(dapm); bolero_set_port_map(component, ARRAY_SIZE(sm_port_map), for (i = 0; i < rtd->card->num_aux_devs; i++) { if (msm_aux_dev[i].name != NULL ) { if (strstr(msm_aux_dev[i].name, "wsa")) continue; } if (msm_aux_dev[i].codec_of_node) { pdev = of_find_device_by_node( msm_aux_dev[i].codec_of_node); if (pdev) data = (char*) of_device_get_match_data( &pdev->dev); if (data != NULL) { if (!strncmp(data, "wcd937x", sizeof("wcd937x"))) { bolero_set_port_map(component, ARRAY_SIZE(sm_port_map), sm_port_map); break; } else if (!strncmp( data, "rouleur", sizeof("rouleur"))) { bolero_set_port_map(component, ARRAY_SIZE(sm_port_map_rouleur), sm_port_map_rouleur); break; } } } } card = rtd->card->snd_card; if (!pdata->codec_root) { entry = snd_info_create_subdir(card->module, "codecs", Loading