00001 00045 #if !defined (DM6437_HAL_H) 00046 #define DM6437_HAL_H 00047 00048 00049 /* ----------------------------------- DSP/BIOS Link */ 00050 #include <dsplink.h> 00051 #include <hal.h> 00052 #if (DM6437_PHYINTERFACE == PCI_INTERFACE) 00053 #include <dm6437_hal_pci.h> 00054 #endif /* if (DM6437_PHYINTERFACE == PCI_INTERFACE) */ 00055 #if (DM6437_PHYINTERFACE == VLYNQ_INTERFACE) 00056 #include <dm6437_hal_vlynq.h> 00057 #endif /* if (DM6437_PHYINTERFACE == VLYNQ_INTERFACE) */ 00058 00059 #if defined (__cplusplus) 00060 extern "C" { 00061 #endif 00062 00063 00064 #if (DM6437_PHYINTERFACE == PCI_INTERFACE) 00065 00071 typedef struct DM6437_HalPciPhyObj_tag DM6437_HalPciPhyObj ; 00072 #endif /* if (DM6437_PHYINTERFACE == PCI_INTERFACE) */ 00073 00074 00075 #if (DM6437_PHYINTERFACE == VLYNQ_INTERFACE) 00076 00082 typedef struct DM6437_HalVlynqPhyObj_tag DM6437_HalVlynqPhyObj ; 00083 #endif /* if (DM6437_PHYINTERFACE == VLYNQ_INTERFACE) */ 00084 00116 typedef struct DM6437_HalObj_tag { 00117 ProcessorId dspId ; 00118 Uint32 phyType ; 00119 HAL_Interface * interface ; 00120 Bool isMapActive ; 00121 Uint32 mapSize ; 00122 Uint32 shMemDspAddr ; 00123 Uint32 shMemVirtAddr ; 00124 Uint32 shMemPhysAddr ; 00125 Pvoid lock ; 00126 #if (DM6437_PHYINTERFACE == PCI_INTERFACE) 00127 DM6437_HalPciPhyObj pci ; 00128 #endif /* (DM6437_PHYINTERFACE == PCI_INTERFACE) */ 00129 #if (DM6437_PHYINTERFACE == VLYNQ_INTERFACE) 00130 DM6437_HalVlynqPhyObj vlynq ; 00131 #endif /* (DM6437_PHYINTERFACE == VLYNQ_INTERFACE) */ 00132 } DM6437_HalObj ; 00133 00134 00161 typedef struct DM6437_InitParams_tag { 00162 ProcessorId dspId ; 00163 Uint32 phyType ; 00164 Uint32 shMemEntry ; 00165 Uint32 arg1 ; 00166 Uint32 arg2 ; 00167 Uint32 arg3 ; 00168 Uint32 arg4 ; 00169 Uint32 arg5 ; 00170 Uint32 arg6 ; 00171 } DM6437_InitParams ; 00172 00173 00198 NORMAL_API 00199 DSP_STATUS 00200 DM6437_halInit (IN Pvoid * halObject, IN Pvoid initParams) ; 00201 00202 00223 NORMAL_API 00224 DSP_STATUS 00225 DM6437_halExit (IN Pvoid * halObject) ; 00226 00227 00228 #if defined (__cplusplus) 00229 } 00230 #endif 00231 00232 00233 #endif /* !defined (DM6437_HAL_H) */