STRUCT PCI_EPC_MAP(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– struct pci_epc_map(9) πŸ’–

okay bestie, welcome to the Kernel API Manual β€” this page is all about struct pci_epc_map(9), and it's literally giving β€œhere's the info you need about EPC memory for mapping a RC PCI address range.” slay. πŸ’…


🌸 NAME 🌸

struct pci_epc_map β€” literally the information about EPC memory for mapping a RC PCI address range. that's the whole vibe. ✨


✨ SYNOPSIS ✨

here's the struct in all its glory, no cap:

struct pci_epc_map {
    u64 pci_addr;
    size_t pci_size;
    u64 map_pci_addr;
    size_t map_size;
    phys_addr_t phys_base;
    phys_addr_t phys_addr;
    void __iomem    *virt_base;
    void __iomem    *virt_addr;
 };

πŸ’… Members πŸ’…

  • pci_addr β€” the start address of the RC PCI address range you're mapping. periodt.
  • pci_size β€” the size of the RC PCI address range mapped from pci_addr.
  • map_pci_addr β€” the RC PCI address used as the first address mapped. lowkey it may be lower than pci_addr.
  • map_size β€” the size of the controller memory needed for mapping the RC PCI address range map_pci_addr..pci_addr+pci_size.
  • phys_base β€” the base physical address of the allocated EPC memory for mapping the RC PCI address range.
  • phys_addr β€” the physical address at which pci_addr is mapped.
  • virt_base β€” the base virtual address of the allocated EPC memory for mapping the RC PCI address range.
  • virt_addr β€” the virtual address at which pci_addr is mapped.

πŸ¦‹ SEE ALSO πŸ¦‹

Kernel file ./include/linux/pci-epc.h is the main character, and the whole friend group is:

  • enum pci_epc_aux_resource_type(9)
  • struct pci_epc_aux_resource(9)
  • struct pci_epc_ops(9)
  • struct pci_epc_mem_window(9)
  • struct pci_epc_mem(9)
  • struct pci_epc(9)
  • enum pci_epc_bar_type(9)
  • enum pci_epc_bar_rsvd_region_type(9)
  • struct pci_epc_bar_rsvd_region(9)
  • struct pci_epc_bar_desc(9)
  • struct pci_epc_features(9)

that's the tea β˜• this page comes from ./include/linux, dated October 2026, and it's all about struct pci_epc_map(9) β€” bye bestie! πŸ«ΆπŸ’–

πŸ“¦ where this page comes from