Annotation of qemu/hw/ide/pci.h, revision 1.1.1.4

1.1       root        1: #ifndef HW_IDE_PCI_H
                      2: #define HW_IDE_PCI_H
                      3: 
                      4: #include <hw/ide/internal.h>
                      5: 
1.1.1.2   root        6: typedef struct BMDMAState {
                      7:     IDEDMA dma;
                      8:     uint8_t cmd;
                      9:     uint8_t status;
                     10:     uint32_t addr;
                     11: 
                     12:     IDEBus *bus;
                     13:     /* current transfer state */
                     14:     uint32_t cur_addr;
                     15:     uint32_t cur_prd_last;
                     16:     uint32_t cur_prd_addr;
                     17:     uint32_t cur_prd_len;
                     18:     uint8_t unit;
                     19:     BlockDriverCompletionFunc *dma_cb;
                     20:     int64_t sector_num;
                     21:     uint32_t nsector;
1.1.1.4 ! root       22:     MemoryRegion addr_ioport;
        !            23:     MemoryRegion extra_io;
1.1.1.2   root       24:     QEMUBH *bh;
                     25:     qemu_irq irq;
1.1.1.3   root       26: 
                     27:     /* Bit 0-2 and 7:   BM status register
                     28:      * Bit 3-6:         bus->error_status */
                     29:     uint8_t migration_compat_status;
1.1.1.4 ! root       30:     struct PCIIDEState *pci_dev;
1.1.1.2   root       31: } BMDMAState;
                     32: 
1.1.1.4 ! root       33: typedef struct CMD646BAR {
        !            34:     MemoryRegion cmd;
        !            35:     MemoryRegion data;
        !            36:     IDEBus *bus;
        !            37:     struct PCIIDEState *pci_dev;
        !            38: } CMD646BAR;
        !            39: 
1.1       root       40: typedef struct PCIIDEState {
                     41:     PCIDevice dev;
                     42:     IDEBus bus[2];
                     43:     BMDMAState bmdma[2];
                     44:     uint32_t secondary; /* used only for cmd646 */
1.1.1.4 ! root       45:     MemoryRegion bmdma_bar;
        !            46:     CMD646BAR cmd646_bar[2]; /* used only for cmd646 */
1.1       root       47: } PCIIDEState;
                     48: 
1.1.1.2   root       49: 
                     50: static inline IDEState *bmdma_active_if(BMDMAState *bmdma)
                     51: {
                     52:     assert(bmdma->unit != (uint8_t)-1);
                     53:     return bmdma->bus->ifs + bmdma->unit;
                     54: }
                     55: 
                     56: 
1.1.1.4 ! root       57: void bmdma_init(IDEBus *bus, BMDMAState *bm, PCIIDEState *d);
        !            58: void bmdma_cmd_writeb(BMDMAState *bm, uint32_t val);
        !            59: extern MemoryRegionOps bmdma_addr_ioport_ops;
1.1       root       60: void pci_ide_create_devs(PCIDevice *dev, DriveInfo **hd_table);
                     61: 
                     62: extern const VMStateDescription vmstate_ide_pci;
                     63: #endif

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.