X-Git-Url: http://v3vee.org/palacios/gitweb/gitweb.cgi?a=blobdiff_plain;f=palacios%2Finclude%2Fdevices%2Fide.h;h=98c91ce122b2962876cc875d5db7503b62aa1816;hb=2be845dc1d8fc407dab4254a8fac03395ffc1ec2;hp=d70ac4b6b2bf57469c40f0709d7847ded804a672;hpb=074d44443cd1dc65660b2859503ad9f72bce625a;p=palacios.git diff --git a/palacios/include/devices/ide.h b/palacios/include/devices/ide.h index d70ac4b..98c91ce 100644 --- a/palacios/include/devices/ide.h +++ b/palacios/include/devices/ide.h @@ -24,18 +24,23 @@ #include -typedef enum {IDE_DISK, IDE_CDROM, IDE_NONE} v3_ide_dev_type_t; +#define ATAPI_BLOCK_SIZE 2048 +#define IDE_SECTOR_SIZE 512 + +typedef enum {IDE_NONE, IDE_DISK, IDE_CDROM} v3_ide_dev_type_t; struct v3_ide_cd_ops { uint32_t (*get_capacity)(void * private_data); // Reads always operate on 2048 byte blocks - int (*read)(uint8_t * buf, int lba, void * private_data); + int (*read)(uint8_t * buf, int block_count, uint64_t lba, void * private_data); }; struct v3_ide_hd_ops { - + uint64_t (*get_capacity)(void * private_data); + // Reads always operate on 2048 byte blocks + int (*read)(uint8_t * buf, int sector_count, uint64_t lba, void * private_data); };