pxa2xx-pcm.h 899 B

12345678910111213141516171819202122232425262728293031
  1. /*
  2. * linux/sound/arm/pxa2xx-pcm.h -- ALSA PCM interface for the Intel PXA2xx chip
  3. *
  4. * Author: Nicolas Pitre
  5. * Created: Nov 30, 2004
  6. * Copyright: MontaVista Software, Inc.
  7. *
  8. * This program is free software; you can redistribute it and/or modify
  9. * it under the terms of the GNU General Public License version 2 as
  10. * published by the Free Software Foundation.
  11. */
  12. #include <mach/dma.h>
  13. struct pxa2xx_runtime_data {
  14. int dma_ch;
  15. struct pxa2xx_pcm_dma_params *params;
  16. pxa_dma_desc *dma_desc_array;
  17. dma_addr_t dma_desc_array_phys;
  18. };
  19. struct pxa2xx_pcm_client {
  20. struct pxa2xx_pcm_dma_params *playback_params;
  21. struct pxa2xx_pcm_dma_params *capture_params;
  22. int (*startup)(struct snd_pcm_substream *);
  23. void (*shutdown)(struct snd_pcm_substream *);
  24. int (*prepare)(struct snd_pcm_substream *);
  25. };
  26. extern int pxa2xx_pcm_new(struct snd_card *, struct pxa2xx_pcm_client *, struct snd_pcm **);