| # Copyright 2019 The Fuchsia Authors |
| # |
| # Use of this source code is governed by a MIT-style |
| # license that can be found in the LICENSE file or at |
| # https://opensource.org/licenses/MIT |
| |
| import("//build/zircon/migrated_targets.gni") |
| |
| zx_library("pcie") { |
| kernel = true |
| sources = [ |
| "address_provider/designware.cc", |
| "address_provider/ecam_region.cc", |
| "address_provider/mmio.cc", |
| "address_provider/pio.cc", |
| "debug.cc", |
| "pci_config.cc", |
| "pcie_bridge.cc", |
| "pcie_bus_driver.cc", |
| "pcie_caps.cc", |
| "pcie_device.cc", |
| "pcie_irqs.cc", |
| "pcie_quirks.cc", |
| "pcie_root.cc", |
| "pcie_upstream_node.cc", |
| ] |
| deps = [ |
| "//zircon/kernel/lib/arch", |
| "//zircon/kernel/lib/console", |
| "//zircon/kernel/lib/fbl", |
| "//zircon/kernel/lib/kpci", |
| "//zircon/kernel/lib/ktl", |
| "//zircon/kernel/vm:headers", |
| "//zircon/system/ulib/pretty", |
| "//zircon/system/ulib/region-alloc", |
| ] |
| public_deps = [ |
| # <dev/address_provider/ecam_region.h> has #include <ktl/unique_ptr.h>. |
| "//zircon/kernel/lib/ktl:headers", |
| |
| # <dev/pcie_platform.h> has #include <dev/interrupt.h>. |
| "//zircon/kernel/dev/interrupt:headers", |
| |
| # <dev/pcie_bus_driver.h> has #include <region-alloc/region-alloc.h>. |
| "//zircon/system/ulib/region-alloc:headers", |
| |
| # <dev/pcie_bus_driver.h> has #include <arch/ops.h>. |
| "//zircon/kernel/lib/arch:headers", |
| ] |
| |
| # TODO(mcgrathr): Say why this is needed. |
| cflags_cc = [ "-Wno-invalid-offsetof" ] |
| } |