Messages in this thread | | | Date | Fri, 04 Jan 2013 09:42:54 -0700 | From | Tim Gardner <> | Subject | Re: [RFC PATCH 1/2] efi: Make 'efi_enabled' a function to query EFI facilities |
| |
On 01/04/2013 09:15 AM, Matt Fleming wrote: > On Fri, 2013-01-04 at 08:08 -0700, Tim Gardner wrote: >> On 01/03/2013 06:18 AM, Matt Fleming wrote: >>> From: Matt Fleming <matt.fleming@intel.com> >>> >> >> snip >> >>> /* >>> - * We play games with efi_enabled so that the compiler will, if possible, remove >>> - * EFI-related code altogether. >>> + * We play games with efi_enabled so that the compiler will, if >>> + * possible, remove EFI-related code altogether. >>> */ >>> +#define EFI_BOOT 0x00000001 /* Were we booted from EFI? */ >>> +#define EFI_SYSTEM_TABLES 0x00000002 /* Can we use EFI system tables? */ >>> +#define EFI_CONFIG_TABLES 0x00000004 /* Can we use EFI config tables? */ >>> +#define EFI_RUNTIME_SERVICES 0x00000004 /* Can we use runtime services? */ >>> +#define EFI_MEMMAP 0x00000008 /* Can we use EFI memory map? */ >>> +#define EFI_64BIT 0x00000010 /* Is the firmware 64-bit? */ >>> + >> >> Your use of test_bit() and set_bit() imply that these macros should be >> bit numbers, not bit masks. It'll work until you define a mask with an >> integer value greater then 31. > > They're not intended to be bitmasks in the sense that no two bits are > set in each constant (and I am aware of the upper limit). > > I have no problem changing the above values to bit numbers if that would > be less confusing. >
When you do change them to bit numbers you should also note that EFI_CONFIG_TABLES and EFI_RUNTIME_SERVICES have the same value, which I believe is in error.
rtg -- Tim Gardner tim.gardner@canonical.com
| |