Loading Documentation/devicetree/bindings/sound/renesas,rsnd.yaml +1 −1 Original line number Diff line number Diff line Loading @@ -114,7 +114,7 @@ properties: ports: $ref: /schemas/graph.yaml#/properties/ports properties: patternProperties: port(@[0-9a-f]+)?: $ref: audio-graph-port.yaml# unevaluatedProperties: false Loading include/sound/soc.h +6 −0 Original line number Diff line number Diff line Loading @@ -712,6 +712,12 @@ struct snd_soc_dai_link { /* Do not create a PCM for this DAI link (Backend link) */ unsigned int ignore:1; /* This flag will reorder stop sequence. By enabling this flag * DMA controller stop sequence will be invoked first followed by * CPU DAI driver stop sequence */ unsigned int stop_dma_first:1; #ifdef CONFIG_SND_SOC_TOPOLOGY struct snd_soc_dobj dobj; /* For topology */ #endif Loading sound/core/memalloc.c +1 −1 Original line number Diff line number Diff line Loading @@ -261,7 +261,7 @@ static int snd_dma_continuous_mmap(struct snd_dma_buffer *dmab, struct vm_area_struct *area) { return remap_pfn_range(area, area->vm_start, dmab->addr >> PAGE_SHIFT, page_to_pfn(virt_to_page(dmab->area)), area->vm_end - area->vm_start, area->vm_page_prot); } Loading sound/core/pcm_native.c +12 −4 Original line number Diff line number Diff line Loading @@ -246,13 +246,19 @@ static bool hw_support_mmap(struct snd_pcm_substream *substream) if (!(substream->runtime->hw.info & SNDRV_PCM_INFO_MMAP)) return false; if (substream->ops->mmap || (substream->dma_buffer.dev.type != SNDRV_DMA_TYPE_DEV && substream->dma_buffer.dev.type != SNDRV_DMA_TYPE_DEV_UC)) if (substream->ops->mmap || substream->ops->page) return true; switch (substream->dma_buffer.dev.type) { case SNDRV_DMA_TYPE_UNKNOWN: return false; case SNDRV_DMA_TYPE_CONTINUOUS: case SNDRV_DMA_TYPE_VMALLOC: return true; default: return dma_can_mmap(substream->dma_buffer.dev.dev); } } static int constrain_mask_params(struct snd_pcm_substream *substream, struct snd_pcm_hw_params *params) Loading Loading @@ -3669,6 +3675,8 @@ static vm_fault_t snd_pcm_mmap_data_fault(struct vm_fault *vmf) return VM_FAULT_SIGBUS; if (substream->ops->page) page = substream->ops->page(substream, offset); else if (!snd_pcm_get_dma_buf(substream)) page = virt_to_page(runtime->dma_area + offset); else page = snd_sgbuf_get_page(snd_pcm_get_dma_buf(substream), offset); if (!page) Loading sound/hda/intel-dsp-config.c +4 −0 Original line number Diff line number Diff line Loading @@ -319,6 +319,10 @@ static const struct config_entry config_table[] = { .flags = FLAG_SOF | FLAG_SOF_ONLY_IF_DMIC, .device = 0x4b55, }, { .flags = FLAG_SOF | FLAG_SOF_ONLY_IF_DMIC, .device = 0x4b58, }, #endif /* Alder Lake */ Loading Loading
Documentation/devicetree/bindings/sound/renesas,rsnd.yaml +1 −1 Original line number Diff line number Diff line Loading @@ -114,7 +114,7 @@ properties: ports: $ref: /schemas/graph.yaml#/properties/ports properties: patternProperties: port(@[0-9a-f]+)?: $ref: audio-graph-port.yaml# unevaluatedProperties: false Loading
include/sound/soc.h +6 −0 Original line number Diff line number Diff line Loading @@ -712,6 +712,12 @@ struct snd_soc_dai_link { /* Do not create a PCM for this DAI link (Backend link) */ unsigned int ignore:1; /* This flag will reorder stop sequence. By enabling this flag * DMA controller stop sequence will be invoked first followed by * CPU DAI driver stop sequence */ unsigned int stop_dma_first:1; #ifdef CONFIG_SND_SOC_TOPOLOGY struct snd_soc_dobj dobj; /* For topology */ #endif Loading
sound/core/memalloc.c +1 −1 Original line number Diff line number Diff line Loading @@ -261,7 +261,7 @@ static int snd_dma_continuous_mmap(struct snd_dma_buffer *dmab, struct vm_area_struct *area) { return remap_pfn_range(area, area->vm_start, dmab->addr >> PAGE_SHIFT, page_to_pfn(virt_to_page(dmab->area)), area->vm_end - area->vm_start, area->vm_page_prot); } Loading
sound/core/pcm_native.c +12 −4 Original line number Diff line number Diff line Loading @@ -246,13 +246,19 @@ static bool hw_support_mmap(struct snd_pcm_substream *substream) if (!(substream->runtime->hw.info & SNDRV_PCM_INFO_MMAP)) return false; if (substream->ops->mmap || (substream->dma_buffer.dev.type != SNDRV_DMA_TYPE_DEV && substream->dma_buffer.dev.type != SNDRV_DMA_TYPE_DEV_UC)) if (substream->ops->mmap || substream->ops->page) return true; switch (substream->dma_buffer.dev.type) { case SNDRV_DMA_TYPE_UNKNOWN: return false; case SNDRV_DMA_TYPE_CONTINUOUS: case SNDRV_DMA_TYPE_VMALLOC: return true; default: return dma_can_mmap(substream->dma_buffer.dev.dev); } } static int constrain_mask_params(struct snd_pcm_substream *substream, struct snd_pcm_hw_params *params) Loading Loading @@ -3669,6 +3675,8 @@ static vm_fault_t snd_pcm_mmap_data_fault(struct vm_fault *vmf) return VM_FAULT_SIGBUS; if (substream->ops->page) page = substream->ops->page(substream, offset); else if (!snd_pcm_get_dma_buf(substream)) page = virt_to_page(runtime->dma_area + offset); else page = snd_sgbuf_get_page(snd_pcm_get_dma_buf(substream), offset); if (!page) Loading
sound/hda/intel-dsp-config.c +4 −0 Original line number Diff line number Diff line Loading @@ -319,6 +319,10 @@ static const struct config_entry config_table[] = { .flags = FLAG_SOF | FLAG_SOF_ONLY_IF_DMIC, .device = 0x4b55, }, { .flags = FLAG_SOF | FLAG_SOF_ONLY_IF_DMIC, .device = 0x4b58, }, #endif /* Alder Lake */ Loading