NOVA User-Level Environment  Version testbox/changed-memory-timing-317-g320d8b5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
MessageDisk Struct Reference

Request/read from the disk. More...

#include <message.h>

Public Types

enum  Type { DISK_GET_PARAMS, DISK_READ, DISK_WRITE, DISK_FLUSH_CACHE }
enum  Status {
  DISK_OK = 0, DISK_STATUS_BUSY, DISK_STATUS_DEVICE, DISK_STATUS_DMA,
  DISK_STATUS_USERTAG, DISK_STATUS_SHIFT = 4, DISK_STATUS_MASK = (1 << DISK_STATUS_SHIFT) -1
}

Public Member Functions

 MessageDisk (unsigned _disknr, DiskParameter *_params)
 MessageDisk (Type _type, unsigned _disknr, unsigned long _usertag, unsigned long long _sector, unsigned _dmacount, DmaDescriptor *_dma, unsigned long _physoffset, unsigned long _physsize)

Public Attributes

enum MessageDisk::Type type
unsigned disknr
union {
   DiskParameter *   params
   struct {
      unsigned long long   sector
      unsigned long   usertag
      unsigned   dmacount
      DmaDescriptor *   dma
      unsigned long   physoffset
      unsigned long   physsize
   } 
}; 
enum MessageDisk::Status error

Detailed Description

Request/read from the disk.

Member Enumeration Documentation

Enumerator:
DISK_OK 
DISK_STATUS_BUSY 
DISK_STATUS_DEVICE 
DISK_STATUS_DMA 
DISK_STATUS_USERTAG 
DISK_STATUS_SHIFT 
DISK_STATUS_MASK 
Enumerator:
DISK_GET_PARAMS 
DISK_READ 
DISK_WRITE 
DISK_FLUSH_CACHE 

Constructor & Destructor Documentation

MessageDisk::MessageDisk ( unsigned  _disknr,
DiskParameter _params 
)
inline
MessageDisk::MessageDisk ( Type  _type,
unsigned  _disknr,
unsigned long  _usertag,
unsigned long long  _sector,
unsigned  _dmacount,
DmaDescriptor _dma,
unsigned long  _physoffset,
unsigned long  _physsize 
)
inline

Member Data Documentation

union { ... }
unsigned MessageDisk::disknr
DmaDescriptor* MessageDisk::dma
unsigned MessageDisk::dmacount
enum MessageDisk::Status MessageDisk::error
DiskParameter* MessageDisk::params
unsigned long MessageDisk::physoffset
unsigned long MessageDisk::physsize
unsigned long long MessageDisk::sector
enum MessageDisk::Type MessageDisk::type
unsigned long MessageDisk::usertag

The documentation for this struct was generated from the following file: