Lines Matching refs:msi_desc
12 extern struct msi_msg_t *msi_arch_get_msg(struct msi_desc_t *msi_desc);
21 static __always_inline struct pci_msix_cap_t __msi_read_msix_cap_list(struct msi_desc_t *msi_desc, … in __msi_read_msix_cap_list() argument
25 …dw0 = pci_read_config(msi_desc->pci_dev->bus, msi_desc->pci_dev->device, msi_desc->pci_dev->func, … in __msi_read_msix_cap_list()
32 …pci_read_config(msi_desc->pci_dev->bus, msi_desc->pci_dev->device, msi_desc->pci_dev->func, cap_of… in __msi_read_msix_cap_list()
34 …pci_read_config(msi_desc->pci_dev->bus, msi_desc->pci_dev->device, msi_desc->pci_dev->func, cap_of… in __msi_read_msix_cap_list()
38 static __always_inline struct pci_msi_cap_t __msi_read_cap_list(struct msi_desc_t *msi_desc, uint32… in __msi_read_cap_list() argument
42 …dw0 = pci_read_config(msi_desc->pci_dev->bus, msi_desc->pci_dev->device, msi_desc->pci_dev->func, … in __msi_read_cap_list()
48 …pci_read_config(msi_desc->pci_dev->bus, msi_desc->pci_dev->device, msi_desc->pci_dev->func, cap_of… in __msi_read_cap_list()
53 …pci_read_config(msi_desc->pci_dev->bus, msi_desc->pci_dev->device, msi_desc->pci_dev->func, cap_of… in __msi_read_cap_list()
61 …cap_list.msg_data = pci_read_config(msi_desc->pci_dev->bus, msi_desc->pci_dev->device, msi_desc->p… in __msi_read_cap_list()
66 …pci_read_config(msi_desc->pci_dev->bus, msi_desc->pci_dev->device, msi_desc->pci_dev->func, cap_of… in __msi_read_cap_list()
68 …pci_read_config(msi_desc->pci_dev->bus, msi_desc->pci_dev->device, msi_desc->pci_dev->func, cap_of… in __msi_read_cap_list()
109 static __always_inline void __msix_set_entry(struct msi_desc_t *msi_desc) in __msix_set_entry() argument
112 …(uint64_t *)(msi_desc->pci_dev->msix_mmio_vaddr + msi_desc->pci_dev->msix_offset + msi_desc->msi_i… in __msix_set_entry()
113 *ptr = ((uint64_t)(msi_desc->msg.address_hi) << 32) | (msi_desc->msg.address_lo); in __msix_set_entry()
117 *ptr = ((uint64_t)(msi_desc->msg.vector_control) << 32) | (msi_desc->msg.data); in __msix_set_entry()
146 int pci_enable_msi(struct msi_desc_t *msi_desc) in pci_enable_msi() argument
148 struct pci_device_structure_header_t *ptr = msi_desc->pci_dev; in pci_enable_msi()
155 if (msi_desc->pci.msi_attribute.is_msix) in pci_enable_msi()
163 msi_desc->pci.msi_attribute.is_msix = 0; in pci_enable_msi()
171 msi_desc->pci.msi_attribute.is_msix = 0; in pci_enable_msi()
174 msi_arch_get_msg(msi_desc); in pci_enable_msi()
176 if (msi_desc->pci.msi_attribute.is_msix) // MSI-X in pci_enable_msi()
180 struct pci_msix_cap_t cap = __msi_read_msix_cap_list(msi_desc, cap_ptr); in pci_enable_msi()
182 __msix_map_table(msi_desc->pci_dev, &cap); in pci_enable_msi()
185 __msix_set_entry(msi_desc); in pci_enable_msi()
201 …message_addr = ((((uint64_t)msi_desc->msg.address_hi) << 32) | msi_desc->msg.address_lo); // 获取mes… in pci_enable_msi()
210 tmp = msi_desc->msg.data; in pci_enable_msi()