summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--target/linux/olpc/Makefile23
-rw-r--r--target/linux/olpc/base-files/etc/X11/xorg.conf71
-rw-r--r--target/linux/olpc/base-files/etc/config/network11
-rw-r--r--target/linux/olpc/base-files/etc/preinit.arch2
-rw-r--r--target/linux/olpc/base-files/lib/upgrade/platform.sh27
-rw-r--r--target/linux/olpc/config-2.6.30522
-rw-r--r--target/linux/olpc/generic/profiles/000-Generic.mk16
-rw-r--r--target/linux/olpc/generic/target.mk6
-rw-r--r--target/linux/olpc/image/Config.in23
-rw-r--r--target/linux/olpc/image/Makefile64
-rwxr-xr-xtarget/linux/olpc/image/gen_image.sh35
-rw-r--r--target/linux/olpc/image/olpc.fth5
-rw-r--r--target/linux/olpc/patches-2.6.30/300-block2mtd_init.patch210
13 files changed, 0 insertions, 1015 deletions
diff --git a/target/linux/olpc/Makefile b/target/linux/olpc/Makefile
deleted file mode 100644
index 2f756290c..000000000
--- a/target/linux/olpc/Makefile
+++ /dev/null
@@ -1,23 +0,0 @@
-#
-# Copyright (C) 2006-2009 OpenWrt.org
-#
-# This is free software, licensed under the GNU General Public License v2.
-# See /LICENSE for more information.
-#
-include $(TOPDIR)/rules.mk
-
-ARCH:=i386
-BOARD:=olpc
-BOARDNAME:=OLPC XO-1
-FEATURES:=squashfs ext2
-
-LINUX_VERSION:=2.6.30.10
-
-include $(INCLUDE_DIR)/target.mk
-DEFAULT_PACKAGES += kmod-natsemi kmod-ne2k-pci kmod-libertas
-
-$(eval $(call Target,generic))
-$(eval $(call BuildTarget))
-$(eval $(call $(if $(CONFIG_TARGET_ROOTFS_ISO),RequireCommand,Ignore),mkisofs, \
- Please install mkisofs. \
-))
diff --git a/target/linux/olpc/base-files/etc/X11/xorg.conf b/target/linux/olpc/base-files/etc/X11/xorg.conf
deleted file mode 100644
index d98a8f87a..000000000
--- a/target/linux/olpc/base-files/etc/X11/xorg.conf
+++ /dev/null
@@ -1,71 +0,0 @@
-# xorg configuration
-
-Section "ServerLayout"
- Identifier "Default Layout"
- Screen 0 "Screen0" 0 0
- InputDevice "Mouse0" "CorePointer"
- InputDevice "Keyboard0" "CoreKeyboard"
-EndSection
-
-Section "Files"
- FontPath "/usr/lib/X11/fonts/misc"
-EndSection
-
-Section "Module"
- Load "dbe"
- Load "extmod"
- Load "fbdevhw"
-# Load "glx"
- Load "record"
- Load "freetype"
- Load "type1"
-EndSection
-
-Section "InputDevice"
- Identifier "Keyboard0"
- Driver "keyboard"
- Option "XkbModel" "pc105"
- Option "XkbLayout" "us"
-EndSection
-
-Section "InputDevice"
- Identifier "Mouse0"
- Driver "mouse"
- Option "Protocol" "PS/2"
- Option "Device" "/dev/psaux"
- Option "ZAxisMapping" "4 5"
- Option "Emulate3Buttons" "yes"
-EndSection
-
-Section "Monitor"
- Identifier "Monitor0"
- VendorName "Monitor Vendor"
- ModelName "OWRT"
- Option "dpms"
-EndSection
-
-Section "Device"
- Identifier "FBDev"
- Driver "fbdev"
- #Option "shadowfb" "off"
- VideoRam 4096
-EndSection
-
-Section "Screen"
- Identifier "Screen0"
- Device "FBDev"
- Monitor "Monitor0"
- DefaultDepth 16
-
- SubSection "Display"
- Depth 16
- Modes "1200x900-75"
- EndSubsection
-
-EndSection
-
-Section "DRI"
- Group 0
- Mode 0666
-EndSection
-
diff --git a/target/linux/olpc/base-files/etc/config/network b/target/linux/olpc/base-files/etc/config/network
deleted file mode 100644
index faa8f0e78..000000000
--- a/target/linux/olpc/base-files/etc/config/network
+++ /dev/null
@@ -1,11 +0,0 @@
-# Copyright (C) 2006 OpenWrt.org
-
-config interface loopback
- option ifname lo
- option proto static
- option ipaddr 127.0.0.1
- option netmask 255.0.0.0
-
-config interface wlan
- option ifname eth0
- option proto dhcp
diff --git a/target/linux/olpc/base-files/etc/preinit.arch b/target/linux/olpc/base-files/etc/preinit.arch
deleted file mode 100644
index f29f0d448..000000000
--- a/target/linux/olpc/base-files/etc/preinit.arch
+++ /dev/null
@@ -1,2 +0,0 @@
-mount -t proc none /proc
-grep 'failsafe=' /proc/cmdline && export FAILSAFE=true
diff --git a/target/linux/olpc/base-files/lib/upgrade/platform.sh b/target/linux/olpc/base-files/lib/upgrade/platform.sh
deleted file mode 100644
index ffd0b93ab..000000000
--- a/target/linux/olpc/base-files/lib/upgrade/platform.sh
+++ /dev/null
@@ -1,27 +0,0 @@
-platform_check_image() {
- [ "$ARGC" -gt 1 ] && return 1
-
- case "$(get_magic_word "$1")" in
- 48eb) return 0;;
- *)
- echo "Invalid image type"
- return 1
- ;;
- esac
-}
-
-platform_do_upgrade() {
- get_image "$1" > /dev/hda
- sync
-}
-
-x86_prepare_ext2() {
- # if we're running from ext2, we need to make sure that we have a mtd
- # partition that points to the active rootfs partition.
- # however this only matters if we actually need to preserve the config files
- [ "$SAVE_CONFIG" -eq 1 ] && return 0
- grep rootfs /proc/mtd >/dev/null || {
- echo /dev/hda2,65536,rootfs > /sys/module/block2mtd/parameters/block2mtd
- }
-}
-append sysupgrade_pre_upgrade x86_prepare_ext2
diff --git a/target/linux/olpc/config-2.6.30 b/target/linux/olpc/config-2.6.30
deleted file mode 100644
index 808d8ee7b..000000000
--- a/target/linux/olpc/config-2.6.30
+++ /dev/null
@@ -1,522 +0,0 @@
-CONFIG_4KSTACKS=y
-# CONFIG_64BIT is not set
-CONFIG_ACPI_AC=y
-# CONFIG_ACPI_ASUS is not set
-CONFIG_ACPI_BATTERY=y
-CONFIG_ACPI_BLACKLIST_YEAR=0
-CONFIG_ACPI_BUTTON=y
-# CONFIG_ACPI_CONTAINER is not set
-# CONFIG_ACPI_CUSTOM_DSDT is not set
-# CONFIG_ACPI_DEBUG is not set
-# CONFIG_ACPI_DOCK is not set
-CONFIG_ACPI_FAN=y
-# CONFIG_ACPI_PCI_SLOT is not set
-CONFIG_ACPI_PROCESSOR=y
-CONFIG_ACPI_PROC_EVENT=y
-# CONFIG_ACPI_PROCFS is not set
-CONFIG_ACPI_PROCFS_POWER=y
-# CONFIG_ACPI_SBS is not set
-CONFIG_ACPI_SLEEP=y
-CONFIG_ACPI_SYSFS_POWER=y
-CONFIG_ACPI_THERMAL=y
-# CONFIG_ACPI_TOSHIBA is not set
-# CONFIG_ACPI_WMI is not set
-CONFIG_ACPI=y
-# CONFIG_AGP is not set
-# CONFIG_APM is not set
-CONFIG_ARCH_DEFCONFIG="arch/x86/configs/i386_defconfig"
-CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y
-CONFIG_ARCH_HAS_CPU_IDLE_WAIT=y
-CONFIG_ARCH_HAS_CPU_RELAX=y
-CONFIG_ARCH_HAS_DEFAULT_IDLE=y
-CONFIG_ARCH_HIBERNATION_POSSIBLE=y
-CONFIG_ARCH_MAY_HAVE_PC_FDC=y
-# CONFIG_ARCH_PHYS_ADDR_T_64BIT is not set
-CONFIG_ARCH_POPULATES_NODE_MAP=y
-CONFIG_ARCH_SELECT_MEMORY_MODEL=y
-CONFIG_ARCH_SPARSEMEM_ENABLE=y
-CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
-CONFIG_ARCH_SUPPORTS_MSI=y
-CONFIG_ARCH_SUPPORTS_OPTIMIZED_INLINING=y
-CONFIG_ARCH_SUSPEND_POSSIBLE=y
-CONFIG_ARCH_WANT_FRAME_POINTERS=y
-CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y
-# CONFIG_ASUS_LAPTOP is not set
-# CONFIG_AUDIT_ARCH is not set
-CONFIG_BACKLIGHT_CLASS_DEVICE=y
-CONFIG_BACKLIGHT_GENERIC=y
-CONFIG_BACKLIGHT_LCD_SUPPORT=y
-# CONFIG_BACKLIGHT_MBP_NVIDIA is not set
-# CONFIG_BACKLIGHT_PROGEAR is not set
-# CONFIG_BACKLIGHT_SAHARA is not set
-# CONFIG_BACKTRACE_SELF_TEST is not set
-CONFIG_BATTERY_OLPC=y
-CONFIG_BINARY_PRINTF=y
-CONFIG_BINFMT_MISC=y
-CONFIG_BITREVERSE=y
-# CONFIG_BLK_DEV is not set
-CONFIG_BLK_DEV_SD=y
-CONFIG_BLK_DEV_SR_VENDOR=y
-CONFIG_BLK_DEV_SR=y
-# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set
-CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0
-# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set
-CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0
-# CONFIG_BOOT_PRINTK_DELAY is not set
-CONFIG_BOUNCE=y
-CONFIG_CAN_PM_TRACE=y
-# CONFIG_CC_STACKPROTECTOR is not set
-CONFIG_CHR_DEV_SG=y
-CONFIG_CLOCKSOURCE_WATCHDOG=y
-# CONFIG_CMDLINE_BOOL is not set
-# CONFIG_COMPAL_LAPTOP is not set
-CONFIG_COMPAT_VDSO=y
-CONFIG_CONSOLE_TRANSLATIONS=y
-# CONFIG_CPA_DEBUG is not set
-# CONFIG_CPU_FREQ_DEBUG is not set
-# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set
-# CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set
-CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y
-# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set
-# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set
-# CONFIG_CPU_FREQ_GOV_CONSERVATIVE is not set
-# CONFIG_CPU_FREQ_GOV_ONDEMAND is not set
-CONFIG_CPU_FREQ_GOV_PERFORMANCE=y
-# CONFIG_CPU_FREQ_GOV_POWERSAVE is not set
-# CONFIG_CPU_FREQ_GOV_USERSPACE is not set
-# CONFIG_CPU_FREQ_STAT_DETAILS is not set
-CONFIG_CPU_FREQ_STAT=y
-CONFIG_CPU_FREQ_TABLE=y
-CONFIG_CPU_FREQ=y
-CONFIG_CPU_IDLE_GOV_LADDER=y
-CONFIG_CPU_IDLE_GOV_MENU=y
-CONFIG_CPU_IDLE=y
-CONFIG_CPU_SUP_AMD=y
-# CONFIG_CPU_SUP_CENTAUR is not set
-# CONFIG_CPU_SUP_CYRIX_32 is not set
-# CONFIG_CPU_SUP_INTEL is not set
-# CONFIG_CPU_SUP_TRANSMETA_32 is not set
-# CONFIG_CPU_SUP_UMC_32 is not set
-CONFIG_CRYPTO_AEAD2=y
-CONFIG_CRYPTO_BLKCIPHER2=y
-CONFIG_CRYPTO_HASH2=y
-CONFIG_CRYPTO_MANAGER2=y
-CONFIG_CRYPTO_RNG2=y
-CONFIG_CRYPTO_WORKQUEUE=y
-# CONFIG_CS5535_GPIO is not set
-# CONFIG_DCDBAS is not set
-# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set
-# CONFIG_DEBUG_BOOT_PARAMS is not set
-# CONFIG_DEBUG_DEVRES is not set
-# CONFIG_DEBUG_DRIVER is not set
-# CONFIG_DEBUG_INFO is not set
-CONFIG_DEBUG_KERNEL=y
-# CONFIG_DEBUG_KOBJECT is not set
-# CONFIG_DEBUG_LIST is not set
-# CONFIG_DEBUG_LOCK_ALLOC is not set
-# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
-# CONFIG_DEBUG_MUTEXES is not set
-# CONFIG_DEBUG_NOTIFIERS is not set
-# CONFIG_DEBUG_NX_TEST is not set
-# CONFIG_DEBUG_OBJECTS is not set
-# CONFIG_DEBUG_PAGEALLOC is not set
-# CONFIG_DEBUG_RODATA is not set
-# CONFIG_DEBUG_RT_MUTEXES is not set
-# CONFIG_DEBUG_SG is not set
-# CONFIG_DEBUG_SHIRQ is not set
-# CONFIG_DEBUG_SLAB is not set
-# CONFIG_DEBUG_SPINLOCK is not set
-# CONFIG_DEBUG_SPINLOCK_SLEEP is not set
-# CONFIG_DEBUG_STACKOVERFLOW is not set
-# CONFIG_DEBUG_STACK_USAGE is not set
-# CONFIG_DEBUG_VIRTUAL is not set
-# CONFIG_DEBUG_VM is not set
-# CONFIG_DEBUG_WRITECOUNT is not set
-CONFIG_DECOMPRESS_LZMA=y
-CONFIG_DEFAULT_IO_DELAY_TYPE=0
-# CONFIG_DELL_RBU is not set
-CONFIG_DETECT_HUNG_TASK=y
-CONFIG_DETECT_SOFTLOCKUP=y
-CONFIG_DEVPORT=y
-CONFIG_DISPLAY_SUPPORT=y
-# CONFIG_DMA_API_DEBUG is not set
-CONFIG_DMIID=y
-CONFIG_DMI=y
-CONFIG_DOUBLEFAULT=y
-CONFIG_DUMMY_CONSOLE=y
-# CONFIG_EARLY_PRINTK_DBGP is not set
-CONFIG_EARLY_PRINTK=y
-# CONFIG_EDAC is not set
-# CONFIG_EDD is not set
-# CONFIG_EEEPC_LAPTOP is not set
-# CONFIG_EFI is not set
-CONFIG_ELF_CORE=y
-CONFIG_EXT2_FS=y
-CONFIG_FAST_CMPXCHG_LOCAL=y
-# CONFIG_FAULT_INJECTION is not set
-CONFIG_FB_CFB_COPYAREA=y
-CONFIG_FB_CFB_FILLRECT=y
-CONFIG_FB_CFB_IMAGEBLIT=y
-# CONFIG_FB_GEODE_GX1 is not set
-# CONFIG_FB_GEODE_GX is not set
-CONFIG_FB_GEODE_LX=y
-CONFIG_FB_GEODE=y
-CONFIG_FB=y
-# CONFIG_FCOE_FNIC is not set
-# CONFIG_FIRMWARE_EDID is not set
-# CONFIG_FIRMWARE_MEMMAP is not set
-CONFIG_FIX_EARLYCON_MEM=y
-CONFIG_FONT_8x16=y
-CONFIG_FONT_8x8=y
-# CONFIG_FONTS is not set
-CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y
-CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y
-CONFIG_FRAMEBUFFER_CONSOLE=y
-# CONFIG_FRAME_POINTER is not set
-CONFIG_FREEZER=y
-# CONFIG_FTRACE_STARTUP_TEST is not set
-# CONFIG_FTRACE_SYSCALLS is not set
-# CONFIG_FUJITSU_LAPTOP is not set
-CONFIG_GENERIC_BUG=y
-CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y
-CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
-CONFIG_GENERIC_CLOCKEVENTS=y
-CONFIG_GENERIC_CMOS_UPDATE=y
-# CONFIG_GENERIC_CPU is not set
-CONFIG_GENERIC_FIND_FIRST_BIT=y
-CONFIG_GENERIC_FIND_LAST_BIT=y
-CONFIG_GENERIC_FIND_NEXT_BIT=y
-CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
-CONFIG_GENERIC_IOMAP=y
-CONFIG_GENERIC_ISA_DMA=y
-# CONFIG_GENERIC_TIME_VSYSCALL is not set
-CONFIG_GEODE_MFGPT_TIMER=y
-# CONFIG_HAMRADIO is not set
-# CONFIG_HANGCHECK_TIMER is not set
-CONFIG_HAS_DMA=y
-CONFIG_HAS_IOMEM=y
-CONFIG_HAS_IOPORT=y
-CONFIG_HAVE_AOUT=y
-CONFIG_HAVE_ARCH_KGDB=y
-CONFIG_HAVE_ARCH_TRACEHOOK=y
-CONFIG_HAVE_ATOMIC_IOMAP=y
-# CONFIG_HAVE_CPUMASK_OF_CPU_MAP is not set
-CONFIG_HAVE_DMA_API_DEBUG=y
-CONFIG_HAVE_DYNAMIC_FTRACE=y
-CONFIG_HAVE_DYNAMIC_PER_CPU_AREA=y
-CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y
-CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y
-CONFIG_HAVE_FTRACE_SYSCALLS=y
-CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
-CONFIG_HAVE_FUNCTION_TRACE_MCOUNT_TEST=y
-CONFIG_HAVE_FUNCTION_TRACER=y
-CONFIG_HAVE_GENERIC_DMA_COHERENT=y
-CONFIG_HAVE_IDE=y
-CONFIG_HAVE_IOREMAP_PROT=y
-CONFIG_HAVE_KERNEL_BZIP2=y
-CONFIG_HAVE_KERNEL_GZIP=y
-CONFIG_HAVE_KERNEL_LZMA=y
-CONFIG_HAVE_KPROBES=y
-CONFIG_HAVE_KRETPROBES=y
-CONFIG_HAVE_KVM_IRQCHIP=y
-CONFIG_HAVE_KVM=y
-CONFIG_HAVE_LATENCYTOP_SUPPORT=y
-CONFIG_HAVE_MLOCK=y
-CONFIG_HAVE_MMIOTRACE_SUPPORT=y
-CONFIG_HAVE_OPROFILE=y
-CONFIG_HAVE_SETUP_PER_CPU_AREA=y
-CONFIG_HAVE_UNSTABLE_SCHED_CLOCK=y
-CONFIG_HIBERNATION=y
-CONFIG_HID_SUPPORT=y
-CONFIG_HID=y
-# CONFIG_HIGHMEM4G is not set
-# CONFIG_HIGHMEM64G is not set
-CONFIG_HPET_EMULATE_RTC=y
-# CONFIG_HPET is not set
-CONFIG_HPET_TIMER=y
-CONFIG_HT_IRQ=y
-# CONFIG_HUGETLBFS is not set
-CONFIG_HW_CONSOLE=y
-# CONFIG_HW_RANDOM_AMD is not set
-CONFIG_HW_RANDOM_GEODE=y
-# CONFIG_HW_RANDOM_INTEL is not set
-CONFIG_HW_RANDOM_VIA=y
-CONFIG_HW_RANDOM=y
-# CONFIG_I8K is not set
-# CONFIG_IMA is not set
-CONFIG_INITRAMFS_SOURCE=""
-CONFIG_INPUT_EVDEV=y
-CONFIG_INPUT_KEYBOARD=y
-# CONFIG_INPUT_MOUSEDEV_PSAUX is not set
-CONFIG_INPUT_MOUSEDEV_SCREEN_X=1200
-CONFIG_INPUT_MOUSEDEV_SCREEN_Y=900
-CONFIG_INPUT_MOUSEDEV=y
-CONFIG_INPUT_MOUSE=y
-CONFIG_INPUT=y
-# CONFIG_INPUT_YEALINK is not set
-# CONFIG_INTEL_MENLOW is not set
-CONFIG_IO_DELAY_0X80=y
-# CONFIG_IO_DELAY_0XED is not set
-# CONFIG_IO_DELAY_NONE is not set
-CONFIG_IO_DELAY_TYPE_0X80=0
-CONFIG_IO_DELAY_TYPE_0XED=1
-CONFIG_IO_DELAY_TYPE_NONE=3
-CONFIG_IO_DELAY_TYPE_UDELAY=2
-# CONFIG_IO_DELAY_UDELAY is not set
-# CONFIG_IOMMU_API is not set
-# CONFIG_IOMMU_HELPER is not set
-CONFIG_ISA_DMA_API=y
-# CONFIG_ISA is not set
-# CONFIG_ISCSI_IBFT_FIND is not set
-# CONFIG_ISDN is not set
-# CONFIG_KALLSYMS_ALL is not set
-CONFIG_KALLSYMS=y
-# CONFIG_KERNEL_BZIP2 is not set
-CONFIG_KERNEL_GZIP=y
-# CONFIG_KERNEL_LZMA is not set
-# CONFIG_KEXEC_JUMP is not set
-CONFIG_KEXEC=y
-CONFIG_KEYBOARD_ATKBD=y
-# CONFIG_KEYBOARD_LKKBD is not set
-# CONFIG_KEYBOARD_NEWTON is not set
-# CONFIG_KEYBOARD_STOWAWAY is not set
-# CONFIG_KEYBOARD_SUNKBD is not set
-# CONFIG_KEYBOARD_XTKBD is not set
-# CONFIG_KGDB is not set
-CONFIG_KTIME_SCALAR=y
-CONFIG_LCD_CLASS_DEVICE=y
-# CONFIG_LCD_ILI9320 is not set
-# CONFIG_LCD_PLATFORM is not set
-# CONFIG_LEDS_ALIX2 is not set
-# CONFIG_LEDS_CLEVO_MAIL is not set
-# CONFIG_LOCK_STAT is not set
-# CONFIG_LOGO is not set
-# CONFIG_M386 is not set
-# CONFIG_M486 is not set
-# CONFIG_M586 is not set
-# CONFIG_M586MMX is not set
-# CONFIG_M586TSC is not set
-# CONFIG_M686 is not set
-# CONFIG_MACINTOSH_DRIVERS is not set
-CONFIG_MARKERS=y
-# CONFIG_MATH_EMULATION is not set
-# CONFIG_MCA is not set
-# CONFIG_MCORE2 is not set
-# CONFIG_MCRUSOE is not set
-# CONFIG_MCYRIXIII is not set
-# CONFIG_MEFFICEON is not set
-# CONFIG_MEMTEST is not set
-# CONFIG_MGEODEGX1 is not set
-CONFIG_MGEODE_LX=y
-# CONFIG_MICROCODE is not set
-# CONFIG_MISC_DEVICES is not set
-# CONFIG_MK6 is not set
-# CONFIG_MK7 is not set
-# CONFIG_MK8 is not set
-CONFIG_MMC_BLOCK=y
-CONFIG_MMC_SDHCI=y
-CONFIG_MMC=y
-# CONFIG_MMIOTRACE is not set
-# CONFIG_MOUSE_BCM5974 is not set
-CONFIG_MOUSE_PS2_ALPS=y
-# CONFIG_MOUSE_PS2_ELANTECH is not set
-CONFIG_MOUSE_PS2_LIFEBOOK=y
-CONFIG_MOUSE_PS2_LOGIPS2PP=y
-CONFIG_MOUSE_PS2_OLPC=y
-CONFIG_MOUSE_PS2_SYNAPTICS=y
-# CONFIG_MOUSE_PS2_TOUCHKIT is not set
-CONFIG_MOUSE_PS2_TRACKPOINT=y
-CONFIG_MOUSE_PS2=y
-# CONFIG_MOUSE_SERIAL is not set
-# CONFIG_MOUSE_VSXXXAA is not set
-# CONFIG_MPENTIUM4 is not set
-# CONFIG_MPENTIUMIII is not set
-# CONFIG_MPENTIUMII is not set
-# CONFIG_MPENTIUMM is not set
-# CONFIG_MPSC is not set
-# CONFIG_MSI_LAPTOP is not set
-CONFIG_MTD_BLOCK2MTD=y
-# CONFIG_MTD_CFI is not set
-CONFIG_MTD_CMDLINE_PARTS=y
-CONFIG_MTD_PCI=y
-# CONFIG_MTD_TS5500 is not set
-# CONFIG_MTRR is not set
-# CONFIG_MVIAC3_2 is not set
-# CONFIG_MVIAC7 is not set
-# CONFIG_MWINCHIP3D is not set
-# CONFIG_MWINCHIPC6 is not set
-# CONFIG_NETDEV_1000 is not set
-# CONFIG_NET_DROP_MONITOR is not set
-# CONFIG_NET_ETHERNET is not set
-# CONFIG_NETWORK_FILESYSTEMS is not set
-CONFIG_NOHIGHMEM=y
-CONFIG_NO_HZ=y
-CONFIG_NOP_TRACER=y
-CONFIG_NR_CPUS=1
-# CONFIG_NSC_GPIO is not set
-CONFIG_NVRAM=y
-CONFIG_OLPC=y
-CONFIG_OPROFILE=y
-# CONFIG_OPTIMIZE_INLINING is not set
-CONFIG_PAGEFLAGS_EXTENDED=y
-CONFIG_PAGE_OFFSET=0xC0000000
-# CONFIG_PANASONIC_LAPTOP is not set
-# CONFIG_PARAVIRT_GUEST is not set
-# CONFIG_PARTITION_ADVANCED is not set
-# CONFIG_PC8736x_GPIO is not set
-# CONFIG_PCI_DEBUG is not set
-CONFIG_PCI_DIRECT=y
-CONFIG_PCI_DOMAINS=y
-# CONFIG_PCIEPORTBUS is not set
-# CONFIG_PCI_GOANY is not set
-# CONFIG_PCI_GOBIOS is not set
-# CONFIG_PCI_GODIRECT is not set
-# CONFIG_PCI_GOMMCONFIG is not set
-CONFIG_PCI_GOOLPC=y
-CONFIG_PCI_OLPC=y
-CONFIG_PCSPKR_PLATFORM=y
-# CONFIG_PDA_POWER is not set
-CONFIG_PHYSICAL_ALIGN=0x100000
-CONFIG_PHYSICAL_START=0x100000
-CONFIG_PM_DEBUG=y
-CONFIG_PM_SLEEP=y
-CONFIG_PM_STD_PARTITION=""
-# CONFIG_PM_TRACE_RTC is not set
-# CONFIG_PM_VERBOSE is not set
-CONFIG_PM=y
-CONFIG_PNPACPI=y
-CONFIG_PNP_DEBUG_MESSAGES=y
-CONFIG_PNP=y
-# CONFIG_POWER_SUPPLY_DEBUG is not set
-CONFIG_POWER_SUPPLY=y
-# CONFIG_POWER_TRACER is not set
-# CONFIG_PREEMPT_NONE is not set
-CONFIG_PREEMPT_VOLUNTARY=y
-CONFIG_PROCESSOR_SELECT=y
-CONFIG_PROFILING=y
-# CONFIG_PROVE_LOCKING is not set
-# CONFIG_PROVIDE_OHCI1394_DMA_INIT is not set
-# CONFIG_RCU_TORTURE_TEST is not set
-CONFIG_RELAY=y
-# CONFIG_RELOCATABLE is not set
-CONFIG_RING_BUFFER=y
-CONFIG_RTC=y
-# CONFIG_RT_MUTEX_TESTER is not set
-# CONFIG_RWSEM_GENERIC_SPINLOCK is not set
-CONFIG_RWSEM_XCHGADD_ALGORITHM=y
-CONFIG_SCHED_DEBUG=y
-CONFIG_SCHED_HRTICK=y
-CONFIG_SCHED_OMIT_FRAME_POINTER=y
-CONFIG_SCHEDSTATS=y
-CONFIG_SCSI=y
-# CONFIG_SCx200 is not set
-# CONFIG_SDIO_UART is not set
-# CONFIG_SERIAL_8250_EXTENDED is not set
-CONFIG_SERIAL_8250_PCI=y
-CONFIG_SERIAL_8250_PNP=y
-# CONFIG_SERIO_CT82C710 is not set
-CONFIG_SERIO_I8042=y
-CONFIG_SERIO_LIBPS2=y
-# CONFIG_SERIO_PCIPS2 is not set
-# CONFIG_SERIO_RAW is not set
-CONFIG_SERIO_SERPORT=y
-CONFIG_SERIO=y
-# CONFIG_SLOW_WORK is not set
-# CONFIG_SONYPI is not set
-# CONFIG_SPARSE_IRQ is not set
-CONFIG_SPARSEMEM_STATIC=y
-CONFIG_STACKTRACE=y
-CONFIG_STRICT_DEVMEM=y
-CONFIG_SUSPEND_FREEZER=y
-CONFIG_SUSPEND=y
-# CONFIG_SYSPROF_TRACER is not set
-# CONFIG_TC1100_WMI is not set
-# CONFIG_TELCLOCK is not set
-CONFIG_THERMAL=y
-# CONFIG_THINKPAD_ACPI is not set
-CONFIG_TIMER_STATS=y
-# CONFIG_TOSHIBA is not set
-CONFIG_TRACEPOINTS=y
-CONFIG_TRACING_SUPPORT=y
-CONFIG_TRACING=y
-CONFIG_UID16=y
-CONFIG_USB_EHCI_HCD=y
-CONFIG_USB_EHCI_TT_NEWSCHED=y
-# CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set
-# CONFIG_USB_OHCI_BIG_ENDIAN_MMIO is not set
-CONFIG_USB_OHCI_HCD=y
-CONFIG_USB_STORAGE=y
-CONFIG_USB_SUPPORT=y
-CONFIG_USB_SUSPEND=y
-CONFIG_USB_UHCI_HCD=y
-CONFIG_USB=y
-CONFIG_USER_STACKTRACE_SUPPORT=y
-CONFIG_VGACON_SOFT_SCROLLBACK_SIZE=64
-CONFIG_VGACON_SOFT_SCROLLBACK=y
-CONFIG_VGA_CONSOLE=y
-CONFIG_VM86=y
-CONFIG_VM_EVENT_COUNTERS=y
-# CONFIG_VMSPLIT_2G_OPT is not set
-# CONFIG_VMSPLIT_3G_OPT is not set
-CONFIG_VT_CONSOLE=y
-# CONFIG_VT_HW_CONSOLE_BINDING is not set
-CONFIG_VT=y
-# CONFIG_WATCHDOG is not set
-CONFIG_X86_32_LAZY_GS=y
-CONFIG_X86_32=y
-# CONFIG_X86_64 is not set
-# CONFIG_X86_ACPI_CPUFREQ is not set
-CONFIG_X86_BSWAP=y
-# CONFIG_X86_CHECK_BIOS_CORRUPTION is not set
-CONFIG_X86_CMPXCHG=y
-# CONFIG_X86_CPU_DEBUG is not set
-# CONFIG_X86_CPUFREQ_NFORCE2 is not set
-# CONFIG_X86_CPUID is not set
-CONFIG_X86_CPU=y
-CONFIG_X86_DEBUGCTLMSR=y
-# CONFIG_X86_DS is not set
-# CONFIG_X86_ELAN is not set
-# CONFIG_X86_E_POWERSAVER is not set
-CONFIG_X86_EXTENDED_PLATFORM=y
-CONFIG_X86_GENERIC=y
-# CONFIG_X86_GX_SUSPMOD is not set
-CONFIG_X86_INTEL_USERCOPY=y
-CONFIG_X86_INTERNODE_CACHE_BYTES=64
-CONFIG_X86_INVLPG=y
-CONFIG_X86_IO_APIC=y
-CONFIG_X86_L1_CACHE_BYTES=64
-CONFIG_X86_L1_CACHE_SHIFT=5
-CONFIG_X86_LOCAL_APIC=y
-# CONFIG_X86_LONGHAUL is not set
-# CONFIG_X86_LONGRUN is not set
-# CONFIG_X86_MCE is not set
-CONFIG_X86_MINIMUM_CPU_FAMILY=4
-CONFIG_X86_MPPARSE=y
-# CONFIG_X86_MSR is not set
-# CONFIG_X86_P4_CLOCKMOD is not set
-# CONFIG_X86_PAE is not set
-CONFIG_X86_PLATFORM_DEVICES=y
-CONFIG_X86_PM_TIMER=y
-CONFIG_X86_POPAD_OK=y
-# CONFIG_X86_POWERNOW_K6 is not set
-# CONFIG_X86_POWERNOW_K7 is not set
-# CONFIG_X86_POWERNOW_K8 is not set
-# CONFIG_X86_PTDUMP is not set
-# CONFIG_X86_RDC321X is not set
-# CONFIG_X86_REBOOTFIXUPS is not set
-# CONFIG_X86_REROUTE_FOR_BROKEN_BOOT_IRQS is not set
-# CONFIG_X86_RESERVE_LOW_64K is not set
-# CONFIG_X86_SPEEDSTEP_CENTRINO is not set
-# CONFIG_X86_SPEEDSTEP_ICH is not set
-# CONFIG_X86_SPEEDSTEP_LIB is not set
-# CONFIG_X86_SPEEDSTEP_SMI is not set
-CONFIG_X86_TSC=y
-CONFIG_X86_UP_APIC=y
-CONFIG_X86_UP_IOAPIC=y
-CONFIG_X86_USE_3DNOW=y
-CONFIG_X86_USE_PPRO_CHECKSUM=y
-CONFIG_X86_VERBOSE_BOOTUP=y
-CONFIG_X86_WP_WORKS_OK=y
-CONFIG_X86_XADD=y
-CONFIG_X86=y
-# CONFIG_ZONE_DMA32 is not set
diff --git a/target/linux/olpc/generic/profiles/000-Generic.mk b/target/linux/olpc/generic/profiles/000-Generic.mk
deleted file mode 100644
index d7e6b7eb1..000000000
--- a/target/linux/olpc/generic/profiles/000-Generic.mk
+++ /dev/null
@@ -1,16 +0,0 @@
-#
-# Copyright (C) 2006 OpenWrt.org
-#
-# This is free software, licensed under the GNU General Public License v2.
-# See /LICENSE for more information.
-#
-
-define Profile/Generic
- NAME:=Generic
- PACKAGES:=
-endef
-
-define Profile/Generic/Description
- Generic Profile
-endef
-$(eval $(call Profile,Generic))
diff --git a/target/linux/olpc/generic/target.mk b/target/linux/olpc/generic/target.mk
deleted file mode 100644
index ea16d6379..000000000
--- a/target/linux/olpc/generic/target.mk
+++ /dev/null
@@ -1,6 +0,0 @@
-SUBTARGET:=generic
-
-define Target/Description
- Build firmware images for OLPC
-endef
-
diff --git a/target/linux/olpc/image/Config.in b/target/linux/olpc/image/Config.in
deleted file mode 100644
index 27bbb961a..000000000
--- a/target/linux/olpc/image/Config.in
+++ /dev/null
@@ -1,23 +0,0 @@
-config OLPC_BOOTSCRIPT_IMAGES
- bool "Build images with bootscript"
- depends TARGET_olpc
- depends TARGET_ROOTFS_EXT2FS || TARGET_ROOTFS_JFFS2 || TARGET_ROOTFS_SQUASHFS || TARGET_ROOTFS_ISO
- default y
-
-config OLPC_BOOTSCRIPT_IMAGES_PAD
- bool "Pad bootscript images to filesystem size (for JFFS2)"
- depends OLPC_BOOTSCRIPT_IMAGES
-
-config OLPC_BOOTSCRIPT_KERNELPART
- int "Kernel partition size (in MB)"
- depends OLPC_BOOTSCRIPT_IMAGES
- default 4
-
-config OLPC_BOOTSCRIPT_ROOTPART
- string
- prompt "Root partition on target device" if OLPC_BOOTSCRIPT_IMAGES
- default "/dev/sda2"
- help
- The root partition on the final device. If you don't know,
- you probably want the default (/dev/sda2).
-
diff --git a/target/linux/olpc/image/Makefile b/target/linux/olpc/image/Makefile
deleted file mode 100644
index 7ba712da6..000000000
--- a/target/linux/olpc/image/Makefile
+++ /dev/null
@@ -1,64 +0,0 @@
-#
-# Copyright (C) 2007-2008 OpenWrt.org
-#
-# This is free software, licensed under the GNU General Public License v2.
-# See /LICENSE for more information.
-#
-include $(TOPDIR)/rules.mk
-include $(INCLUDE_DIR)/image.mk
-
-export PATH=$(TARGET_PATH):/sbin
-ROOTPART=$(strip $(subst ",, $(CONFIG_OLPC_BOOTSCRIPT_ROOTPART)))
-#"))")) # fix vim's broken syntax highlighting
-
-ROOTDELAY=10
-
-ifeq ($(CONFIG_OLPC_BOOTSCRIPT_IMAGES),y)
- define Image/cmdline/squashfs
- block2mtd.block2mtd=$(ROOTPART),65536,rootfs root=/dev/mtdblock0 rootfstype=squashfs rootdelay=$(ROOTDELAY)
- endef
-
- define Image/cmdline/jffs2-64k
- block2mtd.block2mtd=$(ROOTPART),65536,rootfs root=/dev/mtdblock0 rootfstype=jffs2 rootdelay=$(ROOTDELAY)
- endef
-
- define Image/cmdline/jffs2-128k
- block2mtd.block2mtd=$(ROOTPART),131072,rootfs root=/dev/mtdblock0 rootfstype=jffs2 rootdelay=$(ROOTDELAY)
- endef
-
- define Image/cmdline/ext2
- root=$(ROOTPART) rootfstype=ext2 rootwait
- endef
-
- define Image/Build/bootscript
- # left here because the image builder doesnt need these
- $(INSTALL_DIR) $(KDIR)/root.bootscript/boot
- $(CP) $(KDIR)/bzImage $(KDIR)/root.bootscript/boot/vmlinuz
- sed -e 's#@CMDLINE@#$(strip $(call Image/cmdline/$(1))) $(BOOTOPTS)#g' \
- ./olpc.fth > $(KDIR)/root.bootscript/boot/olpc.fth
- PADDING="$(CONFIG_OLPC_BOOTSCRIPT_IMAGES_PAD)" PATH="$(TARGET_PATH)" ./gen_image.sh $(BIN_DIR)/openwrt-$(BOARD)-$(1).image $(CONFIG_OLPC_BOOTSCRIPT_KERNELPART) $(KDIR)/root.bootscript $(CONFIG_TARGET_ROOTFS_FSPART) $(KDIR)/root.$(1)
- endef
-endif
-
-define Image/Prepare
- cp $(LINUX_DIR)/arch/x86/boot/bzImage $(KDIR)/bzImage
- $(call Image/Prepare/bootscript)
-endef
-
-define Image/Build/squashfs
- $(call prepare_generic_squashfs,$(KDIR)/root.squashfs)
-endef
-
-define Image/BuildKernel
- $(CP) $(KDIR)/bzImage $(BIN_DIR)/openwrt-$(BOARD)-vmlinuz
-endef
-
-define Image/Build
- $(call Image/Build/$(1))
- $(call Image/Build/bootscript,$(1))
- $(CP) $(KDIR)/root.$(1) $(BIN_DIR)/openwrt-$(BOARD)-$(1).fs
- $(CP) $(KDIR)/bzImage $(BIN_DIR)/openwrt-$(BOARD)-vmlinuz
-endef
-
-$(eval $(call BuildImage))
-
diff --git a/target/linux/olpc/image/gen_image.sh b/target/linux/olpc/image/gen_image.sh
deleted file mode 100755
index 4fd6e377e..000000000
--- a/target/linux/olpc/image/gen_image.sh
+++ /dev/null
@@ -1,35 +0,0 @@
-#!/usr/bin/env bash
-# Copyright (C) 2006 - 2007 OpenWrt.org
-set -x
-[ $# == 5 ] || {
- echo "SYNTAX: $0 <file> <kernel size> <kernel directory> <rootfs size> <rootfs image>"
- exit 1
-}
-
-OUTPUT="$1"
-KERNELSIZE="$2"
-KERNELDIR="$3"
-ROOTFSSIZE="$4"
-ROOTFSIMAGE="$5"
-
-rm -f "$OUTPUT"
-
-head=16
-sect=63
-cyl=$(( ($KERNELSIZE + $ROOTFSSIZE) * 1024 * 1024 / ($head * $sect * 512)))
-
-# create partition table
-set `ptgen -o "$OUTPUT" -h $head -s $sect -p ${KERNELSIZE}m -p ${ROOTFSSIZE}m`
-
-KERNELOFFSET="$(($1 / 512))"
-KERNELSIZE="$(($2 / 512))"
-ROOTFSOFFSET="$(($3 / 512))"
-ROOTFSSIZE="$(($4 / 512))"
-
-BLOCKS="$((($KERNELSIZE / 2) - 1))"
-
-genext2fs -d "$KERNELDIR" -b "$BLOCKS" "$OUTPUT.kernel"
-dd if="$OUTPUT.kernel" of="$OUTPUT" bs=512 seek="$KERNELOFFSET" conv=notrunc
-[ -n "$PADDING" ] && dd if=/dev/zero of="$OUTPUT" bs=512 seek="$ROOTFSOFFSET" conv=notrunc count="$ROOTFSSIZE"
-dd if="$ROOTFSIMAGE" of="$OUTPUT" bs=512 seek="$ROOTFSOFFSET" conv=notrunc
-#rm -f "$OUTPUT.kernel"
diff --git a/target/linux/olpc/image/olpc.fth b/target/linux/olpc/image/olpc.fth
deleted file mode 100644
index 5914be660..000000000
--- a/target/linux/olpc/image/olpc.fth
+++ /dev/null
@@ -1,5 +0,0 @@
-\ Boot script
-" u:\boot\vmlinuz" to boot-device
-" @CMDLINE@ noinitrd console=ttyS0,115200 console=tty0" to boot-file
-unfreeze
-boot
diff --git a/target/linux/olpc/patches-2.6.30/300-block2mtd_init.patch b/target/linux/olpc/patches-2.6.30/300-block2mtd_init.patch
deleted file mode 100644
index 12165b52b..000000000
--- a/target/linux/olpc/patches-2.6.30/300-block2mtd_init.patch
+++ /dev/null
@@ -1,210 +0,0 @@
---- a/arch/x86/kernel/vmlinux_32.lds.S
-+++ b/arch/x86/kernel/vmlinux_32.lds.S
-@@ -136,6 +136,12 @@ SECTIONS
- INITCALLS
- __initcall_end = .;
- }
-+ .root_initcall.init : AT(ADDR(.root_initcall.init) - LOAD_OFFSET) {
-+ __root_initcall_start = .;
-+ INITCALLS_ROOT
-+ __root_initcall_end = .;
-+ }
-+
- .con_initcall.init : AT(ADDR(.con_initcall.init) - LOAD_OFFSET) {
- __con_initcall_start = .;
- *(.con_initcall.init)
---- a/drivers/mtd/devices/block2mtd.c
-+++ b/drivers/mtd/devices/block2mtd.c
-@@ -18,10 +18,18 @@
- #include <linux/buffer_head.h>
- #include <linux/mutex.h>
- #include <linux/mount.h>
-+#include <linux/list.h>
-+#include <linux/delay.h>
-
- #define ERROR(fmt, args...) printk(KERN_ERR "block2mtd: " fmt "\n" , ## args)
- #define INFO(fmt, args...) printk(KERN_INFO "block2mtd: " fmt "\n" , ## args)
-
-+struct retry {
-+ struct list_head list;
-+ const char *val;
-+};
-+
-+static LIST_HEAD(retry_list);
-
- /* Info for the block device */
- struct block2mtd_dev {
-@@ -33,10 +41,34 @@ struct block2mtd_dev {
- char devname[0];
- };
-
-+static int block2mtd_setup2(const char *val);
-
- /* Static info about the MTD, used in cleanup_module */
- static LIST_HEAD(blkmtd_device_list);
-
-+static int add_retry(const char *val) {
-+ struct retry *r = kmalloc(sizeof(struct retry), GFP_KERNEL);
-+
-+ INIT_LIST_HEAD(&r->list);
-+ r->val = val;
-+ list_add(&r->list, &retry_list);
-+
-+ return 0;
-+}
-+
-+static int __init process_retries(void) {
-+ struct list_head *p, *tmp;
-+
-+ list_for_each_safe(p, tmp, &retry_list) {
-+ struct retry *r = list_entry(p, struct retry, list);
-+ block2mtd_setup2(r->val);
-+ msleep(100);
-+ list_del(p);
-+ kfree(r);
-+ }
-+ return 0;
-+}
-+rootfs_initcall(process_retries);
-
- static struct page *page_read(struct address_space *mapping, int index)
- {
-@@ -510,7 +542,9 @@ static int block2mtd_setup2(const char *
- if (token[2] && (strlen(token[2]) + 1 > 80))
- parse_err("mtd device name too long");
-
-- add_device(name, erase_size, token[2]);
-+ if (add_device(name, erase_size, token[2]) == NULL) {
-+ add_retry(val);
-+ }
-
- return 0;
- }
---- a/include/asm-generic/vmlinux.lds.h
-+++ b/include/asm-generic/vmlinux.lds.h
-@@ -447,12 +447,14 @@
- *(.initcall4s.init) \
- *(.initcall5.init) \
- *(.initcall5s.init) \
-- *(.initcallrootfs.init) \
- *(.initcall6.init) \
- *(.initcall6s.init) \
- *(.initcall7.init) \
- *(.initcall7s.init)
-
-+#define INITCALLS_ROOT \
-+ *(.initcallrootfs.init)
-+
- /**
- * PERCPU_VADDR - define output section for percpu area
- * @vaddr: explicit base address (optional)
---- a/init/do_mounts.c
-+++ b/init/do_mounts.c
-@@ -176,16 +176,8 @@ static int __init fs_names_setup(char *s
- return 1;
- }
-
--static unsigned int __initdata root_delay;
--static int __init root_delay_setup(char *str)
--{
-- root_delay = simple_strtoul(str, NULL, 0);
-- return 1;
--}
--
- __setup("rootflags=", root_data_setup);
- __setup("rootfstype=", fs_names_setup);
--__setup("rootdelay=", root_delay_setup);
-
- static void __init get_fs_names(char *page)
- {
-@@ -365,23 +357,6 @@ void __init prepare_namespace(void)
- {
- int is_floppy;
-
-- if (root_delay) {
-- printk(KERN_INFO "Waiting %dsec before mounting root device...\n",
-- root_delay);
-- ssleep(root_delay);
-- }
--
-- /*
-- * wait for the known devices to complete their probing
-- *
-- * Note: this is a potential source of long boot delays.
-- * For example, it is not atypical to wait 5 seconds here
-- * for the touchpad of a laptop to initialize.
-- */
-- wait_for_device_probe();
--
-- md_run_setup();
--
- if (saved_root_name[0]) {
- root_device_name = saved_root_name;
- if (!strncmp(root_device_name, "mtd", 3) ||
---- a/init/main.c
-+++ b/init/main.c
-@@ -76,6 +76,7 @@
- #ifdef CONFIG_X86_LOCAL_APIC
- #include <asm/smp.h>
- #endif
-+#include "do_mounts.h"
-
- static int kernel_init(void *);
-
-@@ -752,12 +753,13 @@ int do_one_initcall(initcall_t fn)
-
-
- extern initcall_t __initcall_start[], __initcall_end[], __early_initcall_end[];
-+extern initcall_t __root_initcall_start[], __root_initcall_end[];
-
--static void __init do_initcalls(void)
-+static void __init do_initcalls(initcall_t *start, initcall_t *end)
- {
- initcall_t *call;
-
-- for (call = __early_initcall_end; call < __initcall_end; call++)
-+ for (call = start; call < end; call++)
- do_one_initcall(*call);
-
- /* Make sure there is no pending stuff from the initcall sequence */
-@@ -779,7 +781,7 @@ static void __init do_basic_setup(void)
- usermodehelper_init();
- driver_init();
- init_irq_proc();
-- do_initcalls();
-+ do_initcalls(__early_initcall_end, __initcall_end);
- }
-
- static void __init do_pre_smp_initcalls(void)
-@@ -840,6 +842,13 @@ static noinline int init_post(void)
- panic("No init found. Try passing init= option to kernel.");
- }
-
-+static unsigned int __initdata root_delay;
-+static int __init root_delay_setup(char *str)
-+{
-+ root_delay = simple_strtoul(str, NULL, 0);
-+ return 1;
-+}
-+__setup("rootdelay=", root_delay_setup);
- static int __init kernel_init(void * unused)
- {
- lock_kernel();
-@@ -879,7 +888,16 @@ static int __init kernel_init(void * unu
-
- if (sys_access((const char __user *) ramdisk_execute_command, 0) != 0) {
- ramdisk_execute_command = NULL;
-- prepare_namespace();
-+ if (root_delay) {
-+ printk(KERN_INFO "Waiting %desc before mounting root device...\n",
-+ root_delay);
-+ ssleep(root_delay);
-+ }
-+ while (driver_probe_done() != 0)
-+ msleep(100);
-+ md_run_setup();
-+ do_initcalls(__root_initcall_start, __root_initcall_end);
-+ prepare_namespace();
- }
-
- /*