Rev 1631 | Rev 2187 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 1631 | Rev 1633 | ||
---|---|---|---|
Line 260... | Line 260... | ||
260 | 260 | ||
Line 261... | Line 261... | ||
261 | return 0; |
261 | return 0; |
262 | } |
262 | } |
Line -... | Line 263... | ||
- | 263 | ||
- | 264 | ||
- | 265 | /** |
|
- | 266 | * pci_swizzle_interrupt_pin - swizzle INTx for device behind bridge |
|
- | 267 | * @dev: the PCI device |
|
- | 268 | * @pin: the INTx pin (1=INTA, 2=INTB, 3=INTD, 4=INTD) |
|
- | 269 | * |
|
- | 270 | * Perform INTx swizzling for a device behind one level of bridge. This is |
|
- | 271 | * required by section 9.1 of the PCI-to-PCI bridge specification for devices |
|
- | 272 | * behind bridges on add-in cards. For devices with ARI enabled, the slot |
|
- | 273 | * number is always 0 (see the Implementation Note in section 2.2.8.1 of |
|
- | 274 | * the PCI Express Base Specification, Revision 2.1) |
|
- | 275 | */ |
|
- | 276 | u8 pci_swizzle_interrupt_pin(struct pci_dev *dev, u8 pin) |
|
- | 277 | { |
|
- | 278 | int slot; |
|
- | 279 | ||
- | 280 | // if (pci_ari_enabled(dev->bus)) |
|
- | 281 | // slot = 0; |
|
- | 282 | // else |
|
- | 283 | slot = PCI_SLOT(dev->devfn); |
|
- | 284 | ||
- | 285 | return (((pin - 1) + slot) % 4) + 1; |
|
- | 286 | } |
|
- | 287 | ||
263 | 288 | ||
Line 264... | Line 289... | ||
264 | #if 0 |
289 | #if 0 |
Line 265... | Line 290... | ||
265 | 290 |