Changeset View
Changeset View
Standalone View
Standalone View
sys/dev/pci/pci_host_generic_acpi.c
| Show First 20 Lines • Show All 93 Lines • ▼ Show 20 Lines | |||||
| } pci_acpi_quirks[] = { | } pci_acpi_quirks[] = { | ||||
| { "MRVL ", "CN9130 ", PCIE_ECAM_DESIGNWARE_QUIRK }, | { "MRVL ", "CN9130 ", PCIE_ECAM_DESIGNWARE_QUIRK }, | ||||
| { "MRVL ", "CN913X ", PCIE_ECAM_DESIGNWARE_QUIRK }, | { "MRVL ", "CN913X ", PCIE_ECAM_DESIGNWARE_QUIRK }, | ||||
| { "MVEBU ", "ARMADA7K", PCIE_ECAM_DESIGNWARE_QUIRK }, | { "MVEBU ", "ARMADA7K", PCIE_ECAM_DESIGNWARE_QUIRK }, | ||||
| { "MVEBU ", "ARMADA8K", PCIE_ECAM_DESIGNWARE_QUIRK }, | { "MVEBU ", "ARMADA8K", PCIE_ECAM_DESIGNWARE_QUIRK }, | ||||
| { "MVEBU ", "CN9130 ", PCIE_ECAM_DESIGNWARE_QUIRK }, | { "MVEBU ", "CN9130 ", PCIE_ECAM_DESIGNWARE_QUIRK }, | ||||
| { "MVEBU ", "CN9131 ", PCIE_ECAM_DESIGNWARE_QUIRK }, | { "MVEBU ", "CN9131 ", PCIE_ECAM_DESIGNWARE_QUIRK }, | ||||
| { "MVEBU ", "CN9132 ", PCIE_ECAM_DESIGNWARE_QUIRK }, | { "MVEBU ", "CN9132 ", PCIE_ECAM_DESIGNWARE_QUIRK }, | ||||
| { 0 }, | |||||
| }; | }; | ||||
| /* Forward prototypes */ | /* Forward prototypes */ | ||||
| static int generic_pcie_acpi_probe(device_t dev); | static int generic_pcie_acpi_probe(device_t dev); | ||||
| static ACPI_STATUS pci_host_generic_acpi_parse_resource(ACPI_RESOURCE *, void *); | static ACPI_STATUS pci_host_generic_acpi_parse_resource(ACPI_RESOURCE *, void *); | ||||
| static int generic_pcie_acpi_read_ivar(device_t, device_t, int, uintptr_t *); | static int generic_pcie_acpi_read_ivar(device_t, device_t, int, uintptr_t *); | ||||
| ▲ Show 20 Lines • Show All 86 Lines • ▼ Show 20 Lines | pci_host_generic_acpi_parse_resource(ACPI_RESOURCE *res, void *arg) | ||||
| } | } | ||||
| return (AE_OK); | return (AE_OK); | ||||
| } | } | ||||
| static void | static void | ||||
| pci_host_acpi_get_oem_quirks(struct generic_pcie_acpi_softc *sc, | pci_host_acpi_get_oem_quirks(struct generic_pcie_acpi_softc *sc, | ||||
| ACPI_TABLE_HEADER *hdr) | ACPI_TABLE_HEADER *hdr) | ||||
| { | { | ||||
| int i; | size_t i; | ||||
| for (i = 0; pci_acpi_quirks[i].quirks; i++) { | for (i = 0; i < nitems(pci_acpi_quirks); i++) { | ||||
| if (memcmp(hdr->OemId, pci_acpi_quirks[i].oem_id, | if (memcmp(hdr->OemId, pci_acpi_quirks[i].oem_id, | ||||
| ACPI_OEM_ID_SIZE) != 0) | ACPI_OEM_ID_SIZE) != 0) | ||||
| continue; | continue; | ||||
| if (memcmp(hdr->OemTableId, pci_acpi_quirks[i].oem_table_id, | if (memcmp(hdr->OemTableId, pci_acpi_quirks[i].oem_table_id, | ||||
| ACPI_OEM_TABLE_ID_SIZE) != 0) | ACPI_OEM_TABLE_ID_SIZE) != 0) | ||||
| continue; | continue; | ||||
| sc->base.quirks |= pci_acpi_quirks[i].quirks; | sc->base.quirks |= pci_acpi_quirks[i].quirks; | ||||
| } | } | ||||
| ▲ Show 20 Lines • Show All 319 Lines • Show Last 20 Lines | |||||