From 3ec5ae46e4141845a1bce711d9fccd61ef7cb23f Mon Sep 17 00:00:00 2001 From: Olivier Blin Date: Wed, 27 Feb 2008 22:20:33 +0000 Subject: wait only 1 second for firmware upload (not to hang boot with iwl3945, #37279) --- mdk-stage1/modules.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'mdk-stage1/modules.c') diff --git a/mdk-stage1/modules.c b/mdk-stage1/modules.c index 2b55e5b75..5667256a9 100644 --- a/mdk-stage1/modules.c +++ b/mdk-stage1/modules.c @@ -39,6 +39,9 @@ #include "modules.h" +#define FIRMWARE_TIMEOUT_FILE "/sys/class/firmware/timeout" +#define FIRMWARE_TIMEOUT_VALUE "1" + static char modules_directory[100]; static struct module_deps_elem * modules_deps = NULL; static struct module_descr_elem * modules_descr = NULL; @@ -226,10 +229,21 @@ static int load_modules_descriptions(void) return 0; } +static void init_firmware_timeout(void) +{ + int fd = open(FIRMWARE_TIMEOUT_FILE, O_WRONLY|O_TRUNC, 0666); + if (!fd) { + log_message("warning, unable to set firmware timeout"); + return; + } + write(fd, FIRMWARE_TIMEOUT_VALUE, strlen(FIRMWARE_TIMEOUT_VALUE)); + close(fd); +} void init_modules_insmoding(void) { find_modules_directory(); + init_firmware_timeout(); if (load_modules_dependencies()) { fatal_error("warning, error initing modules stuff, modules loading disabled"); } -- cgit v1.2.1