Hello, On Fri, Mar 17, 2023 at 03:08:11PM +0530, Avnish Chouhan wrote: > This patch enables the multiple options in Options Vector5. > > Signed-off-by: Avnish Chouhan <avn...@linux.vnet.ibm.com> > Reviewed-by: Brian King <brk...@linux.vnet.ibm.com> > --- > grub-core/kern/ieee1275/init.c | 43 > ++++++++++++++++++++++++++++++++++++++++++- > 1 file changed, 42 insertions(+), 1 deletion(-) > > diff --git a/grub-core/kern/ieee1275/init.c b/grub-core/kern/ieee1275/init.c > index 7337e28..6f0eeee 100644 > --- a/grub-core/kern/ieee1275/init.c > +++ b/grub-core/kern/ieee1275/init.c > @@ -72,6 +72,42 @@ extern char _end[]; > grub_addr_t grub_ieee1275_original_stack; > #endif > > +/* Options vector5 properties */ > + > +#define LPAR 0x80 > +#define SPLPAR 0x40 > +#define DYN_RCON_MEM 0x20 > +#define LARGE_PAGES 0x10 > +#define DONATE_DCPU_CLS 0x2 > +#define PCI_EXP 0x1 > +#define BYTE2 (LPAR | SPLPAR | DYN_RCON_MEM | LARGE_PAGES | > DONATE_DCPU_CLS | PCI_EXP) > + > +#define CMOC 0x80 > +#define EXT_CMO 0x40 > +#define CMO (CMOC | EXT_CMO) > + > +#define ASSOC_REF 0x80 > +#define AFFINITY 0x40 > +#define NUMA 0x20 > +#define ASSOCIATIVITY (ASSOC_REF | AFFINITY | NUMA) > + > +#define HOTPLUG_INTRPT 0x4 > +#define HPT_RESIZE 0x1 > +#define BIN_OPTS (HOTPLUG_INTRPT | HPT_RESIZE) > + > +#define MAX_CPU 256 > + > +#define PFO_HWRNG 0x80000000 > +#define PFO_HW_COMP 0x40000000 > +#define PFO_ENCRYPT 0x20000000 > +#define PLATFORM_FACILITIES (PFO_HWRNG | PFO_HW_COMP | PFO_ENCRYPT) > + > +#define SUB_PROCESSORS 1 > + > +#define DY_MEM_V2 0x80 > +#define DRC_INFO 0x40 > +#define BYTE22 (DY_MEM_V2 | DRC_INFO) > + > void > grub_exit (void) > { > @@ -511,6 +547,11 @@ struct option_vector5 > grub_uint8_t micro_checkpoint; > grub_uint8_t reserved0; > grub_uint32_t max_cpus; > + grub_uint16_t base_PAPR; > + grub_uint16_t mem_reference; > + grub_uint32_t platform_facilities; > + grub_uint8_t sub_processors; > + grub_uint8_t byte22; > } GRUB_PACKED; > > struct pvr_entry > @@ -573,7 +614,7 @@ grub_ieee1275_ibm_cas (void) > .vec4 = 0x0001, /* set required minimum capacity % to the lowest value */ > .vec5_size = 1 + sizeof (struct option_vector5) - 2, > .vec5 = { > - 0, 192, 0, 128, 0, 0, 0, 0, 256 > + 0, BYTE2, 0, CMO, ASSOCIATIVITY, BIN_OPTS, 0, 0, MAX_CPU, 0, 0, > PLATFORM_FACILITIES, SUB_PROCESSORS, BYTE22
Thanks for adding the named constants, that makes the initialization much more readable. Thanks Michal > } > }; > > -- > 2.31.1 > _______________________________________________ Grub-devel mailing list Grub-devel@gnu.org https://lists.gnu.org/mailman/listinfo/grub-devel