|
CS318 - Pintos
Pintos source browser for JHU CS318 course
|
An ATA channel (aka controller). More...

Data Fields | |
| char | name [8] |
| Name, e.g. More... | |
| uint16_t | reg_base |
| Base I/O port. More... | |
| uint8_t | irq |
| Interrupt in use. More... | |
| struct lock | lock |
| Must acquire to access the controller. More... | |
| bool | expecting_interrupt |
| True if an interrupt is expected, false if any interrupt would be spurious. More... | |
| struct semaphore | completion_wait |
| Up'd by interrupt handler. More... | |
| struct ata_disk | devices [2] |
| The devices on this channel. More... | |
An ATA channel (aka controller).
Each channel can control up to two disks.
| struct semaphore channel::completion_wait |
Up'd by interrupt handler.
Definition at line 73 of file ide.c.
Referenced by ide_init(), ide_read(), ide_write(), identify_ata_device(), and interrupt_handler().
| struct ata_disk channel::devices[2] |
The devices on this channel.
Definition at line 75 of file ide.c.
Referenced by ide_init(), and reset_channel().
| bool channel::expecting_interrupt |
True if an interrupt is expected, false if any interrupt would be spurious.
Definition at line 71 of file ide.c.
Referenced by ide_init(), interrupt_handler(), and issue_pio_command().
| uint8_t channel::irq |
Interrupt in use.
Definition at line 68 of file ide.c.
Referenced by ide_init(), and interrupt_handler().
| struct lock channel::lock |
Must acquire to access the controller.
Definition at line 70 of file ide.c.
Referenced by ide_init(), ide_read(), and ide_write().
| char channel::name[8] |
Name, e.g.
"ide0".
Definition at line 66 of file ide.c.
Referenced by ide_init(), and interrupt_handler().
| uint16_t channel::reg_base |
1.8.16