OLD | NEW |
1 #ifndef _LINUX_EFI_H | 1 #ifndef _LINUX_EFI_H |
2 #define _LINUX_EFI_H | 2 #define _LINUX_EFI_H |
3 | 3 |
4 /* | 4 /* |
5 * Extensible Firmware Interface | 5 * Extensible Firmware Interface |
6 * Based on 'Extensible Firmware Interface Specification' version 0.9, April 30,
1999 | 6 * Based on 'Extensible Firmware Interface Specification' version 0.9, April 30,
1999 |
7 * | 7 * |
8 * Copyright (C) 1999 VA Linux Systems | 8 * Copyright (C) 1999 VA Linux Systems |
9 * Copyright (C) 1999 Walt Drummond <drummond@valinux.com> | 9 * Copyright (C) 1999 Walt Drummond <drummond@valinux.com> |
10 * Copyright (C) 1999, 2002-2003 Hewlett-Packard Co. | 10 * Copyright (C) 1999, 2002-2003 Hewlett-Packard Co. |
(...skipping 306 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
317 extern u32 efi_mem_type (unsigned long phys_addr); | 317 extern u32 efi_mem_type (unsigned long phys_addr); |
318 extern u64 efi_mem_attributes (unsigned long phys_addr); | 318 extern u64 efi_mem_attributes (unsigned long phys_addr); |
319 extern u64 efi_mem_attribute (unsigned long phys_addr, unsigned long size); | 319 extern u64 efi_mem_attribute (unsigned long phys_addr, unsigned long size); |
320 extern int __init efi_uart_console_only (void); | 320 extern int __init efi_uart_console_only (void); |
321 extern void efi_initialize_iomem_resources(struct resource *code_resource, | 321 extern void efi_initialize_iomem_resources(struct resource *code_resource, |
322 struct resource *data_resource, struct resource *bss_resource); | 322 struct resource *data_resource, struct resource *bss_resource); |
323 extern unsigned long efi_get_time(void); | 323 extern unsigned long efi_get_time(void); |
324 extern int efi_set_rtc_mmss(unsigned long nowtime); | 324 extern int efi_set_rtc_mmss(unsigned long nowtime); |
325 extern struct efi_memory_map memmap; | 325 extern struct efi_memory_map memmap; |
326 | 326 |
| 327 #ifdef CONFIG_EFI_PARTITION |
| 328 struct block_device; |
| 329 extern int efi_find_partition(efi_guid_t *guid, struct block_device *bdev); |
| 330 #endif |
| 331 |
327 /** | 332 /** |
328 * efi_range_is_wc - check the WC bit on an address range | 333 * efi_range_is_wc - check the WC bit on an address range |
329 * @start: starting kvirt address | 334 * @start: starting kvirt address |
330 * @len: length of range | 335 * @len: length of range |
331 * | 336 * |
332 * Consult the EFI memory map and make sure it's ok to set this range WC. | 337 * Consult the EFI memory map and make sure it's ok to set this range WC. |
333 * Returns true or false. | 338 * Returns true or false. |
334 */ | 339 */ |
335 static inline int efi_range_is_wc(unsigned long start, unsigned long len) | 340 static inline int efi_range_is_wc(unsigned long start, unsigned long len) |
336 { | 341 { |
(...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
414 u16 length; | 419 u16 length; |
415 } __attribute ((packed)); | 420 } __attribute ((packed)); |
416 | 421 |
417 static inline void memrange_efi_to_native(u64 *addr, u64 *npages) | 422 static inline void memrange_efi_to_native(u64 *addr, u64 *npages) |
418 { | 423 { |
419 *npages = PFN_UP(*addr + (*npages<<EFI_PAGE_SHIFT)) - PFN_DOWN(*addr); | 424 *npages = PFN_UP(*addr + (*npages<<EFI_PAGE_SHIFT)) - PFN_DOWN(*addr); |
420 *addr &= PAGE_MASK; | 425 *addr &= PAGE_MASK; |
421 } | 426 } |
422 | 427 |
423 #endif /* _LINUX_EFI_H */ | 428 #endif /* _LINUX_EFI_H */ |
OLD | NEW |