]> git.ipfire.org Git - thirdparty/mdadm.git/commitdiff
Some guid manipulation utilities has been added.
authorLabun, Marcin <Marcin.Labun@intel.com>
Thu, 10 Mar 2011 00:45:15 +0000 (11:45 +1100)
committerNeilBrown <neilb@suse.de>
Thu, 10 Mar 2011 00:45:15 +0000 (11:45 +1100)
It will be used for reading efi variables with capabilities.

Signed-off-by: Przemyslaw Czarnowski <przemyslaw.hawrylewicz.czarnowski@intel.com>
Signed-off-by: NeilBrown <neilb@suse.de>
platform-intel.c
platform-intel.h

index 08cf4edd30b177fe65c5e6cd24603e7510aafaef..f5f57b796786aff7313bb7487f4ae044f60c6da4 100644 (file)
@@ -294,6 +294,15 @@ static const struct imsm_orom *find_imsm_hba_orom(enum sys_dev_type hba_id)
        return NULL;
 }
 
+#define GUID_STR_MAX   37  /* according to GUID format:
+                            * xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" */
+
+#define EFI_GUID(a, b, c, d0, d1, d2, d3, d4, d5, d6, d7) \
+((struct efi_guid) \
+{{ (a) & 0xff, ((a) >> 8) & 0xff, ((a) >> 16) & 0xff, ((a) >> 24) & 0xff, \
+  (b) & 0xff, ((b) >> 8) & 0xff, \
+  (c) & 0xff, ((c) >> 8) & 0xff, \
+  (d0), (d1), (d2), (d3), (d4), (d5), (d6), (d7) }})
 
 /*
  * backward interface compatibility
index 549ced5b8a73b321202458fda76c266ed3eab687..0cba6c748821469754664230f5af49c8d345b58b 100644 (file)
@@ -197,6 +197,21 @@ struct sys_dev {
        struct sys_dev *next;
 };
 
+struct efi_guid {
+       __u8 b[16];
+};
+
+static inline char *guid_str(char *buf, struct efi_guid guid)
+{
+       sprintf(buf, "%02x%02x%02x%02x-%02x%02x-%02x%02x-"
+                    "%02x%02x-%02x%02x%02x%02x%02x%02x",
+                guid.b[3], guid.b[2], guid.b[1], guid.b[0],
+                guid.b[5], guid.b[4], guid.b[7], guid.b[6],
+                guid.b[8], guid.b[9], guid.b[10], guid.b[11],
+                guid.b[12], guid.b[13], guid.b[14], guid.b[15]);
+       return buf;
+}
+
 char *diskfd_to_devpath(int fd);
 struct sys_dev *find_driver_devices(const char *bus, const char *driver);
 struct sys_dev *find_intel_devices(void);