Home
last modified time | relevance | path

Searched refs:msi (Results 1 – 25 of 42) sorted by relevance

12

/qemu/hw/pci-host/
H A Dpnv_phb3_msi.c65 static void phb3_msi_set_p(Phb3MsiState *msi, int srcno, uint8_t gen) in phb3_msi_set_p() argument
70 ive_addr = phb3_msi_ive_addr(msi->phb, srcno); in phb3_msi_set_p()
82 static void phb3_msi_set_q(Phb3MsiState *msi, int srcno) in phb3_msi_set_q() argument
87 ive_addr = phb3_msi_ive_addr(msi->phb, srcno); in phb3_msi_set_q()
99 static void phb3_msi_try_send(Phb3MsiState *msi, int srcno, bool force) in phb3_msi_try_send() argument
101 ICSState *ics = ICS(msi); in phb3_msi_try_send()
105 if (!phb3_msi_read_ive(msi->phb, srcno, &ive)) { in phb3_msi_try_send()
128 phb3_msi_set_q(msi, srcno); in phb3_msi_try_send()
131 phb3_msi_set_p(msi, srcno, gen); in phb3_msi_try_send()
137 phb3_msi_set_q(msi, srcno); in phb3_msi_try_send()
[all …]
H A Ddesignware.c100 root->msi.intr[0].status |= BIT(val) & root->msi.intr[0].enable; in designware_pcie_root_msi_write()
102 if (root->msi.intr[0].status & ~root->msi.intr[0].mask) { in designware_pcie_root_msi_write()
103 qemu_set_irq(host->pci.msi, 1); in designware_pcie_root_msi_write()
120 MemoryRegion *mem = &root->msi.iomem; in designware_pcie_root_update_msi_mapping()
121 const uint64_t base = root->msi.base; in designware_pcie_root_update_msi_mapping()
122 const bool enable = root->msi.intr[0].enable; in designware_pcie_root_update_msi_mapping()
167 val = extract64(root->msi.base, in designware_pcie_root_config_read()
172 val = root->msi.intr[0].enable; in designware_pcie_root_config_read()
176 val = root->msi.intr[0].mask; in designware_pcie_root_config_read()
180 val = root->msi.intr[0].status; in designware_pcie_root_config_read()
[all …]
/qemu/hw/xen/
H A Dxen_pt_msi.c69 static inline uint64_t msi_addr64(XenPTMSI *msi) in msi_addr64() argument
71 return (uint64_t)msi->addr_hi << 32 | msi->addr_lo; in msi_addr64()
240 if (!s->msi) { in xen_pt_msi_set_enable()
244 return msi_msix_enable(s, s->msi->ctrl_offset, PCI_MSI_FLAGS_ENABLE, in xen_pt_msi_set_enable()
253 XenPTMSI *msi = s->msi; in xen_pt_msi_setup() local
255 if (msi->initialized) { in xen_pt_msi_setup()
261 rc = msi_msix_setup(s, msi_addr64(msi), msi->data, &pirq, false, 0, true); in xen_pt_msi_setup()
271 msi->pirq = pirq; in xen_pt_msi_setup()
279 XenPTMSI *msi = s->msi; in xen_pt_msi_update() local
282 return msi_msix_update(s, msi_addr64(msi), msi->data, msi->pirq, in xen_pt_msi_update()
[all …]
H A Dxen_pt_config_init.c1076 XenPTMSI *msi = s->msi; in xen_pt_msgctrl_reg_init() local
1090 msi->flags |= reg_field; in xen_pt_msgctrl_reg_init()
1091 msi->ctrl_offset = real_offset; in xen_pt_msgctrl_reg_init()
1092 msi->initialized = false; in xen_pt_msgctrl_reg_init()
1093 msi->mapped = false; in xen_pt_msgctrl_reg_init()
1103 XenPTMSI *msi = s->msi; in xen_pt_msgctrl_reg_write() local
1116 msi->flags |= *data & ~PCI_MSI_FLAGS_ENABLE; in xen_pt_msgctrl_reg_write()
1124 if (!msi->initialized) { in xen_pt_msgctrl_reg_write()
1142 msi->initialized = true; in xen_pt_msgctrl_reg_write()
1143 msi->mapped = true; in xen_pt_msgctrl_reg_write()
[all …]
/qemu/hw/intc/
H A Darm_gicv3_its_kvm.c47 struct kvm_msi msi; in kvm_its_send_msi() local
59 msi.address_lo = extract64(s->gits_translater_gpa, 0, 32); in kvm_its_send_msi()
60 msi.address_hi = extract64(s->gits_translater_gpa, 32, 32); in kvm_its_send_msi()
61 msi.data = le32_to_cpu(value); in kvm_its_send_msi()
62 msi.flags = KVM_MSI_VALID_DEVID; in kvm_its_send_msi()
63 msi.devid = devid; in kvm_its_send_msi()
64 memset(msi.pad, 0, sizeof(msi.pad)); in kvm_its_send_msi()
66 return kvm_vm_ioctl(kvm_state, KVM_SIGNAL_MSI, &msi); in kvm_its_send_msi()
H A Driscv_imsic.c303 struct kvm_msi msi; in riscv_imsic_write() local
305 msi.address_lo = extract64(imsic->mmio.addr + addr, 0, 32); in riscv_imsic_write()
306 msi.address_hi = extract64(imsic->mmio.addr + addr, 32, 32); in riscv_imsic_write()
307 msi.data = le32_to_cpu(value); in riscv_imsic_write()
309 kvm_vm_ioctl(kvm_state, KVM_SIGNAL_MSI, &msi); in riscv_imsic_write()
H A Dapic.c920 static void apic_send_msi(MSIMessage *msi) in apic_send_msi() argument
922 uint64_t addr = msi->address; in apic_send_msi()
923 uint32_t data = msi->data; in apic_send_msi()
1089 MSIMessage msi = { .address = addr, .data = val }; in apic_mem_write() local
1090 apic_send_msi(&msi); in apic_mem_write()
/qemu/hw/pci-bridge/
H A Dpci_bridge_dev.c50 OnOffAuto msi; member
75 bridge_dev->msi = ON_OFF_AUTO_OFF; in pci_bridge_dev_realize()
83 if (bridge_dev->msi != ON_OFF_AUTO_OFF) { in pci_bridge_dev_realize()
90 if (err && bridge_dev->msi == ON_OFF_AUTO_ON) { in pci_bridge_dev_realize()
97 assert(!local_err || bridge_dev->msi == ON_OFF_AUTO_AUTO); in pci_bridge_dev_realize()
175 DEFINE_PROP_ON_OFF_AUTO(PCI_BRIDGE_DEV_PROP_MSI, PCIBridgeDev, msi,
H A Dpcie_pci_bridge.c26 OnOffAuto msi; member
70 if (pcie_br->msi != ON_OFF_AUTO_OFF) { in OBJECT_DECLARE_SIMPLE_TYPE()
74 if (pcie_br->msi != ON_OFF_AUTO_ON) { in OBJECT_DECLARE_SIMPLE_TYPE()
127 DEFINE_PROP_ON_OFF_AUTO("msi", PCIEPCIBridge, msi, ON_OFF_AUTO_AUTO),
/qemu/hw/ppc/
H A Dspapr_pci.c282 SpaprPciMsi *msi; in rtas_ibm_change_msi() local
330 msi = (SpaprPciMsi *) g_hash_table_lookup(phb->msi, &config_addr); in rtas_ibm_change_msi()
334 if (!msi) { in rtas_ibm_change_msi()
346 g_hash_table_remove(phb->msi, &config_addr); in rtas_ibm_change_msi()
408 if (msi) { in rtas_ibm_change_msi()
409 g_hash_table_remove(phb->msi, &config_addr); in rtas_ibm_change_msi()
417 msi = g_new(SpaprPciMsi, 1); in rtas_ibm_change_msi()
418 msi->first_irq = irq; in rtas_ibm_change_msi()
419 msi->num = req_num; in rtas_ibm_change_msi()
422 g_hash_table_insert(phb->msi, config_addr_key, msi); in rtas_ibm_change_msi()
[all …]
H A De500.c395 char *msi; in ppce500_load_device_tree() local
593 msi = g_strdup_printf("/%s/msi@%llx", soc, MPC8544_MSI_REGS_OFFSET); in ppce500_load_device_tree()
594 qemu_fdt_add_subnode(fdt, msi); in ppce500_load_device_tree()
595 qemu_fdt_setprop_string(fdt, msi, "compatible", "fsl,mpic-msi"); in ppce500_load_device_tree()
596 qemu_fdt_setprop_cells(fdt, msi, "reg", MPC8544_MSI_REGS_OFFSET, 0x200); in ppce500_load_device_tree()
598 qemu_fdt_setprop_cells(fdt, msi, "msi-available-ranges", 0x0, 0x100); in ppce500_load_device_tree()
599 qemu_fdt_setprop_phandle(fdt, msi, "interrupt-parent", mpic); in ppce500_load_device_tree()
600 qemu_fdt_setprop_cells(fdt, msi, "interrupts", in ppce500_load_device_tree()
609 qemu_fdt_setprop_cell(fdt, msi, "phandle", msi_ph); in ppce500_load_device_tree()
610 qemu_fdt_setprop_cell(fdt, msi, "linux,phandle", msi_ph); in ppce500_load_device_tree()
[all …]
/qemu/hw/i386/xen/
H A Dxen_apic.c74 static void xen_send_msi(MSIMessage *msi) in xen_send_msi() argument
76 xen_hvm_inject_msi(msi->address, msi->data); in xen_send_msi()
/qemu/hw/usb/
H A Dhcd-xhci-pci.c147 if (s->msi != ON_OFF_AUTO_OFF) { in usb_xhci_pci_realize()
154 if (ret && s->msi == ON_OFF_AUTO_ON) { in usb_xhci_pci_realize()
161 assert(!err || s->msi == ON_OFF_AUTO_AUTO); in usb_xhci_pci_realize()
220 DEFINE_PROP_ON_OFF_AUTO("msi", XHCIPciState, msi, ON_OFF_AUTO_AUTO),
272 s->msi = ON_OFF_AUTO_OFF; in qemu_xhci_instance_init()
H A Dhcd-xhci-pci.h41 OnOffAuto msi; member
/qemu/scripts/
H A Dextract-vsssdk-headers29 tail -c +$(($offset+1)) -- "$1" > vsssdk.msi
32 msiextract -C $tmpdir vsssdk.msi
/qemu/include/hw/pci-host/
H A Ddesignware.h80 DesignwarePCIEMSI msi; member
96 qemu_irq msi; member
H A Dspapr.h70 GHashTable *msi; member
/qemu/docs/system/i386/
H A Dkvm-pv.rst24 ``kvm-msi-ext-dest-id`` feature is enabled by default in x2apic mode with split
77 ``kvm-msi-ext-dest-id``
/qemu/hw/audio/
H A Dintel-hda.c198 OnOffAuto msi; member
261 bool msi = msi_enabled(&d->pci); in intel_hda_update_irq() local
271 level, msi ? "msi" : "intx"); in intel_hda_update_irq()
272 if (msi) { in intel_hda_update_irq()
1103 if (d->msi != ON_OFF_AUTO_OFF) { in intel_hda_realize()
1109 if (ret && d->msi == ON_OFF_AUTO_ON) { in intel_hda_realize()
1116 assert(!err || d->msi == ON_OFF_AUTO_AUTO); in intel_hda_realize()
1219 DEFINE_PROP_ON_OFF_AUTO("msi", IntelHDAState, msi, ON_OFF_AUTO_AUTO),
/qemu/pc-bios/dtb/
H A Dcanyonlands.dts439 enable-msi-hole;
548 MSI: ppc4xx-msi@C10000000 {
549 compatible = "amcc,ppc4xx-msi", "ppc4xx-msi";
552 msi-data = <0x00000000>;
553 msi-mask = <0x44440000>;
/qemu/hw/pci/
H A Dmeson.build3 'msi.c',
/qemu/hw/scsi/
H A Dmptsas.h36 OnOffAuto msi; member
/qemu/accel/kvm/
H A Dkvm-all.c27 #include "hw/pci/msi.h"
2148 struct kvm_msi msi; in kvm_irqchip_send_msi()
2150 msi.address_lo = (uint32_t)msg.address; in kvm_irqchip_send_msi()
2151 msi.address_hi = msg.address >> 32; in kvm_irqchip_send_msi()
2152 msi.data = le32_to_cpu(msg.data); in kvm_irqchip_send_msi()
2153 msi.flags = 0; in kvm_irqchip_send_msi()
2154 memset(msi.pad, 0, sizeof(msi.pad)); in kvm_irqchip_send_msi()
2156 return kvm_vm_ioctl(s, KVM_SIGNAL_MSI, &msi); in kvm_irqchip_send_msi()
2186 kroute.u.msi in kvm_irqchip_add_msi_route()
2147 struct kvm_msi msi; kvm_irqchip_send_msi() local
[all...]
/qemu/include/hw/ppc/
H A Dopenpic.h169 OpenPICMSI msi[MAX_MSI]; member
/qemu/qga/
H A Dmeson.build157 output: 'qemu-ga-@0@.msi'.format(host_arch),
171 alias_target('msi', qga_msi) run

12