History log of /freebsd/sys/dev/pci/pci_host_generic_acpi.c (Results 1 – 25 of 31)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# b3132299 29-Dec-2024 Kyle Evans <kevans@FreeBSD.org>

pci: avoid accidental clobbering of regs on some fdt platforms

Most pci controllers will just have a single reg for the config space,
but others (e.g., on Apple Silicon) may have more following that

pci: avoid accidental clobbering of regs on some fdt platforms

Most pci controllers will just have a single reg for the config space,
but others (e.g., on Apple Silicon) may have more following that to
describe, e.g., controller port space. Bump the "ranges" rid space up
to avoid overriding these other memory resources.

Reviewed by: jhb
Differential Revision: https://reviews.freebsd.org/D43921

show more ...


# 1f5c50a8 12-Dec-2024 Andrew Turner <andrew@FreeBSD.org>

pci_host_generic:Add pcib_request_feature on ACPI

In the ACPI attachment add support for the pcib_request_feature method.
This uses the common _OSC handling.

Reviewed by: imp, jhb
Sponsored by: Arm

pci_host_generic:Add pcib_request_feature on ACPI

In the ACPI attachment add support for the pcib_request_feature method.
This uses the common _OSC handling.

Reviewed by: imp, jhb
Sponsored by: Arm Ltd
Differential Revision: https://reviews.freebsd.org/D48048

show more ...


# deb36d0c 12-Dec-2024 Andrew Turner <andrew@FreeBSD.org>

pci_host_generic: Support ACPI_IVAR_HANDLE

In the ACPI attachment support the ACPI_IVAR_HANDLE ivar. While here
use the common ivar function to support the common ivars.

Reviewed by: imp, jhb
Spons

pci_host_generic: Support ACPI_IVAR_HANDLE

In the ACPI attachment support the ACPI_IVAR_HANDLE ivar. While here
use the common ivar function to support the common ivars.

Reviewed by: imp, jhb
Sponsored by: Arm Ltd
Differential Revision: https://reviews.freebsd.org/D48047

show more ...


# 18250ec6 06-Dec-2024 John Baldwin <jhb@FreeBSD.org>

Replace calls to bus_generic_attach with bus_attach_children

Reviewed by: imp
Differential Revision: https://reviews.freebsd.org/D47675


Revision tags: release/14.2.0, release/13.4.0
# 5b56413d 25-Jul-2024 Warner Losh <imp@FreeBSD.org>

newbus: globally replace device_add_child(..., -1) with DEVICE_UNIT_ANY

Sponsored by: Netflix


Revision tags: release/14.1.0
# f55e8664 22-May-2024 Andrew Turner <andrew@FreeBSD.org>

pci: Fix pci_host_generic_acpi with gcc

In pci_host_generic_acpi.c we loop over pci_acpi_quirks to check if
we need to handle any quirks. GCC doesn't like the terminatin as it
sets a fixed width str

pci: Fix pci_host_generic_acpi with gcc

In pci_host_generic_acpi.c we loop over pci_acpi_quirks to check if
we need to handle any quirks. GCC doesn't like the terminatin as it
sets a fixed width string to 0.

As this the array is only ever used in this file change to use nitems
to find when to stop the loop.

Reviewed by: brooks, imp, jhb, emaste
Sponsored by: Arm Ltd
Differential Revision: https://reviews.freebsd.org/D45265

show more ...


Revision tags: release/13.3.0, release/14.0.0
# 685dc743 16-Aug-2023 Warner Losh <imp@FreeBSD.org>

sys: Remove $FreeBSD$: one-line .c pattern

Remove /^[\s*]*__FBSDID\("\$FreeBSD\$"\);?\s*\n/


# 913d04de 24-Apr-2023 Andrew Turner <andrew@FreeBSD.org>

Add PCI_ID_OFW_IOMMU to the pci ecam ACPI driver

Teach the pci host generic ACPI attachment about PCI_ID_OFW_IOMMU. This
will be used by the arm64 smmu IOMMU driver to read the xref and ID
this inte

Add PCI_ID_OFW_IOMMU to the pci ecam ACPI driver

Teach the pci host generic ACPI attachment about PCI_ID_OFW_IOMMU. This
will be used by the arm64 smmu IOMMU driver to read the xref and ID
this interface provides in a bus-agnostic way.

Sponsored by: Arm Ltd
Differential Revision: https://reviews.freebsd.org/D39182

show more ...


Revision tags: release/13.2.0
# 896f5562 18-Jan-2023 Andrew Turner <andrew@FreeBSD.org>

Add the fixed memory type to the pci ecam driver

Add ACPI_RESOURCE_TYPE_FIXED_MEMORY32 to the PCI ECAM driver. This is
used on the Microsoft Dev Kit 2023 and reportedly the Lenovo x13s.

Reviewed by

Add the fixed memory type to the pci ecam driver

Add ACPI_RESOURCE_TYPE_FIXED_MEMORY32 to the PCI ECAM driver. This is
used on the Microsoft Dev Kit 2023 and reportedly the Lenovo x13s.

Reviewed by: Robert Clausecker <fuz@fuz.su> (Earlier version)
Tested by: Robert Clausecker <fuz@fuz.su> (Earlier version)
Sponsored by: Arm Ltd
Differential Revision: https://reviews.freebsd.org/D38031

show more ...


Revision tags: release/12.4.0, release/13.1.0
# 97a41013 07-May-2022 John Baldwin <jhb@FreeBSD.org>

pci: Remove unused devclass arguments to DRIVER_MODULE.


# 6f1fe2a0 09-Apr-2022 John Baldwin <jhb@FreeBSD.org>

pci_host_generic_acpi: Remove unused variable.


Revision tags: release/12.3.0
# e8a87253 16-Sep-2021 Marcin Wojtas <mw@FreeBSD.org>

pci_host_generic: update Synopsys device description for ACPI

The recent addition of Synopsys ECAM quirk set the
device description only for the DT variant.
Do the same in ACPI case.

Reported by: j

pci_host_generic: update Synopsys device description for ACPI

The recent addition of Synopsys ECAM quirk set the
device description only for the DT variant.
Do the same in ACPI case.

Reported by: jrtc27

show more ...


# 2de4c7f6 13-Sep-2021 Pawel Anikiel <pan@semihalf.com>

pci_host_generic: Add Synopsys Designware PCIe controller quirk

Due to the quirky nature of the Synopsys Designware PCIe IP,
the type 0 configuration is broadcast and whatever device
is plugged into

pci_host_generic: Add Synopsys Designware PCIe controller quirk

Due to the quirky nature of the Synopsys Designware PCIe IP,
the type 0 configuration is broadcast and whatever device
is plugged into slot, will appear at each 32 device
positions of bus0. Mitigate the issue by filtering out
duplicated devices on this bus for both DT and ACPI cases.

Reviewed by: mw
Sponsored by: Semihalf
MFC: after 3 weeks
Differential revision: https://reviews.freebsd.org/D31887

show more ...


Revision tags: release/13.0.0
# e0870cd4 29-Nov-2020 Andrew Turner <andrew@FreeBSD.org>

Only set the PCI bus end when we are reducing it

We read the bus end value from the _CRS method. On some systems we need
to further limit it based on the MCFG table.

Support this by setting a defau

Only set the PCI bus end when we are reducing it

We read the bus end value from the _CRS method. On some systems we need
to further limit it based on the MCFG table.

Support this by setting a default value, then update it if needed in the
_CRS table, and finally reduce it if it is past the end of the MCFG tabel.
This will allow for both systems that use either method to encode this
value.

This partially reverts r347929, removing the error printf.

Reviewed by: philip
Tested by: philip, Andrey Fesenko <f0andrey_gmail.com>
MFC after: 2 weeks
Sponsored by: Innovate UK
Differential Revision: https://reviews.freebsd.org/D27274

show more ...


Revision tags: release/12.2.0
# 9a7053ce 17-Jun-2020 Andrew Turner <andrew@FreeBSD.org>

Clean up the pci host generic driver

- Support Prefetchable Memory.
- Use the correct rman when allocating memory and ioports.
- Translate PCI addresses in bus_alloc_resource to allow physical

Clean up the pci host generic driver

- Support Prefetchable Memory.
- Use the correct rman when allocating memory and ioports.
- Translate PCI addresses in bus_alloc_resource to allow physical
addresses that are different than pci addresses.

Reviewed by: Robert Crowston <crowston_protonmail.com>
Sponsored by: Innovate UK
Differential Revision: https://reviews.freebsd.org/D25121

show more ...


Revision tags: release/11.4.0
# 44e86fbd 13-Feb-2020 Dimitry Andric <dim@FreeBSD.org>

Merge ^/head r357662 through r357854.


# 667c3fc0 11-Feb-2020 Ruslan Bukin <br@FreeBSD.org>

Add PCI Express driver for the ARM Neoverse N1 System Development
Platform (N1SDP).

Neoverse N1 is a high-performance ARM microarchitecture designed
by the ARM Holdings for the server market.

The P

Add PCI Express driver for the ARM Neoverse N1 System Development
Platform (N1SDP).

Neoverse N1 is a high-performance ARM microarchitecture designed
by the ARM Holdings for the server market.

The PCI part on N1SDP was shipped untested and suffers from some
integration issues.

For instance accessing to not existing BDFs causes System Error
(SError) exception. To mitigate this, the firmware scans the bus,
catches SErrors and creates a table with valid BDFs. That allows
us to filter-out accesses to invalid BDFs in this driver.

Also the root complex config space (BDF == 0) has an unusual
location in memory map, so remapping accesses to it is required.

Finally, the config space is restricted to 32-bit accesses only.

This was tested on the ARM boxes kindly provided by the ARM Ltd
to the DARPA CHERI Project.

In collaboration with: andrew
Reviewed by: andrew
Sponsored by: DARPA, AFRL
Differential Revision: https://reviews.freebsd.org/D23349

show more ...


# 051669e8 25-Jan-2020 Dimitry Andric <dim@FreeBSD.org>

Merge ^/head r356931 through r357118.


# c344a951 24-Jan-2020 Ruslan Bukin <br@FreeBSD.org>

o Move the software context struct to a header file.
o Make the pci_host_generic_acpi_attach() globally visible.
o Declare a new driver class.

These will be used by a new PCI root complex driver.

S

o Move the software context struct to a header file.
o Make the pci_host_generic_acpi_attach() globally visible.
o Declare a new driver class.

These will be used by a new PCI root complex driver.

Sponsored by: DARPA, AFRL

show more ...


Revision tags: release/12.1.0, release/11.3.0
# 0269ae4c 06-Jun-2019 Alan Somers <asomers@FreeBSD.org>

MFHead @348740

Sponsored by: The FreeBSD Foundation


# ec55b6c5 17-May-2019 Emmanuel Vadot <manu@FreeBSD.org>

pci: ecam: Correctly parse memory and IO region

When activating a resource do not compare the resource id to the adress.
Treat IO region as MEMORY region too.

Submitted by: Tuan Phan <tphan@amperec

pci: ecam: Correctly parse memory and IO region

When activating a resource do not compare the resource id to the adress.
Treat IO region as MEMORY region too.

Submitted by: Tuan Phan <tphan@amperecomputing.com> (Original Version)
Sponsored by: Ampere Computing, LLC
Differential Revision: https://reviews.freebsd.org/D20214

show more ...


# aa95512f 17-May-2019 Emmanuel Vadot <manu@FreeBSD.org>

pci: ecam: Do not warn on mismatch of bus_end

We cannot know the bus end number before parsing the MCFG table
so don't set the bus_end before that. If the MCFG table doesn't
exist we will set the co

pci: ecam: Do not warn on mismatch of bus_end

We cannot know the bus end number before parsing the MCFG table
so don't set the bus_end before that. If the MCFG table doesn't
exist we will set the configuration base address based on the _CBA
value and set the bus_end to the maximal number allowed by PCI.

Sponsored by: Ampere Computing, LLC

Differential Revision: https://reviews.freebsd.org/D20213

show more ...


# 9e43c218 10-Feb-2019 Dimitry Andric <dim@FreeBSD.org>

Merge ^/head r343807 through r343955.


# 13607f6d 07-Feb-2019 Jayachandran C. <jchandra@FreeBSD.org>

pci_host_generic_acpi: use IORT data for MSI/MSI-X

Use the information from IORT parsing to translate the PCI RID to
GIC ITS device ID. And similarly, use the information to find the
PIC XREF identi

pci_host_generic_acpi: use IORT data for MSI/MSI-X

Use the information from IORT parsing to translate the PCI RID to
GIC ITS device ID. And similarly, use the information to find the
PIC XREF identifier to be used for PCI devices.

Reviewed by: andrew
Differential Revision: https://reviews.freebsd.org/D18004

show more ...


Revision tags: release/12.0.0
# 3d5db455 24-Nov-2018 Dimitry Andric <dim@FreeBSD.org>

Merge ^/head r340427 through r340868.


12