--- /dev/null
+menuconfig BR2_TARGET_XLOADER
+ bool "X-loader"
+ depends on BR2_cortex_a8 || BR2_cortex_a9
+ help
+ The x-loader bootloader. It is mainly used on OMAP-based
+ platforms.
+
+if BR2_TARGET_XLOADER
+config BR2_TARGET_XLOADER_BOARDNAME
+ string "x-loader board name"
+ help
+ One of x-loader supported boards to be built.
+ This will be suffixed with _config to meet x-loader
+ standard naming.
+endif
--- /dev/null
+#############################################################
+#
+# x-loader
+#
+#############################################################
+XLOADER_VERSION = 6f3a26101303051e0f91b6213735b68ce804e94e
+XLOADER_SITE = git://gitorious.org/x-loader/x-loader.git
+XLOADER_BOARD_NAME = $(call qstrip,$(BR2_TARGET_XLOADER_BOARDNAME))
+
+XLOADER_INSTALL_IMAGES = YES
+
+define XLOADER_BUILD_CMDS
+ $(MAKE) CROSS_COMPILE="$(TARGET_CROSS)" -C $(@D) $(XLOADER_BOARD_NAME)_config
+ $(MAKE) CROSS_COMPILE="$(TARGET_CROSS)" -C $(@D) all
+ $(MAKE) CROSS_COMPILE="$(TARGET_CROSS)" -C $(@D) ift
+endef
+
+define XLOADER_INSTALL_IMAGES_CMDS
+ $(INSTALL) -D -m 0755 $(@D)/MLO $(BINARIES_DIR)/
+endef
+
+$(eval $(call GENTARGETS,boot,xloader))
+
+#############################################################
+#
+# Toplevel Makefile options
+#
+#############################################################
+ifeq ($(BR2_TARGET_XLOADER),y)
+# we NEED a board name unless we're at make source
+ifeq ($(filter source,$(MAKECMDGOALS)),)
+ifeq ($(XLOADER_BOARD_NAME),)
+$(error NO x-loader board name set. Check your BR2_BOOT_XLOADER_BOARDNAME setting)
+endif
+endif
+
+endif