Re: [PATCH 1/7] x86/boot: adding hw subarch ID for Moorestown

Thomas Gleixner
2009-08-29T16:59:42Z

On Fri, 28 Aug 2009, Pan, Jacob jun wrote:
> >From 2de4f68e7b0403bb39954d7c2e3d5097d0e6e3ac Mon Sep 17 00:00:00 2001
> From: Jacob Pan <jacob.jun.pan@intel.com>
> Date: Thu, 11 Jun 2009 20:34:47 -0700
> Subject: [PATCH] x86/boot: adding hw subarch ID for Moorestown
>
> x86 bootprotocol 2.07 has introduced hardware_subarch ID in the boot
> parameters provided by FW. We use it to identify Moorestown platforms.
>
> The subarchitecture ID will help select a set of platform features and
> x86_quirks.
>
> Signed-off-by: Jacob Pan <jacob.jun.pan@intel.com>
> ---
> Documentation/x86/boot.txt | 1 +
> arch/x86/include/asm/bootparam.h | 11 +++++++++++
> 2 files changed, 12 insertions(+), 0 deletions(-)
>
> diff --git a/Documentation/x86/boot.txt b/Documentation/x86/boot.txt
> index 8da3a79..30b43e1 100644
> --- a/Documentation/x86/boot.txt
> +++ b/Documentation/x86/boot.txt
> @@ -599,6 +599,7 @@ Protocol: 2.07+
> 0x00000000 The default x86/PC environment
> 0x00000001 lguest
> 0x00000002 Xen
> + 0x00000003 Moorestown MID
>
> Field name: hardware_subarch_data
> Type: write (subarch-dependent)
> diff --git a/arch/x86/include/asm/bootparam.h b/arch/x86/include/asm/bootparam.h
> index 1724e8d..631cae9 100644
> --- a/arch/x86/include/asm/bootparam.h
> +++ b/arch/x86/include/asm/bootparam.h
> @@ -109,4 +109,15 @@ struct boot_params {
> __u8 _pad9[276]; /* 0xeec */
> } __attribute__((packed));
>
> +#define N_X86_SUBARCHS 4

Grr.

> +enum {
> + X86_SUBARCH_PC = 0,
> + X86_SUBARCH_LGUEST,
> + X86_SUBARCH_XEN,
> + X86_SUBARCH_MRST,

X86_NR_SUBARCHS,

perhaps ?

Also this patch will result in boot failure when paravirt is
enabled. head_32.S wants to be tweaked as well.

Thanks,

tglx