Signed-off-by: Tormod Volden <debian.tormod@gmail.com>
uint8_t err;
uint8_t *driveptr = dw_tab + minor;
uint8_t cmd[5];
+ irqflags_t irq;
if(rawflag)
goto bad2;
while (ct < 2) {
for (tries = 0; tries < 4 ; tries++) {
// kprintf("dw_operation on block %d ct %d\n", block, ct);
+ irq = di(); /* for now block interrupts for whole operation */
err = dw_operation(cmd, driveptr);
+ irqrestore(irq);
if (err == 0)
break;
if (tries > 1)
uint8_t err;
uint8_t *driveptr = dw_tab + minor;
uint8_t cmd[5];
+ irqflags_t irq;
if(rawflag)
goto bad2;
while (ct < 2) {
for (tries = 0; tries < 4 ; tries++) {
// kprintf("dw_operation on block %d ct %d\n", block, ct);
+ irq = di(); /* for now block interrupts for whole operation */
err = dw_operation(cmd, driveptr);
+ irqrestore(irq);
if (err == 0)
break;
if (tries > 1)