/* * File: pcieport_if.h * Purpose: PCI Express Port Bus Driver's IF Data Structure * * Copyright (C) 2004 Intel * Copyright (C) Tom Long Nguyen (tom.l.nguyen@intel.com) */ #ifndef _PCIEPORT_IF_H_ #define _PCIEPORT_IF_H_ /* Port Type */ #define PCIE_ANY_PORT (~0) /* Service Type */ #define PCIE_PORT_SERVICE_PME_SHIFT 0 /* Power Management Event */ #define PCIE_PORT_SERVICE_PME (1 << PCIE_PORT_SERVICE_PME_SHIFT) #define PCIE_PORT_SERVICE_AER_SHIFT 1 /* Advanced Error Reporting */ #define PCIE_PORT_SERVICE_AER (1 << PCIE_PORT_SERVICE_AER_SHIFT) #define PCIE_PORT_SERVICE_HP_SHIFT 2 /* Native Hotplug */ #define PCIE_PORT_SERVICE_HP (1 << PCIE_PORT_SERVICE_HP_SHIFT) #define PCIE_PORT_SERVICE_VC_SHIFT 3 /* Virtual Channel */ #define PCIE_PORT_SERVICE_VC (1 << PCIE_PORT_SERVICE_VC_SHIFT) #define PCIE_PORT_SERVICE_DPC_SHIFT 4 /* Downstream Port Containment */ #define PCIE_PORT_SERVICE_DPC (1 << PCIE_PORT_SERVICE_DPC_SHIFT) struct pcie_device { int irq; /* Service IRQ/MSI/MSI-X Vector */ struct pci_dev *port; /* Root/Upstream/Downstream Port */ u32 service; /* Port service this device represents */ void *priv_data; /* Service Private Data */ struct device device; /* Generic Device Interface */ }; #define to_pcie_device(d) container_of(d, struct pcie_device, device)
static inline void set_service_data(struct pcie_device *dev, void *data) { dev->priv_data = data; }Contributors
Person | Tokens | Prop | Commits | CommitProp |
Tom L. Nguyen | 22 | 100.00% | 1 | 100.00% |
Total | 22 | 100.00% | 1 | 100.00% |
Person | Tokens | Prop | Commits | CommitProp |
Tom L. Nguyen | 18 | 100.00% | 1 | 100.00% |
Total | 18 | 100.00% | 1 | 100.00% |
Person | Tokens | Prop | Commits | CommitProp |
Tom L. Nguyen | 190 | 75.10% | 1 | 14.29% |
Rafael J. Wysocki | 33 | 13.04% | 2 | 28.57% |
Yanmin Zhang | 19 | 7.51% | 1 | 14.29% |
Keith Busch | 9 | 3.56% | 1 | 14.29% |
Stephen Hemminger | 1 | 0.40% | 1 | 14.29% |
Kenji Kaneshige | 1 | 0.40% | 1 | 14.29% |
Total | 253 | 100.00% | 7 | 100.00% |