Home | History | Annotate | Download | only in pci
History log of /src/sys/arch/x86/pci/pci_msi_machdep.c
RevisionDateAuthorComments
 1.19  21-Nov-2023  gutteridge pci_machdep.c & pci_msi_machdep.c: comment fixes

Correct spelling and grammar in some comments.
 1.18  13-May-2023  andvar s/requied/required/ in comments (likely grammar should be also improved in the
future).
 1.17  23-May-2022  bouyer Work in progress on MSI/MSI-X on Xen (MSI works on my hardware, more work
needed for MSI-X):
- Xen silently rejects 32 bits writes to MSI configuration registers
(especially when setting PCI_MSI_CTL_MSI_ENABLE/PCI_MSIX_CTL_ENABLE),
it expects 16 bits writes. So introduce a pci_conf_write16(),
only available on XENPV (and working only for mode 1 without
PCI_OVERRIDE_CONF_WRITE) and use it to enable MSI or MSI-X on XENPV.
- for multi-MSI vectors, Xen allocates all of them in a single hypercall,
so it's not convenient to do it at intr_establish() time.
So do it at alloc() time and register the pirqs in the msipic structure.
xen_pic_to_gsi() now just returns the values cached in the msipic.
As a bonus, if the PHYSDEVOP_map_pirq hypercall fails we can fail
the alloc() and we don't need the xen_pci_msi*_probe() hacks.

options NO_PCI_MSI_MSIX still on by default for XEN3_DOM0.
 1.16  05-Dec-2021  msaitoh s/futher/further/ in comment.
 1.15  14-Mar-2021  skrll Remoave an extra space from a comment
 1.14  19-Jul-2020  jdolecek branches: 1.14.2;
for Xen MSI, fallback to INTx when PHYSDEVOP_map_pirq fails for the device

apparently Xen requires VT-d to be enabled in BIOS for PHYSDEVOP_map_pirq
to work, this change makes it work on systems with VT-d disabled or missing

adresses the panic part of PR port-xen/55285 by Patrick Welche
 1.13  28-Jul-2017  maxv branches: 1.13.2;
Don't include malloc.h.
 1.12  01-Jun-2017  chs remove checks for failure after memory allocation calls that cannot fail:

kmem_alloc() with KM_SLEEP
kmem_zalloc() with KM_SLEEP
percpu_alloc()
pserialize_create()
psref_class_create()

all of these paths include an assertion that the allocation has not failed,
so callers should not assert that again.
 1.11  14-Apr-2017  knakahara disable msi/msix when the system doesn't detect ioapic. This would fix PR kern/52111.

Some system does not detect ioapic when "boot -1", disable acpi, and so on.
In such cases, msi/msix doesn't work, so disable them.

This patch is implemented by nonaka@n.o, I just commit by proxy, thanks.
 1.10  28-Nov-2016  knakahara branches: 1.10.2;
fix build of amd64/i386 with NO_PCI_MSI_MSIX option.
 1.9  17-Aug-2015  knakahara branches: 1.9.2;
Add kernel code to support intrctl(8).
 1.8  13-Aug-2015  msaitoh - Don't take pci_attach_args as an argument in pci_msi[x]_count().
- Move prototypes of pci_msi[x]_count() from x86/x86/pci_machdep_common to
sys/dev/pci/pcivar.h.
- Move pci_msi[x]_count() from x86/pci/pci_msi_machdep.c to sys/dev/pci/pci.c
 1.7  11-Aug-2015  msaitoh Add missing opt_intrdebug.h.
 1.6  22-Jun-2015  msaitoh Don't check PCI_FLAGS_"MSI"_OKAY in pci_"msix"_alloc_common().
OK'd by knakahara.
 1.5  15-May-2015  knakahara branches: 1.5.2;
pci_msi_string() must be used by MD code only.
 1.4  15-May-2015  knakahara refactor: change function names and move them.
 1.3  15-May-2015  knakahara unify INTx, MSI and MSI-X APIs without alloc. (alloc API is under discussion)
 1.2  08-May-2015  knakahara add a const qualifier to struct pci_attach_args *pa argument
 1.1  27-Apr-2015  knakahara add x86 MD MSI/MSI-X support code.
 1.5.2.5  28-Aug-2017  skrll Sync with HEAD
 1.5.2.4  05-Dec-2016  skrll Sync with HEAD
 1.5.2.3  22-Sep-2015  skrll Sync with HEAD
 1.5.2.2  06-Jun-2015  skrll Sync with HEAD
 1.5.2.1  15-May-2015  skrll file pci_msi_machdep.c was added on branch nick-nhusb on 2015-06-06 14:40:04 +0000
 1.9.2.2  26-Apr-2017  pgoyette Sync with HEAD
 1.9.2.1  07-Jan-2017  pgoyette Sync with HEAD. (Note that most of these changes are simply $NetBSD$
tag issues.)
 1.10.2.1  21-Apr-2017  bouyer Sync with HEAD
 1.13.2.2  03-Dec-2017  jdolecek update from HEAD
 1.13.2.1  28-Jul-2017  jdolecek file pci_msi_machdep.c was added on branch tls-maxphys on 2017-12-03 11:36:50 +0000
 1.14.2.1  03-Apr-2021  thorpej Sync with HEAD.

RSS XML Feed