evm5509_dma_aic23.h
上传用户:dahaojd
上传日期:2008-01-29
资源大小:14357k
文件大小:3k
源码类别:

DSP编程

开发平台:

C/C++

  1. /*
  2.  *  Copyright 2003 by Texas Instruments Incorporated.
  3.  *  All rights reserved. Property of Texas Instruments Incorporated.
  4.  *  Restricted rights to use, duplicate or disclose this code are
  5.  *  granted through contract.
  6.  *  
  7.  */
  8. /* "@(#) DDK 1.10.00.23 07-02-03 (ddk-b12)" */
  9. /* 
  10.  *  ======== evm5509_dma_aic23.h ========
  11.  * 
  12.  *  This file declares an implementation of the IOM interface for
  13.  *  performing streaming I/O with the TI AIC23 audio codec on the 
  14.  *  Spectrum Digital 5509 EVM containing an
  15.  *  AIC23 codec, using the DMA for block transfer.
  16.  */
  17. #ifndef EVM5509_DMA_AIC23_
  18. #define EVM5509_DMA_AIC23_
  19. #include <aic23.h>
  20. #include <iom.h>
  21. /* Version Number definition */
  22. #define EVM5509_DMA_AIC23_VERSION_1 0xAB01
  23. #define EVM5509_DMA_AIC23_RXDMAID_DEFAULT 4
  24. #define EVM5509_DMA_AIC23_TXDMAID_DEFAULT 5
  25. #define EVM5509_DMA_AIC23_PORTTYPE_DARAM 0
  26. #define EVM5509_DMA_AIC23_PORTTYPE_SARAM 1
  27. #define EVM5509_DMA_AIC23_PORTTYPE_EMIF  2
  28. #define EVM5509_DMA_AIC23_PORTTYPE_DEFAULT EVM5509_DMA_AIC23_PORTTYPE_DARAM
  29. #define EVM5509_DMA_AIC23_IER_MASK_DEFAULT 1
  30. /* Driver function table to be used by applications */
  31. extern IOM_Fxns EVM5509_DMA_AIC23_FXNS;
  32.                 
  33. /* Setup structure for the driver (contains only codec registers) */
  34. typedef struct EVM5509_DMA_AIC23_DevParams {
  35.     Int                  versionId;        /* Version number used by app */
  36.     Uns                  rxDmaId;          /* rxDmaId */
  37.     Uns                  txDmaId;          /* txDmaId */
  38.     Uns                  dmaPortType;      /* dma port type */
  39.     AIC23_Params         aic23;            /* codec parameters (registers) */
  40.     Uns                  rxIerMask[2];     /* receiver interrupt mask */
  41.     Uns                  txIerMask[2];     /* transmitter interrupt mask */
  42. } EVM5509_DMA_AIC23_DevParams;
  43. #define EVM5509_DMA_AIC23_DEVPARAMS_DEFAULT {   
  44.     EVM5509_DMA_AIC23_VERSION_1,                
  45.     EVM5509_DMA_AIC23_RXDMAID_DEFAULT,          
  46.     EVM5509_DMA_AIC23_TXDMAID_DEFAULT,          
  47.     EVM5509_DMA_AIC23_PORTTYPE_DEFAULT,         
  48.     AIC23_DEFAULTPARAMS,                        
  49.     {                                           
  50.         EVM5509_DMA_AIC23_IER_MASK_DEFAULT,     
  51.         EVM5509_DMA_AIC23_IER_MASK_DEFAULT      
  52.     },                                          
  53.     {                                           
  54.         EVM5509_DMA_AIC23_IER_MASK_DEFAULT,     
  55.         EVM5509_DMA_AIC23_IER_MASK_DEFAULT      
  56.     }                                           
  57. }
  58. /* Controller init function -- initializes driver variables, if any */
  59. extern Void EVM5509_DMA_AIC23_init(Void);
  60. #endif