-DelV2p (\r
- VOID *VirtualAddress\r
- );\r
-\r
-/**\r
- This is a callback routine supplied to UNDI at undi_start time.\r
- UNDI call this routine when it wants to have exclusive access to a critical\r
- section of the code/data.\r
-\r
- @param Enable non-zero indicates acquire\r
- zero indicates release\r
-\r
-**/\r
-VOID\r
-SnpUndi32CallbackBlock30 (\r
- IN UINT32 Enable\r
- );\r
-\r
-/**\r
- This is a callback routine supplied to UNDI at undi_start time.\r
- UNDI call this routine with the number of micro seconds when it wants to\r
- pause.\r
-\r
- @param MicroSeconds number of micro seconds to pause, ususlly multiple of 10.\r
-\r
-**/\r
-VOID\r
-SnpUndi32CallbackDelay30 (\r
- IN UINT64 MicroSeconds\r
- );\r
-\r
-/**\r
- This is a callback routine supplied to UNDI at undi_start time.\r
- This is the IO routine for UNDI. This is not currently being used by UNDI3.0\r
- because Undi3.0 uses io/mem offsets relative to the beginning of the device\r
- io/mem address and so it needs to use the PCI_IO_FUNCTION that abstracts the\r
- start of the device's io/mem addresses. Since SNP cannot retrive the context\r
- of the undi3.0 interface it cannot use the PCI_IO_FUNCTION that specific for\r
- that NIC and uses one global IO functions structure, this does not work.\r
- This however works fine for EFI1.0 Undis because they use absolute addresses\r
- for io/mem access.\r
-\r
- @param ReadOrWrite indicates read or write, IO or Memory\r
- @param NumBytes number of bytes to read or write\r
- @param Address IO or memory address to read from or write to\r
- @param BufferAddr memory location to read into or that contains the bytes to \r
- write\r
-\r
-**/\r
-VOID\r
-SnpUndi32CallbackMemio30 (\r
- IN UINT8 ReadOrWrite,\r
- IN UINT8 NumBytes,\r
- IN UINT64 Address,\r
- IN OUT UINT64 BufferAddr\r
- );\r
-\r
-/**\r
- This is a callback routine supplied to UNDI at undi_start time.\r
- UNDI call this routine with a virtual or CPU address that SNP provided to \r
- convert it to a physical or device address. Since EFI uses the identical \r
- mapping, this routine returns the physical address same as the virtual address\r
- for most of the addresses. an address above 4GB cannot generally be used as a \r
- device address, it needs to be mapped to a lower physical address. This \r
- routine does not call the map routine itself, but it assumes that the mapping\r
- was done at the time of providing the address to UNDI. This routine just \r
- looks up the address in a map table (which is the v2p structure chain). \r
- \r
- @param CpuAddr virtual address of a buffer.\r
- @param DeviceAddrPtr pointer to the physical address.\r
- The DeviceAddrPtr will contain 0 in case of any error.\r
-\r
-**/\r
-VOID\r
-SnpUndi32CallbackV2p30 (\r
- IN UINT64 CpuAddr,\r
- IN OUT UINT64 DeviceAddrPtr\r