]> git.ozlabs.org Git - petitboot/blobdiff - lib/types/types.h
lib/log: Always flush after writing logs
[petitboot] / lib / types / types.h
index 1843557728814111383342402c64c98f46974514..9bb800ca4d125daa5d57169c8256e3d898eb05ea 100644 (file)
@@ -1,10 +1,20 @@
 #ifndef _TYPES_H
 #define _TYPES_H
 
+#include <stdbool.h>
+#include <stdint.h>
 #include <list/list.h>
 
+enum device_type {
+       DEVICE_TYPE_NETWORK,
+       DEVICE_TYPE_DISK,
+       DEVICE_TYPE_OPTICAL,
+       DEVICE_TYPE_UNKNOWN,
+};
+
 struct device {
        char            *id;
+       enum device_type type;
        char            *name;
        char            *description;
        char            *icon_file;
@@ -16,13 +26,16 @@ struct device {
 };
 
 struct boot_option {
+       char            *device_id;
        char            *id;
        char            *name;
        char            *description;
        char            *icon_file;
        char            *boot_image_file;
        char            *initrd_file;
+       char            *dtb_file;
        char            *boot_args;
+       bool            is_default;
 
        struct list_item        list;
 
@@ -33,7 +46,32 @@ struct boot_command {
        char *option_id;
        char *boot_image_file;
        char *initrd_file;
+       char *dtb_file;
        char *boot_args;
 };
 
+struct boot_status {
+       enum {
+               BOOT_STATUS_INFO,
+               BOOT_STATUS_ERROR,
+       } type;
+       char    *message;
+       char    *detail;
+       int     progress;
+};
+
+struct interface_info {
+       unsigned int    hwaddr_size;
+       uint8_t         *hwaddr;
+       char            *name;
+};
+
+struct system_info {
+       char                    *type;
+       char                    *identifier;
+       struct interface_info   **interfaces;
+       unsigned int            n_interfaces;
+};
+
+
 #endif /* _TYPES_H */