diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2012-12-13 15:14:47 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2012-12-13 15:14:47 -0500 |
commit | 193c0d682525987db59ac3a24531a77e4947aa95 (patch) | |
tree | 7b58346171c4d07e2c2ee6c3c469c325495149a4 /include/linux/efi.h | |
parent | 8b0cab14951fbf8126795ab301835a8f8126a988 (diff) | |
parent | 1cb73f8c479e66541fefd3f7fa547b1fa56cdc54 (diff) |
Merge tag 'for-3.8' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci
Pull PCI update from Bjorn Helgaas:
"Host bridge hotplug:
- Untangle _PRT from struct pci_bus (Bjorn Helgaas)
- Request _OSC control before scanning root bus (Taku Izumi)
- Assign resources when adding host bridge (Yinghai Lu)
- Remove root bus when removing host bridge (Yinghai Lu)
- Remove _PRT during hot remove (Yinghai Lu)
SRIOV
- Add sysfs knobs to control numVFs (Don Dutile)
Power management
- Notify devices when power resource turned on (Huang Ying)
Bug fixes
- Work around broken _SEG on HP xw9300 (Bjorn Helgaas)
- Keep runtime PM enabled for unbound PCI devices (Huang Ying)
- Fix Optimus dual-GPU runtime D3 suspend issue (Dave Airlie)
- Fix xen frontend shutdown issue (David Vrabel)
- Work around PLX PCI 9050 BAR alignment erratum (Ian Abbott)
Miscellaneous
- Add GPL license for drivers/pci/ioapic (Andrew Cooks)
- Add standard PCI-X, PCIe ASPM register #defines (Bjorn Helgaas)
- NumaChip remote PCI support (Daniel Blueman)
- Fix PCIe Link Capabilities Supported Link Speed definition (Jingoo
Han)
- Convert dev_printk() to dev_info(), etc (Joe Perches)
- Add support for non PCI BAR ROM data (Matthew Garrett)
- Add x86 support for host bridge translation offset (Mike Yoknis)
- Report success only when every driver supports AER (Vijay
Pandarathil)"
Fix up trivial conflicts.
* tag 'for-3.8' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci: (48 commits)
PCI: Use phys_addr_t for physical ROM address
x86/PCI: Add NumaChip remote PCI support
ath9k: Use standard #defines for PCIe Capability ASPM fields
iwlwifi: Use standard #defines for PCIe Capability ASPM fields
iwlwifi: collapse wrapper for pcie_capability_read_word()
iwlegacy: Use standard #defines for PCIe Capability ASPM fields
iwlegacy: collapse wrapper for pcie_capability_read_word()
cxgb3: Use standard #defines for PCIe Capability ASPM fields
PCI: Add standard PCIe Capability Link ASPM field names
PCI/portdrv: Use PCI Express Capability accessors
PCI: Use standard PCIe Capability Link register field names
x86: Use PCI setup data
PCI: Add support for non-BAR ROMs
PCI: Add pcibios_add_device
EFI: Stash ROMs if they're not in the PCI BAR
PCI: Add and use standard PCI-X Capability register names
PCI/PM: Keep runtime PM enabled for unbound PCI devices
xen-pcifront: Handle backend CLOSED without CLOSING
PCI: SRIOV control and status via sysfs (documentation)
PCI/AER: Report success only when every device has AER-aware driver
...
Diffstat (limited to 'include/linux/efi.h')
-rw-r--r-- | include/linux/efi.h | 71 |
1 files changed, 71 insertions, 0 deletions
diff --git a/include/linux/efi.h b/include/linux/efi.h index c47ec36f3f39..b02099d0b4fc 100644 --- a/include/linux/efi.h +++ b/include/linux/efi.h | |||
@@ -196,6 +196,77 @@ typedef struct { | |||
196 | void *create_event_ex; | 196 | void *create_event_ex; |
197 | } efi_boot_services_t; | 197 | } efi_boot_services_t; |
198 | 198 | ||
199 | typedef enum { | ||
200 | EfiPciIoWidthUint8, | ||
201 | EfiPciIoWidthUint16, | ||
202 | EfiPciIoWidthUint32, | ||
203 | EfiPciIoWidthUint64, | ||
204 | EfiPciIoWidthFifoUint8, | ||
205 | EfiPciIoWidthFifoUint16, | ||
206 | EfiPciIoWidthFifoUint32, | ||
207 | EfiPciIoWidthFifoUint64, | ||
208 | EfiPciIoWidthFillUint8, | ||
209 | EfiPciIoWidthFillUint16, | ||
210 | EfiPciIoWidthFillUint32, | ||
211 | EfiPciIoWidthFillUint64, | ||
212 | EfiPciIoWidthMaximum | ||
213 | } EFI_PCI_IO_PROTOCOL_WIDTH; | ||
214 | |||
215 | typedef enum { | ||
216 | EfiPciIoAttributeOperationGet, | ||
217 | EfiPciIoAttributeOperationSet, | ||
218 | EfiPciIoAttributeOperationEnable, | ||
219 | EfiPciIoAttributeOperationDisable, | ||
220 | EfiPciIoAttributeOperationSupported, | ||
221 | EfiPciIoAttributeOperationMaximum | ||
222 | } EFI_PCI_IO_PROTOCOL_ATTRIBUTE_OPERATION; | ||
223 | |||
224 | |||
225 | typedef struct { | ||
226 | void *read; | ||
227 | void *write; | ||
228 | } efi_pci_io_protocol_access_t; | ||
229 | |||
230 | typedef struct { | ||
231 | void *poll_mem; | ||
232 | void *poll_io; | ||
233 | efi_pci_io_protocol_access_t mem; | ||
234 | efi_pci_io_protocol_access_t io; | ||
235 | efi_pci_io_protocol_access_t pci; | ||
236 | void *copy_mem; | ||
237 | void *map; | ||
238 | void *unmap; | ||
239 | void *allocate_buffer; | ||
240 | void *free_buffer; | ||
241 | void *flush; | ||
242 | void *get_location; | ||
243 | void *attributes; | ||
244 | void *get_bar_attributes; | ||
245 | void *set_bar_attributes; | ||
246 | uint64_t romsize; | ||
247 | void *romimage; | ||
248 | } efi_pci_io_protocol; | ||
249 | |||
250 | #define EFI_PCI_IO_ATTRIBUTE_ISA_MOTHERBOARD_IO 0x0001 | ||
251 | #define EFI_PCI_IO_ATTRIBUTE_ISA_IO 0x0002 | ||
252 | #define EFI_PCI_IO_ATTRIBUTE_VGA_PALETTE_IO 0x0004 | ||
253 | #define EFI_PCI_IO_ATTRIBUTE_VGA_MEMORY 0x0008 | ||
254 | #define EFI_PCI_IO_ATTRIBUTE_VGA_IO 0x0010 | ||
255 | #define EFI_PCI_IO_ATTRIBUTE_IDE_PRIMARY_IO 0x0020 | ||
256 | #define EFI_PCI_IO_ATTRIBUTE_IDE_SECONDARY_IO 0x0040 | ||
257 | #define EFI_PCI_IO_ATTRIBUTE_MEMORY_WRITE_COMBINE 0x0080 | ||
258 | #define EFI_PCI_IO_ATTRIBUTE_IO 0x0100 | ||
259 | #define EFI_PCI_IO_ATTRIBUTE_MEMORY 0x0200 | ||
260 | #define EFI_PCI_IO_ATTRIBUTE_BUS_MASTER 0x0400 | ||
261 | #define EFI_PCI_IO_ATTRIBUTE_MEMORY_CACHED 0x0800 | ||
262 | #define EFI_PCI_IO_ATTRIBUTE_MEMORY_DISABLE 0x1000 | ||
263 | #define EFI_PCI_IO_ATTRIBUTE_EMBEDDED_DEVICE 0x2000 | ||
264 | #define EFI_PCI_IO_ATTRIBUTE_EMBEDDED_ROM 0x4000 | ||
265 | #define EFI_PCI_IO_ATTRIBUTE_DUAL_ADDRESS_CYCLE 0x8000 | ||
266 | #define EFI_PCI_IO_ATTRIBUTE_ISA_IO_16 0x10000 | ||
267 | #define EFI_PCI_IO_ATTRIBUTE_VGA_PALETTE_IO_16 0x20000 | ||
268 | #define EFI_PCI_IO_ATTRIBUTE_VGA_IO_16 0x40000 | ||
269 | |||
199 | /* | 270 | /* |
200 | * Types and defines for EFI ResetSystem | 271 | * Types and defines for EFI ResetSystem |
201 | */ | 272 | */ |