Lines Matching full:irqs
108 * @irqs: Array of interrupt vectors to populate
113 static int pcie_port_enable_irq_vec(struct pci_dev *dev, int *irqs, int mask) in pcie_port_enable_irq_vec() argument
155 irqs[PCIE_PORT_SERVICE_PME_SHIFT] = pcie_irq; in pcie_port_enable_irq_vec()
156 irqs[PCIE_PORT_SERVICE_HP_SHIFT] = pcie_irq; in pcie_port_enable_irq_vec()
157 irqs[PCIE_PORT_SERVICE_BWCTRL_SHIFT] = pcie_irq; in pcie_port_enable_irq_vec()
161 irqs[PCIE_PORT_SERVICE_AER_SHIFT] = pci_irq_vector(dev, aer); in pcie_port_enable_irq_vec()
164 irqs[PCIE_PORT_SERVICE_DPC_SHIFT] = pci_irq_vector(dev, dpc); in pcie_port_enable_irq_vec()
170 * pcie_init_service_irqs - initialize irqs for PCI Express port services
172 * @irqs: Array of irqs to populate
177 static int pcie_init_service_irqs(struct pci_dev *dev, int *irqs, int mask) in pcie_init_service_irqs() argument
182 irqs[i] = -1; in pcie_init_service_irqs()
193 if (pcie_port_enable_irq_vec(dev, irqs, mask) == 0) in pcie_init_service_irqs()
203 irqs[i] = pci_irq_vector(dev, 0); in pcie_init_service_irqs()
332 int irqs[PCIE_PORT_DEVICE_MAXSERVICES]; in pcie_port_device_register() local
346 * Initialize service irqs. Don't use service devices that in pcie_port_device_register()
349 * that can be used in the absence of irqs. Allow them to determine in pcie_port_device_register()
352 status = pcie_init_service_irqs(dev, irqs, capabilities); in pcie_port_device_register()
366 if (!pcie_device_init(dev, service, irqs[i])) in pcie_port_device_register()