Lines Matching +full:a +full:- +full:f0 +full:- +full:9
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
17 * You should have received a copy of the GNU Lesser General Public
21 * lspci dump of a ICH-9 real device
23 …2801IR/IO/IH (ICH9R/DO/DH) 6 port SATA AHCI Controller [8086:2922] (rev 02) (prog-if 01 [AHCI 1.0])
25 …* Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- Fast…
26 …* Status: Cap+ 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR…
34 * Region 5: Memory at febf9000 (32-bit, non-prefetchable) [size=2K]
35 * Capabilities: [80] Message Signalled Interrupts: Mask- 64bit- Count=1/16 Enable+
38 * Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot+,D3cold-)
39 * Status: D0 PME-Enable- DSel=0 DScale=0 PME-
52 * 80: 05 70 09 00 0c f0 e0 fe d9 41 00 00 00 00 00 00
54 * a0: ac 00 00 00 0a 00 12 00 12 b0 10 00 48 00 00 00
59 * f0: 00 00 00 00 00 00 00 00 86 0f 02 00 00 00 00 00
71 #include "hw/ide/ahci-pci.h"
72 #include "ahci-internal.h"
110 ahci_reset(&d->ahci); in pci_ich9_reset()
117 qemu_init_irq(&d->irq, pci_ich9_ahci_update_irq, d, 0); in pci_ich9_ahci_init()
118 ahci_init(&d->ahci, DEVICE(obj)); in pci_ich9_ahci_init()
119 d->ahci.irq = &d->irq; in pci_ich9_ahci_init()
130 d->ahci.ports = 6; in pci_ich9_ahci_realize()
131 ahci_realize(&d->ahci, DEVICE(dev), pci_get_address_space(dev)); in pci_ich9_ahci_realize()
133 pci_config_set_prog_interface(dev->config, AHCI_PROGMODE_MAJOR_REV_1); in pci_ich9_ahci_realize()
135 dev->config[PCI_CACHE_LINE_SIZE] = 0x08; /* Cache line size */ in pci_ich9_ahci_realize()
136 dev->config[PCI_LATENCY_TIMER] = 0x00; /* Latency timer */ in pci_ich9_ahci_realize()
137 pci_config_set_interrupt_pin(dev->config, 1); in pci_ich9_ahci_realize()
140 dev->config[0x90] = 1 << 6; /* Address Map Register - AHCI mode */ in pci_ich9_ahci_realize()
143 &d->ahci.idp); in pci_ich9_ahci_realize()
145 &d->ahci.mem); in pci_ich9_ahci_realize()
154 sata_cap = dev->config + sata_cap_offset; in pci_ich9_ahci_realize()
158 d->ahci.idp_offset = ICH9_IDP_INDEX; in pci_ich9_ahci_realize()
164 /* Any error other than -ENOTSUP(board's MSI support is broken) in pci_ich9_ahci_realize()
165 * is a programming error. Fall back to INTx silently on -ENOTSUP */ in pci_ich9_ahci_realize()
166 assert(!ret || ret == -ENOTSUP); in pci_ich9_ahci_realize()
175 ahci_uninit(&d->ahci); in pci_ich9_uninit()
183 k->realize = pci_ich9_ahci_realize; in ich_ahci_class_init()
184 k->exit = pci_ich9_uninit; in ich_ahci_class_init()
185 k->vendor_id = PCI_VENDOR_ID_INTEL; in ich_ahci_class_init()
186 k->device_id = PCI_DEVICE_ID_INTEL_82801IR; in ich_ahci_class_init()
187 k->revision = 0x02; in ich_ahci_class_init()
188 k->class_id = PCI_CLASS_STORAGE_SATA; in ich_ahci_class_init()
189 dc->vmsd = &vmstate_ich9_ahci; in ich_ahci_class_init()
191 set_bit(DEVICE_CATEGORY_STORAGE, dc->categories); in ich_ahci_class_init()