[RFC,PATCH 4/4] fwts: Add OPAL firmware type
Jeremy Kerr
jk at ozlabs.org
Thu Apr 24 08:18:24 UTC 2014
Signed-off-by: Jeremy Kerr <jk at ozlabs.org>
---
src/lib/include/fwts_firmware.h | 1 +
src/lib/src/fwts_firmware.c | 11 +++++++----
2 files changed, 8 insertions(+), 4 deletions(-)
diff --git a/src/lib/include/fwts_firmware.h b/src/lib/include/fwts_firmware.h
index 1ef5e73..4dc4c96 100644
--- a/src/lib/include/fwts_firmware.h
+++ b/src/lib/include/fwts_firmware.h
@@ -25,6 +25,7 @@ enum firmware_type {
FWTS_FIRMWARE_UNKNOWN = 0,
FWTS_FIRMWARE_BIOS = 1,
FWTS_FIRMWARE_UEFI = 2,
+ FWTS_FIRMWARE_OPAL = 3,
FWTS_FIRMWARE_OTHER = 100,
};
diff --git a/src/lib/src/fwts_firmware.c b/src/lib/src/fwts_firmware.c
index cca0615..867c4bc 100644
--- a/src/lib/src/fwts_firmware.c
+++ b/src/lib/src/fwts_firmware.c
@@ -37,11 +37,14 @@ int fwts_firmware_detect(void)
if (firmware_type_valid)
return firmware_type;
- if (stat("/sys/firmware/efi", &statbuf)) {
- /* No UEFI, Assume BIOS */
- firmware_type = FWTS_FIRMWARE_BIOS;
- } else {
+ if (!stat("/sys/firmware/efi", &statbuf)) {
firmware_type = FWTS_FIRMWARE_UEFI;
+
+ } else if (!stat("/sys/firmware/opal", &statbuf)) {
+ firmware_type = FWTS_FIRMWARE_OPAL;
+
+ } else {
+ firmware_type = FWTS_FIRMWARE_BIOS;
}
firmware_type_valid = true;
More information about the fwts-devel
mailing list