X-Git-Url: https://git.ozlabs.org/?a=blobdiff_plain;f=discover%2Fplatform.c;h=445158991fcef7cfc2b2846b0154d7bb45f97625;hb=366ff957d2900eae6d26ad2f002b735302e7eb41;hp=4d5009c4e1dcac2a87f819db730cba820840beaf;hpb=3c173e909de0db1b2dd96b1d57851abb35bbdbc4;p=petitboot diff --git a/discover/platform.c b/discover/platform.c index 4d5009c..4451589 100644 --- a/discover/platform.c +++ b/discover/platform.c @@ -17,23 +17,6 @@ static struct config *config; static const char *kernel_cmdline_debug = "petitboot.debug"; -static const char *device_type_name(enum device_type type) -{ - switch (type) { - case DEVICE_TYPE_DISK: - return "disk"; - case DEVICE_TYPE_OPTICAL: - return "optical"; - case DEVICE_TYPE_NETWORK: - return "network"; - case DEVICE_TYPE_ANY: - return "any"; - case DEVICE_TYPE_UNKNOWN: - default: - return "unknown"; - } -} - static void dump_config(struct config *config) { unsigned int i; @@ -91,6 +74,10 @@ static void dump_config(struct config *config) prio->priority); } + pb_log(" IPMI boot device 0x%02x%s\n", config->ipmi_bootdev, + config->ipmi_bootdev_persistent ? " (persistent)" : ""); + + pb_log(" language: %s\n", config->lang ?: ""); } @@ -130,10 +117,13 @@ void config_set_defaults(struct config *config) config->boot_priorities = talloc_array(config, struct boot_priority, config->n_boot_priorities); config->boot_priorities[0].type = DEVICE_TYPE_NETWORK; - config->boot_priorities[0].priority = 2; - config->boot_priorities[1].type = DEVICE_TYPE_DISK; + config->boot_priorities[0].priority = 0; + config->boot_priorities[1].type = DEVICE_TYPE_ANY; config->boot_priorities[1].priority = 1; + config->ipmi_bootdev = 0; + config->ipmi_bootdev_persistent = false; + config->debug = config_debug_on_cmdline(); } @@ -173,6 +163,14 @@ const struct platform *platform_get(void) return platform; } +void platform_pre_boot(void) +{ + const struct config *config = config_get(); + + if (platform && config && platform->pre_boot) + platform->pre_boot(platform, config); +} + int platform_get_sysinfo(struct system_info *info) { if (platform && platform->get_sysinfo)