[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH V4 10/15] Add SMBIOS and runtime services setup arch functions.



On Thu, 11 Sep 2014, Roy Franz wrote:
> On Thu, Sep 11, 2014 at 7:44 AM, Jan Beulich <JBeulich@xxxxxxxx> wrote:
> >>>> On 10.09.14 at 02:52, <roy.franz@xxxxxxxxxx> wrote:
> >> @@ -805,49 +801,13 @@ efi_start(EFI_HANDLE ImageHandle, EFI_SYSTEM_TABLE 
> >> *SystemTable)
> >>          boot_cpu_data.x86_capability[1] = cpuid_ext_features;
> >>      }
> >>
> >> -    /* Obtain basic table pointers. */
> >> -    for ( i = 0; i < efi_num_ct; ++i )
> >> -    {
> >> -        static EFI_GUID __initdata acpi2_guid = ACPI_20_TABLE_GUID;
> >> -        static EFI_GUID __initdata acpi_guid = ACPI_TABLE_GUID;
> >> -        static EFI_GUID __initdata mps_guid = MPS_TABLE_GUID;
> >> -        static EFI_GUID __initdata smbios_guid = SMBIOS_TABLE_GUID;
> >> -
> >> -        if ( match_guid(&acpi2_guid, &efi_ct[i].VendorGuid) )
> >> -            efi.acpi20 = (long)efi_ct[i].VendorTable;
> >> -        if ( match_guid(&acpi_guid, &efi_ct[i].VendorGuid) )
> >> -            efi.acpi = (long)efi_ct[i].VendorTable;
> >> -        if ( match_guid(&mps_guid, &efi_ct[i].VendorGuid) )
> >> -            efi.mps = (long)efi_ct[i].VendorTable;
> >> -        if ( match_guid(&smbios_guid, &efi_ct[i].VendorGuid) )
> >> -            efi.smbios = (long)efi_ct[i].VendorTable;
> >> -    }
> >
> > The only arch specific things I can see throughout this entire patch
> > are the specific GUIDs and which fields they go into in the internal
> > structure. The GUIDs can be put in a table, and the fields can be
> > represented e.g. via offsetof(), paired with the respective GUID.
> >
> > Jan
> >
> The efi structure is defined in runtime.c for runtime use, which is
> why I moved it,
> as I am not addressing runtime services in this patchset.  This is an (ab)use 
> of
> the architecture specific head file, using it for features that are
> currently only implemented
> on that architecture, rather than fundamental architectural differences.

It might be better to add a couple of flags, such as
support_runtime_services and support_smbios. They would be true on x86
and false on arm. The intention would be clearer that way.

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.