mirror of
https://git.savannah.gnu.org/git/grub.git
synced 2026-10-21 06:49:35 +00:00
* doc/multiboot.texi: New tags for EFI system table, DHCP ACK, SMBIOS
and RSDP.
This commit is contained in:
1 parent
b915f0e9b0
commit
6038ec9ee1
3 files changed
+140
No files matched your search
@@ -1,3 +1,8 @@
|
||||
2010-09-20 Vladimir Serbinenko <phcoder@gmail.com>
|
||||
|
||||
* doc/multiboot.texi: New tags for EFI system table, DHCP ACK, SMBIOS
|
||||
and RSDP.
|
||||
|
||||
2010-07-02 Vladimir Serbinenko <phcoder@gmail.com>
|
||||
|
||||
* doc/multiboot.texi: Typo fix.
|
||||
|
||||
@@ -690,6 +690,8 @@ The OS image must leave interrupts disabled until it sets up its own
|
||||
@code{IDT}.
|
||||
@end table
|
||||
|
||||
On EFI system boot services must be terminated.
|
||||
|
||||
@node Boot information format
|
||||
@section Boot information
|
||||
@subsection Boot information format
|
||||
@@ -1044,6 +1046,88 @@ u8 | framebuffer_blue_mask_size |
|
||||
If @samp{framebuffer_type} is set to @samp{2} it means EGA text. In this case @samp{framebuffer_width} and @samp{framebuffer_height} are expressed in characters and not in pixels. @samp{framebuffer_bpp} is equal 16 (16 bits per character) and @samp{framebuffer_pitch} is expressed in bytes per text line.
|
||||
All further values of @samp{framebuffer_type} are reserved for future expansion
|
||||
|
||||
@subsection EFI 32-bit system table pointer
|
||||
@example
|
||||
@group
|
||||
+-------------------+
|
||||
u32 | type = 11 |
|
||||
u32 | size = 12 |
|
||||
u32 | pointer |
|
||||
+-------------------+
|
||||
@end group
|
||||
@end example
|
||||
|
||||
This tag contains pointer to i386 EFI system table.
|
||||
|
||||
@subsection EFI 64-bit system table pointer
|
||||
@example
|
||||
@group
|
||||
+-------------------+
|
||||
u32 | type = 12 |
|
||||
u32 | size = 16 |
|
||||
u64 | pointer |
|
||||
+-------------------+
|
||||
@end group
|
||||
@end example
|
||||
|
||||
This tag contains pointer to amd64 EFI system table.
|
||||
|
||||
@subsection SMBIOS tables
|
||||
@example
|
||||
@group
|
||||
+-------------------+
|
||||
u32 | type = 13 |
|
||||
u32 | size |
|
||||
u8 | major |
|
||||
u8 | minor |
|
||||
u8[6] | reserved |
|
||||
| smbios tables |
|
||||
+-------------------+
|
||||
@end group
|
||||
@end example
|
||||
|
||||
This tag contains a copy of SMBIOS tables as well as their version.
|
||||
|
||||
@subsection ACPI old RSDP
|
||||
@example
|
||||
@group
|
||||
+-------------------+
|
||||
u32 | type = 14 |
|
||||
u32 | size |
|
||||
| copy of RSDPv1 |
|
||||
+-------------------+
|
||||
@end group
|
||||
@end example
|
||||
|
||||
This tag contains a copy of RSDP as defined per ACPI 1.0 specification.
|
||||
|
||||
@subsection ACPI new RSDP
|
||||
@example
|
||||
@group
|
||||
+-------------------+
|
||||
u32 | type = 15 |
|
||||
u32 | size |
|
||||
| copy of RSDPv2 |
|
||||
+-------------------+
|
||||
@end group
|
||||
@end example
|
||||
|
||||
This tag contains a copy of RSDP as defined per ACPI 2.0 or later specification.
|
||||
|
||||
@subsection Networking information
|
||||
@example
|
||||
@group
|
||||
+-------------------+
|
||||
u32 | type = 16 |
|
||||
u32 | size |
|
||||
| DHCP ACK |
|
||||
+-------------------+
|
||||
@end group
|
||||
@end example
|
||||
|
||||
This tag contains network information in the format specified as DHCP. It may be either a real DHCP reply or just the configuration info in the same format. This tag appears once per card.
|
||||
|
||||
|
||||
@node Examples
|
||||
@chapter Examples
|
||||
|
||||
|
||||
@@ -52,6 +52,12 @@
|
||||
#define MULTIBOOT_TAG_TYPE_FRAMEBUFFER 8
|
||||
#define MULTIBOOT_TAG_TYPE_ELF_SECTIONS 9
|
||||
#define MULTIBOOT_TAG_TYPE_APM 10
|
||||
#define MULTIBOOT_TAG_TYPE_EFI32 11
|
||||
#define MULTIBOOT_TAG_TYPE_EFI64 12
|
||||
#define MULTIBOOT_TAG_TYPE_SMBIOS 13
|
||||
#define MULTIBOOT_TAG_TYPE_ACPI_OLD 14
|
||||
#define MULTIBOOT_TAG_TYPE_ACPI_NEW 15
|
||||
#define MULTIBOOT_TAG_TYPE_NETWORK 16
|
||||
|
||||
#define MULTIBOOT_HEADER_TAG_END 0
|
||||
#define MULTIBOOT_HEADER_TAG_INFORMATION_REQUEST 1
|
||||
@@ -309,6 +315,51 @@ struct multiboot_tag_apm
|
||||
multiboot_uint16_t dseg_len;
|
||||
};
|
||||
|
||||
struct multiboot_tag_efi32
|
||||
{
|
||||
multiboot_uint32_t type;
|
||||
multiboot_uint32_t size;
|
||||
multiboot_uint32_t pointer;
|
||||
};
|
||||
|
||||
struct multiboot_tag_efi64
|
||||
{
|
||||
multiboot_uint32_t type;
|
||||
multiboot_uint32_t size;
|
||||
multiboot_uint64_t pointer;
|
||||
};
|
||||
|
||||
struct multiboot_tag_smbios
|
||||
{
|
||||
multiboot_uint32_t type;
|
||||
multiboot_uint32_t size;
|
||||
multiboot_uint8_t major;
|
||||
multiboot_uint8_t minor;
|
||||
multiboot_uint8_t reserved[6];
|
||||
multiboot_uint8_t tables[0];
|
||||
};
|
||||
|
||||
struct multiboot_tag_old_acpi
|
||||
{
|
||||
multiboot_uint32_t type;
|
||||
multiboot_uint32_t size;
|
||||
multiboot_uint8_t rsdp[0];
|
||||
};
|
||||
|
||||
struct multiboot_tag_new_acpi
|
||||
{
|
||||
multiboot_uint32_t type;
|
||||
multiboot_uint32_t size;
|
||||
multiboot_uint8_t rsdp[0];
|
||||
};
|
||||
|
||||
struct multiboot_tag_network
|
||||
{
|
||||
multiboot_uint32_t type;
|
||||
multiboot_uint32_t size;
|
||||
multiboot_uint8_t dhcpack[0];
|
||||
};
|
||||
|
||||
#endif /* ! ASM_FILE */
|
||||
|
||||
#endif /* ! MULTIBOOT_HEADER */
|
||||
Reference in new issue
Block a user