| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 | 
							- From: Daniel Golle <[email protected]>
 
- Subject: try auto-mounting ubi0:rootfs in init/do_mounts.c
 
- Signed-off-by: Daniel Golle <[email protected]>
 
- ---
 
-  init/do_mounts.c | 26 +++++++++++++++++++++++++-
 
-  1 file changed, 25 insertions(+), 1 deletion(-)
 
- --- a/init/do_mounts.c
 
- +++ b/init/do_mounts.c
 
- @@ -248,7 +248,30 @@ retry:
 
-  out:
 
-  	put_page(page);
 
-  }
 
- - 
 
- +
 
- +#ifdef CONFIG_MTD_ROOTFS_ROOT_DEV
 
- +static int __init mount_ubi_rootfs(void)
 
- +{
 
- +	int flags = MS_SILENT;
 
- +	int err, tried = 0;
 
- +
 
- +	while (tried < 2) {
 
- +		err = do_mount_root("ubi0:rootfs", "ubifs", flags, \
 
- +					root_mount_data);
 
- +		switch (err) {
 
- +			case -EACCES:
 
- +				flags |= MS_RDONLY;
 
- +				tried++;
 
- +				break;
 
- +			default:
 
- +				return err;
 
- +		}
 
- +	}
 
- +
 
- +	return -EINVAL;
 
- +}
 
- +#endif
 
- +
 
-  #ifdef CONFIG_ROOT_NFS
 
-  
 
-  #define NFSROOT_TIMEOUT_MIN	5
 
- @@ -385,6 +408,11 @@ static inline void mount_block_root(char
 
-  
 
-  void __init mount_root(char *root_device_name)
 
-  {
 
- +#ifdef CONFIG_MTD_ROOTFS_ROOT_DEV
 
- +	if (!mount_ubi_rootfs())
 
- +		return;
 
- +#endif
 
- +
 
-  	switch (ROOT_DEV) {
 
-  	case Root_NFS:
 
-  		mount_nfs_root();
 
 
  |