#define HIBYTE( _x )
#define LOBYTE( _x )
#define IDE_IRQ INT7
#define IDE_INT_RISING_EDGE 0xC0
#define CF_IRQ INT6
#define CF_INT_SENS_MASK 0x30
#define CF_INT_FALLING_EDGE 0x20
#define CF_INT_RISING_EDGE 0x30
#define IDE_MAX_SUPPORTED_DEVICE 1
#define CF_AVAILABLE 0
#define CF_NOT_AVAILABLE 1
#define INITTIMEOUT 10000
#define DISKTIMEOUT 10000
#define CONTROLLERTIMEOUT 200
#define ATAPITIMEOUT 5000
#define IDEIn( x )
#define IDEOut( x, y )
#define IDE_SUPPORT_LBA 0x0001
#define IDE_SUPPORT_LBA48 0x0002
#define IDE_SUPPORT_PACKET 0x0004
#define IDE_SUPPORT_INTRQ_PACKET 0x0008
#define IDE_CDROM_DEVICE 0x1000
#define IDE_ZIP_DEVICE 0x2000
#define IDE_READ_ONLY 0x4000
#define IDE_READY 0x8000
#define ATAPI_CFG_12_BYTE_MSK 0x0003
#define ATAPI_CFG_INTRQ 0x0060
#define ATAPI_CFG_REM_MEDIUM 0x0080
#define ATAPI_CFG_DEVICE 0x1F00
#define ATAPI_CFG_ATAPI 0xC000
#define ATAPI_IS_12_BYTE 0x0000
#define ATAPI_USE_INTRQ 0x0020
#define ATAPI_IS_DIRECT_ACCESS 0x0000
#define ATAPI_IS_CDROM 0x0500
#define ATAPI_IS_PACKET 0x8000
#define ATAPI_CMD( _x )
#define CLEAR_ATAPI_CMD
struct _drive | |
{ | |
WORD wFlags; | |
BYTE bIDEMode; | |
BYTE bDevice; | |
DWORD dwTotalSectors; | |
WORD wSectorSize; | |
} |
See: | Typedef DRIVE |
Used in: | ATAPISendCommand() | |
DeviceDiag() | ||
GetDeviceInfo() | ||
GetDeviceInfoPacket() | ||
IDEInit() | ||
IDEInterrupt() | ||
ReadSectors() | ||
WaitForInterrupt() |
pIDE
static volatile BYTE* pIDE
Used in: | ATAPISendCommand() | |
DeviceDiag() | ||
GetDeviceInfo() | ||
GetDeviceInfoPacket() | ||
IDEInit() | ||
IDEInterrupt() | ||
IsPacketDevice() | ||
ReadSectors() | ||
SelectDevice() | ||
WaitDRQ() | ||
WaitNotBusy() |
gbIntStatus
static volatile BYTE gbIntStatus
Used in: | ATAPISendCommand() | |
GetDeviceInfo() | ||
GetDeviceInfoPacket() | ||
IDEInit() | ||
IDEInterrupt() | ||
ReadSectors() |
sDrive
static DRIVE sDrive[1]
Used in: | CFChange() | |
IDEATAPISetCDSpeed() | ||
IDEGetSectorSize() | ||
IDEGetTotalSectors() | ||
IDEInit() | ||
IDEIsCDROMDevice() | ||
IDEIsZIPDevice() | ||
IDEMountDevice() | ||
IDEReadSectors() | ||
IDEUnMountDevice() | ||
ReadSectors() |
hIDESemaphore
static HANDLE hIDESemaphore
Used in: | IDEFree() | |
IDELock() | ||
IDESemaInit() |
hCFChangeInt
static HANDLE hCFChangeInt
Used in: | CFChange() | |
CFInterrupt() |
gbCFMountStatus
static BYTE gbCFMountStatus
Used in: | CFChange() | |
IDEInit() |
aATAPICmd
static BYTE aATAPICmd[12]
Used in: | ATAPIGetTotalSectors() | |
ATAPISendCommand() | ||
GetDeviceInfoPacket() | ||
IDEATAPISetCDSpeed() | ||
IDEReadSectors() |
Prototyped in: | nut/arch/avr/dev/ide.c | |
Calls: | HardwareReset() | nut/arch/avr/dev/ide.c |
IDEMountDevice() | nut/arch/avr/dev/ide.c | |
IDEUnMountDevice() | nut/arch/avr/dev/ide.c | |
NutEventWaitNext() | nut/os/event.c | |
NutHeapAlloc() | nut/os/heap.c | |
NutHeapFree() | nut/os/heap.c | |
NutSleep() | nut/os/timer.c | |
pUserMountFunc(), pUserUnMountFunc() | ||
Used in: | IDEInit() | nut/arch/avr/dev/ide.c |
References Functions: | pUserMountFunc(), pUserUnMountFunc() | |
References Variables: | gbCFMountStatus | nut/arch/avr/dev/ide.c |
hCFChangeInt | nut/arch/avr/dev/ide.c | |
sDrive | nut/arch/avr/dev/ide.c |
Prototyped in: | nut/include/dev/ide.h | |
Calls: | ATAPISendCommand() | nut/arch/avr/dev/ide.c |
memset() | ||
Called by: | GetDeviceInfoPacket() | nut/arch/avr/dev/ide.c |
References Variables: | aATAPICmd | nut/arch/avr/dev/ide.c |
sDrive | nut/arch/avr/dev/ide.c |
Prototyped in: | nut/include/dev/ide.h | |
Calls: | IDEFree() | nut/arch/avr/dev/ide.c |
IDELock() | nut/arch/avr/dev/ide.c | |
Called by: | FATMountDrive() | nut/fs/fat.c |
References Variables: | sDrive | nut/arch/avr/dev/ide.c |
Prototyped in: | nut/include/dev/ide.h | |
Calls: | IDEFree() | nut/arch/avr/dev/ide.c |
IDELock() | nut/arch/avr/dev/ide.c | |
References Variables: | sDrive | nut/arch/avr/dev/ide.c |
Prototyped in: | nut/include/dev/ide.h | |
Calls: | ClearEvent() | nut/arch/avr/dev/ide.c |
HardwareReset() | nut/arch/avr/dev/ide.c | |
IDESemaInit() | nut/arch/avr/dev/ide.c | |
NutRegisterIrqHandler() | nut/dev/ihndlr.c | |
NutThreadCreate() | nut/arch/avr/os/context_gcc.c | |
memset() | ||
Called by: | FATInit() | nut/fs/fat.c |
References Functions: | CFChange() | nut/arch/avr/dev/ide.c |
CFInterrupt() | nut/arch/avr/dev/ide.c | |
IDEInterrupt() | nut/arch/avr/dev/ide.c | |
pUserMountFunc(), pUserUnMountFunc() | ||
References Variables: | gbCFMountStatus | nut/arch/avr/dev/ide.c |
gbIntStatus | nut/arch/avr/dev/ide.c | |
hIDEEvent | nut/arch/avr/dev/ide.c | |
pIDE | nut/arch/avr/dev/ide.c | |
sDrive | nut/arch/avr/dev/ide.c |
Prototyped in: | nut/include/dev/ide.h | |
Calls: | IDEFree() | nut/arch/avr/dev/ide.c |
IDELock() | nut/arch/avr/dev/ide.c | |
Called by: | FATMountDrive() | nut/fs/fat.c |
References Variables: | sDrive | nut/arch/avr/dev/ide.c |
Prototyped in: | nut/include/dev/ide.h | |
Calls: | IDEFree() | nut/arch/avr/dev/ide.c |
IDELock() | nut/arch/avr/dev/ide.c | |
Called by: | FATMountDrive() | nut/fs/fat.c |
References Variables: | sDrive | nut/arch/avr/dev/ide.c |
Prototyped in: | nut/include/dev/ide.h | |
Calls: | DeviceDiag() | nut/arch/avr/dev/ide.c |
GetDeviceInfo() | nut/arch/avr/dev/ide.c | |
GetDeviceInfoPacket() | nut/arch/avr/dev/ide.c | |
IDEFree() | nut/arch/avr/dev/ide.c | |
IDELock() | nut/arch/avr/dev/ide.c | |
Called by: | CFChange() | nut/arch/avr/dev/ide.c |
FATInit() | nut/fs/fat.c | |
References Variables: | sDrive | nut/arch/avr/dev/ide.c |
Calls: | NutEventPost() | nut/os/event.c |
Called by: | IDEInit() | nut/arch/avr/dev/ide.c |
References Variables: | hIDESemaphore | nut/arch/avr/dev/ide.c |
Prototyped in: | nut/include/dev/ide.h | |
Calls: | IDEFree() | nut/arch/avr/dev/ide.c |
IDELock() | nut/arch/avr/dev/ide.c | |
Called by: | CFChange() | nut/arch/avr/dev/ide.c |
References Variables: | sDrive | nut/arch/avr/dev/ide.c |
Calls: | ATAPISendCommand() | nut/arch/avr/dev/ide.c |
NutSleep() | nut/os/timer.c | |
memset() | ||
Called by: | GetDeviceInfoPacket() | nut/arch/avr/dev/ide.c |
References Variables: | aATAPICmd | nut/arch/avr/dev/ide.c |
Calls: | NutEventPostFromIrq() | nut/os/event.c |
Used in: | IDEInit() | nut/arch/avr/dev/ide.c |
References Variables: | hCFChangeInt | nut/arch/avr/dev/ide.c |
Calls: | NutSleep() | nut/os/timer.c |
Called by: | CFChange() | nut/arch/avr/dev/ide.c |
IDEInit() | nut/arch/avr/dev/ide.c |
Calls: | NutEventPostFromIrq() | nut/os/event.c |
Used in: | IDEInit() | nut/arch/avr/dev/ide.c |
References Variables: | gbIntStatus | nut/arch/avr/dev/ide.c |
hIDEEvent | nut/arch/avr/dev/ide.c | |
pIDE | nut/arch/avr/dev/ide.c |
Called by: | DeviceDiag() | nut/arch/avr/dev/ide.c |
References Variables: | pIDE | nut/arch/avr/dev/ide.c |
Called by: | ATAPISendCommand() | nut/arch/avr/dev/ide.c |
SelectDevice() | nut/arch/avr/dev/ide.c |
Calls: | NutGetTickCount() | nut/os/timer.c |
Called by: | ATAPISendCommand() | nut/arch/avr/dev/ide.c |
References Variables: | pIDE | nut/arch/avr/dev/ide.c |
Calls: | NutGetTickCount() | nut/os/timer.c |
Called by: | ATAPISendCommand() | nut/arch/avr/dev/ide.c |
SelectDevice() | nut/arch/avr/dev/ide.c | |
References Variables: | pIDE | nut/arch/avr/dev/ide.c |