Punto de entrada de Alsa DMA

Describe los parámetros clave de DMA

Snd_pcm_substream es el núcleo de la capa intermedia de pcm. La mayoría de las tareas se procesan en substream, especialmente su campo ops (snd_pcm_ops).
Muchas aplicaciones de espacio de usuario solicitan controladores a través de alsa-lib en esta estructura. Procesamiento de funciones.
Su campo de tiempo de ejecución apunta a la estructura snd_pcm_runtime, y snd_pcm_runtime registra algunos parámetros y entornos operativos de software y hardware importantes de esta subflujo.

En la etapa hw_params de la tarjeta de sonido, se llamará a ops-> hw_params de la estructura snd_soc_platform_driver. En esta llamada, la
api: snd_pcm_set_runtime_buffer () generalmente se usa para copiar el valor de substream-> dma_buffer
al campo relevante de substream -> runtime (.dma_area, .dma_addr, .dma_bytes), de
modo que la información de dirección y tamaño se pueda obtener a través de substream-> runtime en el futuro.

Tenga en cuenta que snd_pcm_substream también contiene mucha información

Indice palabras clave runtime
runtime-> hw set hardware parameters
runtime-> dma_addr dirección física
runtime-> dma_area puntero dirección
runtime-> dma_area tamaño tamaño

dma_free_coherent (struct dispositivo * dev, size_t size, void * cpu_addr,
dma_addr_t dma_handle)
se puede obtener la función dma_addr es (manejar la dirección física) dma_area es la dirección (dirección del puntero) dma_bytes es la
aplicación de tamaño para estos datos que generalmente se establece en la plataforma hw_params, sobre cómo asignar el índice dma_area dma_addr

Supongo que te gusta

Origin blog.csdn.net/aningxiaoxixi/article/details/109710386
Recomendado
Clasificación