diff --git a/cloud/agent/api/hwreport.proto b/cloud/agent/api/hwreport.proto
index 129e984..7c5d4fd 100644
--- a/cloud/agent/api/hwreport.proto
+++ b/cloud/agent/api/hwreport.proto
@@ -95,6 +95,27 @@
   string model = 11;
 }
 
+enum EFISupport {
+  // EFI support was not evaluated by the report generator.
+  EFI_INVALID = 0;
+  // It is not known if EFI is supported by the node. EFI runtime services are
+  // not available. This occurs if the report generator generally supports
+  // reporting EFI support, but none of its mechanisms to determine EFI support
+  // returned any data.
+  EFI_UNKNOWN = 1;
+  // The firmware indicates that EFI is not supported by the node. EFI runtime
+  // services are not available.
+  // Note that the firmware indication can be wrong.
+  EFI_UNSUPPORTED = 2;
+  // The firmware indicates that EFI is supported, but EFI runtime services
+  // are not available. This usually means that the hardware report was
+  // generated from a kernel booted in Compatibility Support Mode (CSM).
+  // Note that the firmware indication can be wrong.
+  EFI_SUPPORTED = 3;
+  // EFI and its runtime services are available and working.
+  EFI_ENABLED = 4;
+}
+
 message Node {
   // Manufacturer of the system, taken from DMI.
   string manufacturer = 1;
@@ -103,6 +124,9 @@
   // Serial number of the system, taken from DMI.
   string serial_number = 3;
 
+  // Information about EFI support in the node firmware.
+  EFISupport efi_support = 13;
+
   // Amount of physical memory installed, in bytes. Determined using DMI (if
   // available and not marked unusable) or memory blocks in sysfs
   // (/sys/devices/system/memory/...). This is not taken from meminfo as that
diff --git a/cloud/agent/hwreport.go b/cloud/agent/hwreport.go
index 3b82d27..c92244d 100644
--- a/cloud/agent/hwreport.go
+++ b/cloud/agent/hwreport.go
@@ -45,6 +45,14 @@
 		c.node.Product = smbTbl.SystemInformationRaw.ProductName
 		c.node.SerialNumber = smbTbl.SystemInformationRaw.SerialNumber
 	}
+	if smbTbl.BIOSInformationRaw != nil && smbTbl.BIOSInformationRaw.StructureVersion.AtLeast(2, 2) {
+		uefiSupport := smbTbl.BIOSInformationRaw.BIOSCharacteristicsExtensionByte2&smbios.UEFISpecificationSupported != 0
+		if uefiSupport {
+			c.node.EfiSupport = api.EFISupport_EFI_SUPPORTED
+		} else {
+			c.node.EfiSupport = api.EFISupport_EFI_UNSUPPORTED
+		}
+	}
 	for _, d := range smbTbl.MemoryDevicesRaw {
 		if d.StructureVersion.AtLeast(3, 2) && d.MemoryTechnology != 0x03 {
 			// If MemoryTechnology is available, only count DRAM
@@ -400,6 +408,7 @@
 	hwReportCtx := hwReportContext{
 		node: &api.Node{},
 	}
+	hwReportCtx.node.EfiSupport = api.EFISupport_EFI_UNKNOWN
 
 	hwReportCtx.gatherCPU()
 	hwReportCtx.gatherSMBIOS()
@@ -415,5 +424,9 @@
 	hwReportCtx.gatherNICs()
 	hwReportCtx.gatherBlockDevices()
 
+	if _, err := os.Stat("/sys/firmware/efi/runtime"); err == nil {
+		hwReportCtx.node.EfiSupport = api.EFISupport_EFI_ENABLED
+	}
+
 	return hwReportCtx.node, hwReportCtx.errors
 }
