soundwire: Update soundwire driver to support btfmcodec

This change add supports in both btfmcodec and soundwire
to support btfmcodec driver has interface.

Change-Id: I2e77afaea44778147b362175aae33961dcc5042e
Signed-off-by: Balakrishna Godavarthi <quic_bgodavar@quicinc.com>
This commit is contained in:
Balakrishna Godavarthi
2023-07-05 11:55:04 +05:30
parent 7bd1a061bb
commit 897ecff742
14 changed files with 717 additions and 402 deletions

View File

@@ -18,6 +18,7 @@
* responsible to configure master.
*/
#define BTADV_AUDIO_MASTER_CONFIG 0
#define BTADV_CONFIGURE_DMA 1
#define DEVICE_NAME_MAX_LEN 64
struct hwep_configurations {
@@ -41,6 +42,18 @@ struct master_hwep_configurations {
uint8_t codectype;
uint16_t direction;
};
struct hwep_dma_configurations {
uint8_t stream_id;
uint32_t sample_rate;
uint8_t bit_width;
uint8_t num_channels;
uint8_t codectype;
uint8_t lpaif; // Low power audio interface
uint8_t inf_index; // interface index
uint8_t active_channel_mask;
};
struct hwep_comp_drv {
int (*hwep_probe) (struct snd_soc_component *);
void (*hwep_remove) (struct snd_soc_component *);
@@ -58,8 +71,7 @@ struct hwep_dai_ops {
unsigned int, unsigned int *);
int (*hwep_get_channel_map)(void *, unsigned int *, unsigned int *,
unsigned int *, unsigned int *, int);
int (*hwep_get_configs)(void *, struct master_hwep_configurations *,
uint8_t);
int (*hwep_get_configs)(void *a, void *b, uint8_t c);
uint8_t *hwep_codectype;
};