]>
Commit | Line | Data |
---|---|---|
134cb3ab MG |
1 | ========================== |
2 | ELF Note PowerPC Namespace | |
3 | ========================== | |
4 | ||
5 | The PowerPC namespace in an ELF Note of the kernel binary is used to store | |
6 | capabilities and information which can be used by a bootloader or userland. | |
7 | ||
8 | Types and Descriptors | |
9 | --------------------- | |
10 | ||
ad9b48c5 | 11 | The types to be used with the "PowerPC" namesapce are defined in [#f1]_. |
134cb3ab MG |
12 | |
13 | 1) PPC_ELFNOTE_CAPABILITIES | |
14 | ||
15 | Define the capabilities supported/required by the kernel. This type uses a | |
16 | bitmap as "descriptor" field. Each bit is described below: | |
17 | ||
18 | - Ultravisor-capable bit (PowerNV only). | |
19 | ||
ad9b48c5 AZ |
20 | .. code-block:: c |
21 | ||
134cb3ab MG |
22 | #define PPCCAP_ULTRAVISOR_BIT (1 << 0) |
23 | ||
ad9b48c5 AZ |
24 | Indicate that the powerpc kernel binary knows how to run in an |
25 | ultravisor-enabled system. | |
134cb3ab | 26 | |
ad9b48c5 AZ |
27 | In an ultravisor-enabled system, some machine resources are now controlled |
28 | by the ultravisor. If the kernel is not ultravisor-capable, but it ends up | |
29 | being run on a machine with ultravisor, the kernel will probably crash | |
30 | trying to access ultravisor resources. For instance, it may crash in early | |
31 | boot trying to set the partition table entry 0. | |
134cb3ab | 32 | |
ad9b48c5 AZ |
33 | In an ultravisor-enabled system, a bootloader could warn the user or prevent |
34 | the kernel from being run if the PowerPC ultravisor capability doesn't exist | |
35 | or the Ultravisor-capable bit is not set. | |
134cb3ab MG |
36 | |
37 | References | |
38 | ---------- | |
39 | ||
ad9b48c5 | 40 | .. [#f1] arch/powerpc/include/asm/elfnote.h |
134cb3ab | 41 |