|
@@ -628,8 +628,7 @@ typedef int (ide_expiry_t)(ide_drive_t *);
|
|
typedef struct hwgroup_s {
|
|
typedef struct hwgroup_s {
|
|
/* irq handler, if active */
|
|
/* irq handler, if active */
|
|
ide_startstop_t (*handler)(ide_drive_t *);
|
|
ide_startstop_t (*handler)(ide_drive_t *);
|
|
- /* irq handler, suspended if active */
|
|
|
|
- ide_startstop_t (*handler_save)(ide_drive_t *);
|
|
|
|
|
|
+
|
|
/* BOOL: protects all fields below */
|
|
/* BOOL: protects all fields below */
|
|
volatile int busy;
|
|
volatile int busy;
|
|
/* BOOL: wake us up on timer expiry */
|
|
/* BOOL: wake us up on timer expiry */
|
|
@@ -644,25 +643,18 @@ typedef struct hwgroup_s {
|
|
/* ptr to current hwif in linked-list */
|
|
/* ptr to current hwif in linked-list */
|
|
ide_hwif_t *hwif;
|
|
ide_hwif_t *hwif;
|
|
|
|
|
|
- /* for pci chipsets */
|
|
|
|
- struct pci_dev *pci_dev;
|
|
|
|
-
|
|
|
|
/* current request */
|
|
/* current request */
|
|
struct request *rq;
|
|
struct request *rq;
|
|
|
|
+
|
|
/* failsafe timer */
|
|
/* failsafe timer */
|
|
struct timer_list timer;
|
|
struct timer_list timer;
|
|
- /* local copy of current write rq */
|
|
|
|
- struct request wrq;
|
|
|
|
/* timeout value during long polls */
|
|
/* timeout value during long polls */
|
|
unsigned long poll_timeout;
|
|
unsigned long poll_timeout;
|
|
/* queried upon timeouts */
|
|
/* queried upon timeouts */
|
|
int (*expiry)(ide_drive_t *);
|
|
int (*expiry)(ide_drive_t *);
|
|
- /* ide_system_bus_speed */
|
|
|
|
- int pio_clock;
|
|
|
|
|
|
+
|
|
int req_gen;
|
|
int req_gen;
|
|
int req_gen_timer;
|
|
int req_gen_timer;
|
|
-
|
|
|
|
- unsigned char cmd_buf[4];
|
|
|
|
} ide_hwgroup_t;
|
|
} ide_hwgroup_t;
|
|
|
|
|
|
typedef struct ide_driver_s ide_driver_t;
|
|
typedef struct ide_driver_s ide_driver_t;
|