Loading arch/x86/include/asm/platform_sst_audio.h +1 −0 Original line number Original line Diff line number Diff line Loading @@ -55,6 +55,7 @@ enum sst_audio_device_id_mrfld { PIPE_MEDIA0_IN = 0x8F, PIPE_MEDIA0_IN = 0x8F, PIPE_MEDIA1_IN = 0x90, PIPE_MEDIA1_IN = 0x90, PIPE_MEDIA2_IN = 0x91, PIPE_MEDIA2_IN = 0x91, PIPE_MEDIA3_IN = 0x9C, PIPE_RSVD = 0xFF, PIPE_RSVD = 0xFF, }; }; Loading include/sound/hda_register.h +9 −0 Original line number Original line Diff line number Diff line Loading @@ -233,6 +233,15 @@ enum { SDI0, SDI1, SDI2, SDI3, SDO0, SDO1, SDO2, SDO3 }; #define AZX_MLCTL_SPA (1<<16) #define AZX_MLCTL_SPA (1<<16) #define AZX_MLCTL_CPA 23 #define AZX_MLCTL_CPA 23 /* registers for DMA Resume Capability Structure */ #define AZX_DRSM_CAP_ID 0x5 #define AZX_REG_DRSM_CTL 0x4 /* Base used to calculate the iterating register offset */ #define AZX_DRSM_BASE 0x08 /* Interval used to calculate the iterating register offset */ #define AZX_DRSM_INTERVAL 0x08 /* /* * helpers to read the stream position * helpers to read the stream position */ */ Loading include/sound/hdaudio_ext.h +21 −0 Original line number Original line Diff line number Diff line Loading @@ -12,6 +12,7 @@ * @spbcap: SPIB capabilities pointer * @spbcap: SPIB capabilities pointer * @mlcap: MultiLink capabilities pointer * @mlcap: MultiLink capabilities pointer * @gtscap: gts capabilities pointer * @gtscap: gts capabilities pointer * @drsmcap: dma resume capabilities pointer * @hlink_list: link list of HDA links * @hlink_list: link list of HDA links */ */ struct hdac_ext_bus { struct hdac_ext_bus { Loading @@ -23,6 +24,7 @@ struct hdac_ext_bus { void __iomem *spbcap; void __iomem *spbcap; void __iomem *mlcap; void __iomem *mlcap; void __iomem *gtscap; void __iomem *gtscap; void __iomem *drsmcap; struct list_head hlink_list; struct list_head hlink_list; }; }; Loading Loading @@ -72,6 +74,9 @@ enum hdac_ext_stream_type { * @pplc_addr: processing pipe link stream pointer * @pplc_addr: processing pipe link stream pointer * @spib_addr: software position in buffers stream pointer * @spib_addr: software position in buffers stream pointer * @fifo_addr: software position Max fifos stream pointer * @fifo_addr: software position Max fifos stream pointer * @dpibr_addr: DMA position in buffer resume pointer * @dpib: DMA position in buffer * @lpib: Linear position in buffer * @decoupled: stream host and link is decoupled * @decoupled: stream host and link is decoupled * @link_locked: link is locked * @link_locked: link is locked * @link_prepared: link is prepared * @link_prepared: link is prepared Loading @@ -86,6 +91,10 @@ struct hdac_ext_stream { void __iomem *spib_addr; void __iomem *spib_addr; void __iomem *fifo_addr; void __iomem *fifo_addr; void __iomem *dpibr_addr; u32 dpib; u32 lpib; bool decoupled:1; bool decoupled:1; bool link_locked:1; bool link_locked:1; bool link_prepared; bool link_prepared; Loading Loading @@ -116,6 +125,11 @@ int snd_hdac_ext_stream_set_spib(struct hdac_ext_bus *ebus, struct hdac_ext_stream *stream, u32 value); struct hdac_ext_stream *stream, u32 value); int snd_hdac_ext_stream_get_spbmaxfifo(struct hdac_ext_bus *ebus, int snd_hdac_ext_stream_get_spbmaxfifo(struct hdac_ext_bus *ebus, struct hdac_ext_stream *stream); struct hdac_ext_stream *stream); void snd_hdac_ext_stream_drsm_enable(struct hdac_ext_bus *ebus, bool enable, int index); int snd_hdac_ext_stream_set_dpibr(struct hdac_ext_bus *ebus, struct hdac_ext_stream *stream, u32 value); int snd_hdac_ext_stream_set_lpib(struct hdac_ext_stream *stream, u32 value); void snd_hdac_ext_link_stream_start(struct hdac_ext_stream *hstream); void snd_hdac_ext_link_stream_start(struct hdac_ext_stream *hstream); void snd_hdac_ext_link_stream_clear(struct hdac_ext_stream *hstream); void snd_hdac_ext_link_stream_clear(struct hdac_ext_stream *hstream); Loading @@ -133,6 +147,7 @@ struct hdac_ext_link { int snd_hdac_ext_bus_link_power_up(struct hdac_ext_link *link); int snd_hdac_ext_bus_link_power_up(struct hdac_ext_link *link); int snd_hdac_ext_bus_link_power_down(struct hdac_ext_link *link); int snd_hdac_ext_bus_link_power_down(struct hdac_ext_link *link); int snd_hdac_ext_bus_link_power_up_all(struct hdac_ext_bus *ebus); int snd_hdac_ext_bus_link_power_down_all(struct hdac_ext_bus *ebus); int snd_hdac_ext_bus_link_power_down_all(struct hdac_ext_bus *ebus); void snd_hdac_ext_link_set_stream_id(struct hdac_ext_link *link, void snd_hdac_ext_link_set_stream_id(struct hdac_ext_link *link, int stream); int stream); Loading Loading @@ -186,9 +201,15 @@ struct hdac_ext_device { /* codec ops */ /* codec ops */ struct hdac_ext_codec_ops ops; struct hdac_ext_codec_ops ops; struct snd_card *card; void *scodec; void *private_data; void *private_data; }; }; struct hdac_ext_dma_params { u32 format; u8 stream_tag; }; #define to_ehdac_device(dev) (container_of((dev), \ #define to_ehdac_device(dev) (container_of((dev), \ struct hdac_ext_device, hdac)) struct hdac_ext_device, hdac)) /* /* Loading include/sound/soc-dapm.h +4 −0 Original line number Original line Diff line number Diff line Loading @@ -49,6 +49,9 @@ struct device; #define SND_SOC_DAPM_SIGGEN(wname) \ #define SND_SOC_DAPM_SIGGEN(wname) \ { .id = snd_soc_dapm_siggen, .name = wname, .kcontrol_news = NULL, \ { .id = snd_soc_dapm_siggen, .name = wname, .kcontrol_news = NULL, \ .num_kcontrols = 0, .reg = SND_SOC_NOPM } .num_kcontrols = 0, .reg = SND_SOC_NOPM } #define SND_SOC_DAPM_SINK(wname) \ { .id = snd_soc_dapm_sink, .name = wname, .kcontrol_news = NULL, \ .num_kcontrols = 0, .reg = SND_SOC_NOPM } #define SND_SOC_DAPM_INPUT(wname) \ #define SND_SOC_DAPM_INPUT(wname) \ { .id = snd_soc_dapm_input, .name = wname, .kcontrol_news = NULL, \ { .id = snd_soc_dapm_input, .name = wname, .kcontrol_news = NULL, \ .num_kcontrols = 0, .reg = SND_SOC_NOPM } .num_kcontrols = 0, .reg = SND_SOC_NOPM } Loading Loading @@ -485,6 +488,7 @@ enum snd_soc_dapm_type { snd_soc_dapm_aif_in, /* audio interface input */ snd_soc_dapm_aif_in, /* audio interface input */ snd_soc_dapm_aif_out, /* audio interface output */ snd_soc_dapm_aif_out, /* audio interface output */ snd_soc_dapm_siggen, /* signal generator */ snd_soc_dapm_siggen, /* signal generator */ snd_soc_dapm_sink, snd_soc_dapm_dai_in, /* link to DAI structure */ snd_soc_dapm_dai_in, /* link to DAI structure */ snd_soc_dapm_dai_out, snd_soc_dapm_dai_out, snd_soc_dapm_dai_link, /* link between two DAI structures */ snd_soc_dapm_dai_link, /* link between two DAI structures */ Loading include/sound/soc.h +4 −1 Original line number Original line Diff line number Diff line Loading @@ -1106,7 +1106,7 @@ struct snd_soc_card { /* CPU <--> Codec DAI links */ /* CPU <--> Codec DAI links */ struct snd_soc_dai_link *dai_link; struct snd_soc_dai_link *dai_link; int num_links; int num_links; struct snd_soc_pcm_runtime *rtd; struct list_head rtd_list; int num_rtd; int num_rtd; /* optional codec specific configuration */ /* optional codec specific configuration */ Loading Loading @@ -1201,6 +1201,9 @@ struct snd_soc_pcm_runtime { struct dentry *debugfs_dpcm_root; struct dentry *debugfs_dpcm_root; struct dentry *debugfs_dpcm_state; struct dentry *debugfs_dpcm_state; #endif #endif unsigned int num; /* 0-based and monotonic increasing */ struct list_head list; /* rtd list of the soc card */ }; }; /* mixer control */ /* mixer control */ Loading Loading
arch/x86/include/asm/platform_sst_audio.h +1 −0 Original line number Original line Diff line number Diff line Loading @@ -55,6 +55,7 @@ enum sst_audio_device_id_mrfld { PIPE_MEDIA0_IN = 0x8F, PIPE_MEDIA0_IN = 0x8F, PIPE_MEDIA1_IN = 0x90, PIPE_MEDIA1_IN = 0x90, PIPE_MEDIA2_IN = 0x91, PIPE_MEDIA2_IN = 0x91, PIPE_MEDIA3_IN = 0x9C, PIPE_RSVD = 0xFF, PIPE_RSVD = 0xFF, }; }; Loading
include/sound/hda_register.h +9 −0 Original line number Original line Diff line number Diff line Loading @@ -233,6 +233,15 @@ enum { SDI0, SDI1, SDI2, SDI3, SDO0, SDO1, SDO2, SDO3 }; #define AZX_MLCTL_SPA (1<<16) #define AZX_MLCTL_SPA (1<<16) #define AZX_MLCTL_CPA 23 #define AZX_MLCTL_CPA 23 /* registers for DMA Resume Capability Structure */ #define AZX_DRSM_CAP_ID 0x5 #define AZX_REG_DRSM_CTL 0x4 /* Base used to calculate the iterating register offset */ #define AZX_DRSM_BASE 0x08 /* Interval used to calculate the iterating register offset */ #define AZX_DRSM_INTERVAL 0x08 /* /* * helpers to read the stream position * helpers to read the stream position */ */ Loading
include/sound/hdaudio_ext.h +21 −0 Original line number Original line Diff line number Diff line Loading @@ -12,6 +12,7 @@ * @spbcap: SPIB capabilities pointer * @spbcap: SPIB capabilities pointer * @mlcap: MultiLink capabilities pointer * @mlcap: MultiLink capabilities pointer * @gtscap: gts capabilities pointer * @gtscap: gts capabilities pointer * @drsmcap: dma resume capabilities pointer * @hlink_list: link list of HDA links * @hlink_list: link list of HDA links */ */ struct hdac_ext_bus { struct hdac_ext_bus { Loading @@ -23,6 +24,7 @@ struct hdac_ext_bus { void __iomem *spbcap; void __iomem *spbcap; void __iomem *mlcap; void __iomem *mlcap; void __iomem *gtscap; void __iomem *gtscap; void __iomem *drsmcap; struct list_head hlink_list; struct list_head hlink_list; }; }; Loading Loading @@ -72,6 +74,9 @@ enum hdac_ext_stream_type { * @pplc_addr: processing pipe link stream pointer * @pplc_addr: processing pipe link stream pointer * @spib_addr: software position in buffers stream pointer * @spib_addr: software position in buffers stream pointer * @fifo_addr: software position Max fifos stream pointer * @fifo_addr: software position Max fifos stream pointer * @dpibr_addr: DMA position in buffer resume pointer * @dpib: DMA position in buffer * @lpib: Linear position in buffer * @decoupled: stream host and link is decoupled * @decoupled: stream host and link is decoupled * @link_locked: link is locked * @link_locked: link is locked * @link_prepared: link is prepared * @link_prepared: link is prepared Loading @@ -86,6 +91,10 @@ struct hdac_ext_stream { void __iomem *spib_addr; void __iomem *spib_addr; void __iomem *fifo_addr; void __iomem *fifo_addr; void __iomem *dpibr_addr; u32 dpib; u32 lpib; bool decoupled:1; bool decoupled:1; bool link_locked:1; bool link_locked:1; bool link_prepared; bool link_prepared; Loading Loading @@ -116,6 +125,11 @@ int snd_hdac_ext_stream_set_spib(struct hdac_ext_bus *ebus, struct hdac_ext_stream *stream, u32 value); struct hdac_ext_stream *stream, u32 value); int snd_hdac_ext_stream_get_spbmaxfifo(struct hdac_ext_bus *ebus, int snd_hdac_ext_stream_get_spbmaxfifo(struct hdac_ext_bus *ebus, struct hdac_ext_stream *stream); struct hdac_ext_stream *stream); void snd_hdac_ext_stream_drsm_enable(struct hdac_ext_bus *ebus, bool enable, int index); int snd_hdac_ext_stream_set_dpibr(struct hdac_ext_bus *ebus, struct hdac_ext_stream *stream, u32 value); int snd_hdac_ext_stream_set_lpib(struct hdac_ext_stream *stream, u32 value); void snd_hdac_ext_link_stream_start(struct hdac_ext_stream *hstream); void snd_hdac_ext_link_stream_start(struct hdac_ext_stream *hstream); void snd_hdac_ext_link_stream_clear(struct hdac_ext_stream *hstream); void snd_hdac_ext_link_stream_clear(struct hdac_ext_stream *hstream); Loading @@ -133,6 +147,7 @@ struct hdac_ext_link { int snd_hdac_ext_bus_link_power_up(struct hdac_ext_link *link); int snd_hdac_ext_bus_link_power_up(struct hdac_ext_link *link); int snd_hdac_ext_bus_link_power_down(struct hdac_ext_link *link); int snd_hdac_ext_bus_link_power_down(struct hdac_ext_link *link); int snd_hdac_ext_bus_link_power_up_all(struct hdac_ext_bus *ebus); int snd_hdac_ext_bus_link_power_down_all(struct hdac_ext_bus *ebus); int snd_hdac_ext_bus_link_power_down_all(struct hdac_ext_bus *ebus); void snd_hdac_ext_link_set_stream_id(struct hdac_ext_link *link, void snd_hdac_ext_link_set_stream_id(struct hdac_ext_link *link, int stream); int stream); Loading Loading @@ -186,9 +201,15 @@ struct hdac_ext_device { /* codec ops */ /* codec ops */ struct hdac_ext_codec_ops ops; struct hdac_ext_codec_ops ops; struct snd_card *card; void *scodec; void *private_data; void *private_data; }; }; struct hdac_ext_dma_params { u32 format; u8 stream_tag; }; #define to_ehdac_device(dev) (container_of((dev), \ #define to_ehdac_device(dev) (container_of((dev), \ struct hdac_ext_device, hdac)) struct hdac_ext_device, hdac)) /* /* Loading
include/sound/soc-dapm.h +4 −0 Original line number Original line Diff line number Diff line Loading @@ -49,6 +49,9 @@ struct device; #define SND_SOC_DAPM_SIGGEN(wname) \ #define SND_SOC_DAPM_SIGGEN(wname) \ { .id = snd_soc_dapm_siggen, .name = wname, .kcontrol_news = NULL, \ { .id = snd_soc_dapm_siggen, .name = wname, .kcontrol_news = NULL, \ .num_kcontrols = 0, .reg = SND_SOC_NOPM } .num_kcontrols = 0, .reg = SND_SOC_NOPM } #define SND_SOC_DAPM_SINK(wname) \ { .id = snd_soc_dapm_sink, .name = wname, .kcontrol_news = NULL, \ .num_kcontrols = 0, .reg = SND_SOC_NOPM } #define SND_SOC_DAPM_INPUT(wname) \ #define SND_SOC_DAPM_INPUT(wname) \ { .id = snd_soc_dapm_input, .name = wname, .kcontrol_news = NULL, \ { .id = snd_soc_dapm_input, .name = wname, .kcontrol_news = NULL, \ .num_kcontrols = 0, .reg = SND_SOC_NOPM } .num_kcontrols = 0, .reg = SND_SOC_NOPM } Loading Loading @@ -485,6 +488,7 @@ enum snd_soc_dapm_type { snd_soc_dapm_aif_in, /* audio interface input */ snd_soc_dapm_aif_in, /* audio interface input */ snd_soc_dapm_aif_out, /* audio interface output */ snd_soc_dapm_aif_out, /* audio interface output */ snd_soc_dapm_siggen, /* signal generator */ snd_soc_dapm_siggen, /* signal generator */ snd_soc_dapm_sink, snd_soc_dapm_dai_in, /* link to DAI structure */ snd_soc_dapm_dai_in, /* link to DAI structure */ snd_soc_dapm_dai_out, snd_soc_dapm_dai_out, snd_soc_dapm_dai_link, /* link between two DAI structures */ snd_soc_dapm_dai_link, /* link between two DAI structures */ Loading
include/sound/soc.h +4 −1 Original line number Original line Diff line number Diff line Loading @@ -1106,7 +1106,7 @@ struct snd_soc_card { /* CPU <--> Codec DAI links */ /* CPU <--> Codec DAI links */ struct snd_soc_dai_link *dai_link; struct snd_soc_dai_link *dai_link; int num_links; int num_links; struct snd_soc_pcm_runtime *rtd; struct list_head rtd_list; int num_rtd; int num_rtd; /* optional codec specific configuration */ /* optional codec specific configuration */ Loading Loading @@ -1201,6 +1201,9 @@ struct snd_soc_pcm_runtime { struct dentry *debugfs_dpcm_root; struct dentry *debugfs_dpcm_root; struct dentry *debugfs_dpcm_state; struct dentry *debugfs_dpcm_state; #endif #endif unsigned int num; /* 0-based and monotonic increasing */ struct list_head list; /* rtd list of the soc card */ }; }; /* mixer control */ /* mixer control */ Loading