|
@@ -654,6 +654,9 @@ static void __init early_cmdline_parse(void)
|
|
|
#define OV5_CMO 0x00
|
|
|
#endif
|
|
|
|
|
|
+/* Option Vector 6: IBM PAPR hints */
|
|
|
+#define OV6_LINUX 0x02 /* Linux is our OS */
|
|
|
+
|
|
|
/*
|
|
|
* The architecture vector has an array of PVR mask/value pairs,
|
|
|
* followed by # option vectors - 1, followed by the option vectors.
|
|
@@ -665,7 +668,7 @@ static unsigned char ibm_architecture_vec[] = {
|
|
|
W(0xffffffff), W(0x0f000003), /* all 2.06-compliant */
|
|
|
W(0xffffffff), W(0x0f000002), /* all 2.05-compliant */
|
|
|
W(0xfffffffe), W(0x0f000001), /* all 2.04-compliant and earlier */
|
|
|
- 5 - 1, /* 5 option vectors */
|
|
|
+ 6 - 1, /* 6 option vectors */
|
|
|
|
|
|
/* option vector 1: processor architectures supported */
|
|
|
3 - 2, /* length */
|
|
@@ -697,12 +700,24 @@ static unsigned char ibm_architecture_vec[] = {
|
|
|
0, /* don't halt */
|
|
|
|
|
|
/* option vector 5: PAPR/OF options */
|
|
|
- 5 - 2, /* length */
|
|
|
+ 13 - 2, /* length */
|
|
|
0, /* don't ignore, don't halt */
|
|
|
OV5_LPAR | OV5_SPLPAR | OV5_LARGE_PAGES | OV5_DRCONF_MEMORY |
|
|
|
OV5_DONATE_DEDICATE_CPU | OV5_MSI,
|
|
|
0,
|
|
|
OV5_CMO,
|
|
|
+ 0,
|
|
|
+ 0,
|
|
|
+ 0,
|
|
|
+ 0,
|
|
|
+ W(NR_CPUS), /* number of cores supported*/
|
|
|
+
|
|
|
+ /* option vector 6: IBM PAPR hints */
|
|
|
+ 4 - 2, /* length */
|
|
|
+ 0,
|
|
|
+ 0,
|
|
|
+ OV6_LINUX,
|
|
|
+
|
|
|
};
|
|
|
|
|
|
/* Old method - ELF header with PT_NOTE sections */
|