Add AVR32 kernel patches for linux-2.6.21.5
This commit is contained in:
parent
f2595b4c16
commit
b97f0f63fa
17772
toolchain/kernel-headers/linux-2.6.21.5-003-atmel.1-avr32-updates.patch
Normal file
17772
toolchain/kernel-headers/linux-2.6.21.5-003-atmel.1-avr32-updates.patch
Normal file
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,55 @@
|
||||
diff --git a/init/do_mounts.c b/init/do_mounts.c
|
||||
index 46fe407..efc134c 100644
|
||||
--- a/init/do_mounts.c
|
||||
+++ b/init/do_mounts.c
|
||||
@@ -25,6 +25,7 @@ int __initdata rd_doload; /* 1 = load RAM disk, 0 = don't load */
|
||||
int root_mountflags = MS_RDONLY | MS_SILENT;
|
||||
char * __initdata root_device_name;
|
||||
static char __initdata saved_root_name[64];
|
||||
+int __initdata root_wait;
|
||||
|
||||
dev_t ROOT_DEV;
|
||||
|
||||
@@ -216,6 +217,14 @@ static int __init root_dev_setup(char *line)
|
||||
|
||||
__setup("root=", root_dev_setup);
|
||||
|
||||
+static int __init rootwait_setup(char *line)
|
||||
+{
|
||||
+ root_wait = simple_strtol(line,NULL,0);
|
||||
+ return 1;
|
||||
+}
|
||||
+
|
||||
+__setup("rootwait=", rootwait_setup);
|
||||
+
|
||||
static char * __initdata root_mount_data;
|
||||
static int __init root_data_setup(char *str)
|
||||
{
|
||||
@@ -438,11 +447,24 @@ void __init prepare_namespace(void)
|
||||
root_device_name += 5;
|
||||
}
|
||||
|
||||
- is_floppy = MAJOR(ROOT_DEV) == FLOPPY_MAJOR;
|
||||
-
|
||||
if (initrd_load())
|
||||
goto out;
|
||||
|
||||
+ /* wait for any asynchronous scanning to complete */
|
||||
+ if ((ROOT_DEV == 0) && root_wait) {
|
||||
+ printk(KERN_INFO "Waiting for root device %s...\n",
|
||||
+ saved_root_name);
|
||||
+ do {
|
||||
+ while (driver_probe_done() != 0)
|
||||
+ msleep(100);
|
||||
+ ROOT_DEV = name_to_dev_t(saved_root_name);
|
||||
+ if (ROOT_DEV == 0)
|
||||
+ msleep(100);
|
||||
+ } while (ROOT_DEV == 0);
|
||||
+ }
|
||||
+
|
||||
+ is_floppy = MAJOR(ROOT_DEV) == FLOPPY_MAJOR;
|
||||
+
|
||||
if (is_floppy && rd_doload && rd_load_disk(0))
|
||||
ROOT_DEV = Root_RAM0;
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user