1c33df4eaSJean-Paul Saman /* 2c33df4eaSJean-Paul Saman * init/noinitramfs.c 3c33df4eaSJean-Paul Saman * 4c33df4eaSJean-Paul Saman * Copyright (C) 2006, NXP Semiconductors, All Rights Reserved 5c33df4eaSJean-Paul Saman * Author: Jean-Paul Saman <jean-paul.saman@nxp.com> 6c33df4eaSJean-Paul Saman * 7c33df4eaSJean-Paul Saman * This program is free software; you can redistribute it and/or modify 8c33df4eaSJean-Paul Saman * it under the terms of the GNU General Public License as published by 9c33df4eaSJean-Paul Saman * the Free Software Foundation; version 2 of the License. 10c33df4eaSJean-Paul Saman * 11c33df4eaSJean-Paul Saman * This program is distributed in the hope that it will be useful, 12c33df4eaSJean-Paul Saman * but WITHOUT ANY WARRANTY; without even the implied warranty of 13c33df4eaSJean-Paul Saman * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14c33df4eaSJean-Paul Saman * GNU General Public License for more details. 15c33df4eaSJean-Paul Saman * 16c33df4eaSJean-Paul Saman * You should have received a copy of the GNU General Public License 17c33df4eaSJean-Paul Saman * along with this program; if not, write to the Free Software 18c33df4eaSJean-Paul Saman * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 19c33df4eaSJean-Paul Saman */ 20c33df4eaSJean-Paul Saman #include <linux/init.h> 21c33df4eaSJean-Paul Saman #include <linux/stat.h> 22c33df4eaSJean-Paul Saman #include <linux/kdev_t.h> 23c33df4eaSJean-Paul Saman #include <linux/syscalls.h> 24c33df4eaSJean-Paul Saman 25c33df4eaSJean-Paul Saman /* 26c33df4eaSJean-Paul Saman * Create a simple rootfs that is similar to the default initramfs 27c33df4eaSJean-Paul Saman */ 28c33df4eaSJean-Paul Saman static int __init default_rootfs(void) 29c33df4eaSJean-Paul Saman { 30c33df4eaSJean-Paul Saman int err; 31c33df4eaSJean-Paul Saman 32*562f5e63SNamhyung Kim err = sys_mkdir((const char __user __force *) "/dev", 0755); 33c33df4eaSJean-Paul Saman if (err < 0) 34c33df4eaSJean-Paul Saman goto out; 35c33df4eaSJean-Paul Saman 36*562f5e63SNamhyung Kim err = sys_mknod((const char __user __force *) "/dev/console", 37c33df4eaSJean-Paul Saman S_IFCHR | S_IRUSR | S_IWUSR, 38c33df4eaSJean-Paul Saman new_encode_dev(MKDEV(5, 1))); 39c33df4eaSJean-Paul Saman if (err < 0) 40c33df4eaSJean-Paul Saman goto out; 41c33df4eaSJean-Paul Saman 42*562f5e63SNamhyung Kim err = sys_mkdir((const char __user __force *) "/root", 0700); 43c33df4eaSJean-Paul Saman if (err < 0) 44c33df4eaSJean-Paul Saman goto out; 45c33df4eaSJean-Paul Saman 46c33df4eaSJean-Paul Saman return 0; 47c33df4eaSJean-Paul Saman 48c33df4eaSJean-Paul Saman out: 49c33df4eaSJean-Paul Saman printk(KERN_WARNING "Failed to create a rootfs\n"); 50c33df4eaSJean-Paul Saman return err; 51c33df4eaSJean-Paul Saman } 52c33df4eaSJean-Paul Saman rootfs_initcall(default_rootfs); 53