[U-Boot] [PATCH v2] omap3evm: Support for quick boot
Sanjeev Premi
premi at ti.com
Wed Oct 27 15:36:51 CEST 2010
Default configuration enables multiple features
that are great for intial development work. But
many of them are not useful when time taken to
boot kernel is important - and uboot is frozen.
This patch attempts to reduce the size of u-boot
binary by excluding unused/not-so-commonly used
features/commands. It allows initialization of
unused devices to be skipped.
Less time to load the binary and selective
initialization results in considerable reduction
in the boot time.
Signed-off-by: Sanjeev Premi <premi at ti.com>
---
v2: Replaced occurences of "fast" with "quick"
to avoid any confusion with "fastboot" in
Android.
include/configs/omap3_evm.h | 138 +++++++++++++++++++++++++++++++++++++++++++
1 files changed, 138 insertions(+), 0 deletions(-)
diff --git a/include/configs/omap3_evm.h b/include/configs/omap3_evm.h
index 271c985..ce681b1 100644
--- a/include/configs/omap3_evm.h
+++ b/include/configs/omap3_evm.h
@@ -378,4 +378,142 @@ extern unsigned int boot_flash_type;
#define CONFIG_BOOTP_HOSTNAME 0x00000004
#define CONFIG_BOOTP_BOOTPATH 0x00000010
+/*
+ * Support for quick boot
+ *
+ * In default build, the feature is disabled. To use the feature:
+ * 1) Define CONFIG_QUICK_BOOT
+ * 2) Select the device used as boot medium, by defining one of:
+ * - CONFIG_QUICK_BOOT_MMC
+ * - CONFIG_QUICK_BOOT_NAND
+ */
+#undef CONFIG_QUICK_BOOT
+#undef CONFIG_QUICK_BOOT_MMC
+#undef CONFIG_QUICK_BOOT_NAND
+
+#ifdef CONFIG_QUICK_BOOT
+ /*
+ * Generic config options
+ */
+ #ifndef CONFIG_SILENT_CONSOLE
+ #define CONFIG_SILENT_CONSOLE 1
+ #endif
+
+ #ifndef CONFIG_ENV_IS_NOWHERE
+ #define CONFIG_ENV_IS_NOWHERE 1
+ #endif
+
+ /*
+ * Exclude unused/rarely used features.
+ */
+ #undef CONFIG_SYS_LONGHELP
+ #undef CONFIG_SYS_HUSH_PARSER
+
+ #undef CONFIG_REVISION_TAG
+
+ #undef CONFIG_MD5
+ #undef CONFIG_SHA1
+ #undef CONFIG_BZIP2
+ #undef CONFIG_LZMA
+
+ #undef CONFIG_CMD_BDI
+ #undef CONFIG_CMD_BOOTD
+ #undef CONFIG_CMD_CONSOLE
+ #undef CONFIG_CMD_ECHO
+ #undef CONFIG_CMD_EDITENV
+ #undef CONFIG_CMD_FPGA
+ #undef CONFIG_CMD_IMI
+ #undef CONFIG_CMD_ITEST
+ #undef CONFIG_CMD_LOADB
+ #undef CONFIG_CMD_LOADS
+ #undef CONFIG_CMD_NET
+ #undef CONFIG_CMD_NFS
+ #undef CONFIG_CMD_SETGETDCR
+ #undef CONFIG_CMD_SOURCE
+ #undef CONFIG_CMD_XIMG
+ #undef CONFIG_CMD_FPGA
+ #undef CONFIG_CMD_IMLS
+ #undef CONFIG_CMD_FLASH
+ #undef CONFIG_CMD_EXT2
+ #undef CONFIG_CMD_USB
+
+ #undef CONFIG_NET_MULTI
+
+ #undef CONFIG_SMC911X
+
+ #undef CONFIG_OF_LIBFDT
+ #undef CONFIG_FIT
+
+ #undef CONFIG_EXTRA_ENV_SETTINGS
+ #define CONFIG_EXTRA_ENV_SETTINGS \
+ "verify=no\0" \
+ "bootfile=uImage\0"
+
+ #undef CONFIG_BOOTDELAY
+ #define CONFIG_BOOTDELAY 0
+
+ /*
+ * Select options based on choice of boot medium.
+ */
+ #ifdef CONFIG_QUICK_BOOT_MMC
+ #undef CONFIG_NAND_OMAP_GPMC
+ #undef CONFIG_ENV_IS_IN_NAND
+ #undef CONFIG_CMD_NAND
+ #endif
+
+ #ifdef CONFIG_QUICK_BOOT_MMC
+ #undef CONFIG_ENV_IS_IN_NAND
+ #undef CONFIG_CMD_NAND
+
+ #undef CONFIG_BOOTCOMMAND
+ #define CONFIG_BOOTCOMMAND \
+ "mmc init; " \
+ "fatload mmc 0 0x80000000 uImage; " \
+ "bootm 0x80000000;"
+
+ #undef CONFIG_BOOTARGS
+ #define CONFIG_BOOTARGS \
+ "console=ttyS0,115200n8 " \
+ "mem=128M quiet noinitrd" \
+ "root=/dev/mmcblk0p2 rw " \
+ "rootfstype=ext3 rootwait "
+ #endif
+
+ #ifdef CONFIG_QUICK_BOOT_NAND
+ # undef CONFIG_OMAP3_MMC
+ # undef CONFIG_CMD_MMC
+ # undef CONFIG_DOS_PARTITION
+ # undef CONFIG_CMD_FAT
+
+ #undef CONFIG_BOOTCOMMAND
+ #define CONFIG_BOOTCOMMAND \
+ "nand read.i 0x80000000 280000 500000; " \
+ "bootm 0x80000000;"
+
+ #undef CONFIG_BOOTARGS
+ #define CONFIG_BOOTARGS \
+ "console=ttyS0,115200n8 " \
+ "mem=128M quiet noinitrd" \
+ "root=/dev/mtdblock4 rw " \
+ "rootfstype=jffs2 "
+ #endif
+
+ /*
+ * Board specific features
+ * Exclude not-so-common features
+ */
+ #undef CONFIG_USB_OMAP3
+ #undef CONFIG_MUSB_HCD
+
+ #undef CONFIG_USB_STORAGE
+ #undef CONFIG_USB_KEYBOARD
+ #undef CONFIG_SYS_USB_EVENT_POLL
+ #undef CONFIG_PREBOOT
+
+ #undef CONFIG_MUSB_UDC
+ #undef CONFIG_USB_DEVICE
+ #undef CONFIG_USB_TTY
+
+#endif /* #ifdef CONFIG_QUICK_BOOT */
+
#endif /* __CONFIG_H */
--
1.7.2.2
More information about the U-Boot
mailing list