tag | line | file | source code |
hwgroup | 424 | drivers/block/ide.c | ide_hwgroup_t *hwgroup = HWGROUP(drive); |
hwgroup | 426 | drivers/block/ide.c | if (hwgroup->handler != NULL) |
hwgroup | 429 | drivers/block/ide.c | hwgroup->handler = handler; |
hwgroup | 430 | drivers/block/ide.c | hwgroup->timer.expires = jiffies + WAIT_CMD; |
hwgroup | 431 | drivers/block/ide.c | add_timer(&(hwgroup->timer)); |
hwgroup | 581 | drivers/block/ide.c | ide_hwgroup_t *hwgroup = hwif->hwgroup; |
hwgroup | 583 | drivers/block/ide.c | hwgroup->reset_timeout = jiffies + WAIT_WORSTCASE; /* max waiting time */ |
hwgroup | 584 | drivers/block/ide.c | hwgroup->handler = &reset_ihandler; /* dummy irq handler */ |
hwgroup | 585 | drivers/block/ide.c | hwgroup->timer.expires = jiffies + (HZ/20); /* polling interval */ |
hwgroup | 586 | drivers/block/ide.c | add_timer(&(hwgroup->timer)); |
hwgroup | 598 | drivers/block/ide.c | static int atapi_reset_handler (ide_hwgroup_t *hwgroup) |
hwgroup | 600 | drivers/block/ide.c | ide_hwif_t *hwif = hwgroup->hwif; |
hwgroup | 601 | drivers/block/ide.c | ide_drive_t *drive = hwgroup->drive; |
hwgroup | 608 | drivers/block/ide.c | if (jiffies < hwgroup->reset_timeout) { |
hwgroup | 615 | drivers/block/ide.c | hwgroup->doing_atapi_reset = 0; |
hwgroup | 616 | drivers/block/ide.c | hwgroup->handler = NULL; /* allow new requests to be processed */ |
hwgroup | 617 | drivers/block/ide.c | hwgroup->reset_timeout = 0; /* signal end of ide reset operation */ |
hwgroup | 631 | drivers/block/ide.c | static int reset_handler (ide_hwgroup_t *hwgroup) |
hwgroup | 633 | drivers/block/ide.c | ide_hwif_t *hwif = hwgroup->hwif; |
hwgroup | 634 | drivers/block/ide.c | ide_drive_t *drive = hwgroup->drive; |
hwgroup | 638 | drivers/block/ide.c | if (hwgroup->doing_atapi_reset) |
hwgroup | 639 | drivers/block/ide.c | return atapi_reset_handler(hwgroup); |
hwgroup | 643 | drivers/block/ide.c | if (jiffies < hwgroup->reset_timeout) { |
hwgroup | 672 | drivers/block/ide.c | hwgroup->handler = NULL; /* allow new requests to be processed */ |
hwgroup | 673 | drivers/block/ide.c | hwgroup->reset_timeout = 0; /* signal end of ide reset operation */ |
hwgroup | 697 | drivers/block/ide.c | ide_hwgroup_t *hwgroup = HWGROUP(drive); |
hwgroup | 705 | drivers/block/ide.c | if (!hwgroup->doing_atapi_reset) { |
hwgroup | 706 | drivers/block/ide.c | hwgroup->doing_atapi_reset = 1; |
hwgroup | 712 | drivers/block/ide.c | hwgroup->reset_timeout = jiffies + WAIT_WORSTCASE; |
hwgroup | 718 | drivers/block/ide.c | hwgroup->doing_atapi_reset = 0; |
hwgroup | 752 | drivers/block/ide.c | hwgroup->reset_timeout = jiffies + WAIT_WORSTCASE; |
hwgroup | 1363 | drivers/block/ide.c | ((ide_hwgroup_t *)hwif->hwgroup)->drive = drive; |
hwgroup | 1399 | drivers/block/ide.c | ide_end_request(0, hwif->hwgroup); |
hwgroup | 1417 | drivers/block/ide.c | void ide_do_request (ide_hwgroup_t *hwgroup) |
hwgroup | 1420 | drivers/block/ide.c | if (hwgroup->handler != NULL) { |
hwgroup | 1421 | drivers/block/ide.c | printk("%s: EEeekk!! handler not NULL in ide_do_request()\n", hwgroup->hwif->name); |
hwgroup | 1425 | drivers/block/ide.c | ide_hwif_t *hwif = hwgroup->hwif; |
hwgroup | 1427 | drivers/block/ide.c | if ((rq = hwgroup->rq) == NULL) { |
hwgroup | 1428 | drivers/block/ide.c | hwgroup->drive = NULL; /* paranoia */ |
hwgroup | 1433 | drivers/block/ide.c | } while ((hwif = hwif->next) != hwgroup->hwif); |
hwgroup | 1438 | drivers/block/ide.c | do_request(hwgroup->hwif = hwif, hwgroup->rq = rq); |
hwgroup | 1440 | drivers/block/ide.c | } while (hwgroup->handler == NULL); |
hwgroup | 1454 | drivers/block/ide.c | static void do_hwgroup_request (ide_hwgroup_t *hwgroup) |
hwgroup | 1456 | drivers/block/ide.c | if (hwgroup->handler == NULL) { |
hwgroup | 1457 | drivers/block/ide.c | ide_hwif_t *hgif = hwgroup->hwif; |
hwgroup | 1462 | drivers/block/ide.c | ide_do_request (hwgroup); |
hwgroup | 1471 | drivers/block/ide.c | do_hwgroup_request (ide_hwifs[0].hwgroup); |
hwgroup | 1476 | drivers/block/ide.c | do_hwgroup_request (ide_hwifs[1].hwgroup); |
hwgroup | 1481 | drivers/block/ide.c | do_hwgroup_request (ide_hwifs[2].hwgroup); |
hwgroup | 1486 | drivers/block/ide.c | do_hwgroup_request (ide_hwifs[3].hwgroup); |
hwgroup | 1491 | drivers/block/ide.c | ide_hwgroup_t *hwgroup = (ide_hwgroup_t *) data; |
hwgroup | 1492 | drivers/block/ide.c | ide_drive_t *drive = hwgroup->drive; |
hwgroup | 1498 | drivers/block/ide.c | if (hwgroup->reset_timeout != 0) { /* ide reset in progress? */ |
hwgroup | 1499 | drivers/block/ide.c | if (!reset_handler(hwgroup)) |
hwgroup | 1500 | drivers/block/ide.c | do_hwgroup_request (hwgroup); |
hwgroup | 1501 | drivers/block/ide.c | } else if (hwgroup->handler == NULL) { /* not waiting for anything? */ |
hwgroup | 1505 | drivers/block/ide.c | hwgroup->handler = NULL; |
hwgroup | 1506 | drivers/block/ide.c | if (hwgroup->hwif->dmaproc) |
hwgroup | 1507 | drivers/block/ide.c | (void) hwgroup->hwif->dmaproc (ide_dma_abort, drive); |
hwgroup | 1509 | drivers/block/ide.c | do_hwgroup_request (hwgroup); |
hwgroup | 1537 | drivers/block/ide.c | static void unexpected_intr (int irq, ide_hwgroup_t *hwgroup) |
hwgroup | 1541 | drivers/block/ide.c | ide_hwif_t *hwif = hwgroup->hwif; |
hwgroup | 1546 | drivers/block/ide.c | if (hwgroup->reset_timeout != 0) { |
hwgroup | 1547 | drivers/block/ide.c | if (!reset_handler(hwgroup)) |
hwgroup | 1548 | drivers/block/ide.c | do_hwgroup_request (hwgroup); |
hwgroup | 1571 | drivers/block/ide.c | } while ((hwif = hwif->next) != hwgroup->hwif); |
hwgroup | 1579 | drivers/block/ide.c | ide_hwgroup_t *hwgroup = irq_to_hwgroup[irq]; |
hwgroup | 1582 | drivers/block/ide.c | if (irq == hwgroup->hwif->irq && (handler = hwgroup->handler) != NULL) { |
hwgroup | 1583 | drivers/block/ide.c | ide_drive_t *drive = hwgroup->drive; |
hwgroup | 1584 | drivers/block/ide.c | hwgroup->handler = NULL; |
hwgroup | 1585 | drivers/block/ide.c | del_timer(&(hwgroup->timer)); |
hwgroup | 1590 | drivers/block/ide.c | unexpected_intr(irq, hwgroup); |
hwgroup | 2774 | drivers/block/ide.c | ide_hwgroup_t *hwgroup = irq_to_hwgroup[irq]; |
hwgroup | 2782 | drivers/block/ide.c | if (hwgroup == NULL) { |
hwgroup | 2794 | drivers/block/ide.c | hwgroup = ide_hwifs[1].hwgroup; |
hwgroup | 2799 | drivers/block/ide.c | if (hwgroup == NULL) { |
hwgroup | 2800 | drivers/block/ide.c | hwgroup = kmalloc (sizeof(ide_hwgroup_t), GFP_KERNEL); |
hwgroup | 2801 | drivers/block/ide.c | hwgroup->hwif = hwif->next = hwif; |
hwgroup | 2802 | drivers/block/ide.c | hwgroup->rq = NULL; |
hwgroup | 2803 | drivers/block/ide.c | hwgroup->handler = NULL; |
hwgroup | 2804 | drivers/block/ide.c | hwgroup->drive = NULL; |
hwgroup | 2805 | drivers/block/ide.c | hwgroup->reset_timeout = 0; |
hwgroup | 2807 | drivers/block/ide.c | hwgroup->doing_atapi_reset = 0; |
hwgroup | 2809 | drivers/block/ide.c | init_timer(&hwgroup->timer); |
hwgroup | 2810 | drivers/block/ide.c | hwgroup->timer.function = &timer_expiry; |
hwgroup | 2811 | drivers/block/ide.c | hwgroup->timer.data = (unsigned long) hwgroup; |
hwgroup | 2813 | drivers/block/ide.c | hwif->next = hwgroup->hwif->next; |
hwgroup | 2814 | drivers/block/ide.c | hwgroup->hwif->next = hwif; |
hwgroup | 2816 | drivers/block/ide.c | hwif->hwgroup = hwgroup; |
hwgroup | 2817 | drivers/block/ide.c | irq_to_hwgroup[irq] = hwgroup; |
hwgroup | 2823 | drivers/block/ide.c | if (hwgroup->hwif != hwif) |
hwgroup | 2824 | drivers/block/ide.c | printk(" (serialized with %s)", hwgroup->hwif->name); |
hwgroup | 92 | drivers/block/ide.h | #define HWGROUP(drive) ((ide_hwgroup_t *)(HWIF(drive)->hwgroup)) |
hwgroup | 316 | drivers/block/ide.h | void *hwgroup; /* actually (ide_hwgroup_t *) */ |
hwgroup | 340 | include/linux/blk.h | void ide_end_request(byte uptodate, ide_hwgroup_t *hwgroup); |
hwgroup | 344 | include/linux/blk.h | void ide_end_request(byte uptodate, ide_hwgroup_t *hwgroup) { |
hwgroup | 345 | include/linux/blk.h | struct request *req = hwgroup->rq; |
hwgroup | 378 | include/linux/blk.h | hwgroup->rq = NULL; |