[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20120324184238.GB13978@phenom.dumpdata.com>
Date: Sat, 24 Mar 2012 14:42:38 -0400
From: Konrad Rzeszutek Wilk <konrad.wilk@...cle.com>
To: "H. Peter Anvin" <hpa@...or.com>
Cc: Thomas Renninger <trenn@...e.de>, eric.piel@...mplin-utc.net,
vojcek@...n.pl, dsdt@...gusch.at, linux-acpi@...r.kernel.org,
linux-kernel@...r.kernel.org, x86@...nel.org,
Lin Ming <ming.m.lin@...el.com>, lenb@...nel.org,
robert.moore@...el.com, Al Viro <viro@...iv.linux.org.uk>
Subject: Re: [PATCH] ACPI: Implement overriding of arbitrary ACPI tables via
initrd
> 2. We create a new simple header (just a magic number, an identifier
> for the type of data, and a length) for each of the early-initrd
> objects:
>
> struct early_initrd_header {
> u64 magic; /* 0xa5a46ce422d8f5a1 */
Probably should also have:
u32 version;
in case we decide to expand this structure in the future, and:
> u32 type; /* 1 = file data, 2 = ACPI, 3 = microcode... */
> u32 length; /* Length of data object */
> };
and encapsulate the whole thing in a 4K union?
>
> XXX: Should we make this a defined endianness (presumably
> bigendian), or use host-endianness? I would guess the former might
> be better...
Perhaps the header should be in big-endian (that is the same as the network
byte order, right?) and each sub-type can define its own endian?
The sub-types could be:
struct microcode_type {
u64 magic;
u32 version;
#define BIG_ENDIAN 1<<1
#define LITTLE_ENDIAN 1<<2
u32 flags;
}
and that could be attached to the end of the 'early_initrd_header' ?
>
> Either of these allow one piece of code to quickly bypass bits that
> doesn't belong to it.
>
> Thoughts?
>
> -hpa
> --
> To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
> the body of a message to majordomo@...r.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists