9a7b58c834
- Remove old unused patches: * v2013.04-sunxi.patch * loadaddr-defaults.patch - Add ti_common_initrd_support.patch to enable initrd support for AM335x boards - Add am335x_evm support which includes: Beagle Bone, Beagle Bone Black, TI AM335x EVM, TI AM335x EVM-SK - Add Arndale support - Update v2013.04-sunxi.patch to v2013.10-sunxi.patch - Remove kerneladdr and ramdiskaddr definition in u-boot patches (now done in JeOS image with u-boot hooks) - Update patches to current version: * 0006-ARMV7-hardfp-build-fix.patch * beagle-bootscr.patch * mx53loco-bootscr.patch * mlo-ext2.patch - Merge fix_omap4_ext2_boot.patch in mlo-ext2.patch - Rename exynos-ext2.patch in origen-ext2.patch - Update to 2013.10 - Fix OMAP4 pandaboard EXT2 boot - Remove old unused patches: * v2013.04-sunxi.patch OBS-URL: https://build.opensuse.org/request/show/211599 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/u-boot?expand=0&rev=16
170 lines
5.6 KiB
Diff
170 lines
5.6 KiB
Diff
--- ./common/spl/spl_mmc.c.orig 2013-11-25 10:36:58.994214337 +0100
|
|
+++ ./common/spl/spl_mmc.c 2013-11-25 10:53:09.983264655 +0100
|
|
@@ -11,6 +11,7 @@
|
|
#include <asm/u-boot.h>
|
|
#include <mmc.h>
|
|
#include <fat.h>
|
|
+#include <ext4fs.h>
|
|
#include <version.h>
|
|
#include <image.h>
|
|
|
|
@@ -70,6 +71,58 @@ static int mmc_load_image_raw_os(struct
|
|
#endif
|
|
|
|
#ifdef CONFIG_SPL_FAT_SUPPORT
|
|
+static int mmc_load_image_ext2(struct mmc *mmc, const char *filename)
|
|
+{
|
|
+ s32 err;
|
|
+ struct image_header *header;
|
|
+ int filelen;
|
|
+ disk_partition_t part_info = {};
|
|
+
|
|
+ header = (struct image_header *)(CONFIG_SYS_TEXT_BASE -
|
|
+ sizeof(struct image_header));
|
|
+
|
|
+ if (get_partition_info(&mmc->block_dev,
|
|
+ CONFIG_SYS_MMC_SD_FAT_BOOT_PARTITION, &part_info)) {
|
|
+ printf("spl: no partition table found\n");
|
|
+ goto end;
|
|
+ }
|
|
+
|
|
+ ext4fs_set_blk_dev(&mmc->block_dev, &part_info);
|
|
+// err = ext4fs_set_blk_dev(&mmc->block_dev, &part_info);
|
|
+// if (!err) {
|
|
+// printf("spl: ext4fs register err - %d\n", err);
|
|
+// goto end;
|
|
+// }
|
|
+
|
|
+ err = ext4fs_mount(0);
|
|
+ if (!err) {
|
|
+ printf("spl: ext4fs mount err - %d\n", err);
|
|
+ goto end;
|
|
+ }
|
|
+
|
|
+ filelen = err = ext4fs_open(filename);
|
|
+ if (err < 0) {
|
|
+ puts("spl: ext4fs_open failed\n");
|
|
+ goto end;
|
|
+ }
|
|
+ err = ext4fs_read((u8 *)header, sizeof(struct image_header));
|
|
+ if (err <= 0) {
|
|
+ puts("spl: ext4fs_read failed\n");
|
|
+ goto end;
|
|
+ }
|
|
+
|
|
+ spl_parse_image_header(header);
|
|
+
|
|
+ err = ext4fs_read((u8 *)spl_image.load_addr, filelen);
|
|
+
|
|
+end:
|
|
+ if (err <= 0) {
|
|
+ printf("spl: error reading image %s, err - %d\n",
|
|
+ filename, err);
|
|
+ }
|
|
+ return (err <= 0);
|
|
+}
|
|
+
|
|
static int mmc_load_image_fat(struct mmc *mmc, const char *filename)
|
|
{
|
|
int err;
|
|
@@ -142,6 +195,8 @@ void spl_mmc_load_image(void)
|
|
}
|
|
|
|
boot_mode = spl_boot_mode();
|
|
+ boot_mode = MMCSD_MODE_FAT; /* Fix OMAP4 boot */
|
|
+
|
|
if (boot_mode == MMCSD_MODE_RAW) {
|
|
debug("boot mode - RAW\n");
|
|
#ifdef CONFIG_SPL_OS_BOOT
|
|
@@ -153,19 +208,20 @@ void spl_mmc_load_image(void)
|
|
} else if (boot_mode == MMCSD_MODE_FAT) {
|
|
debug("boot mode - FAT\n");
|
|
|
|
- err = fat_register_device(&mmc->block_dev,
|
|
- CONFIG_SYS_MMC_SD_FAT_BOOT_PARTITION);
|
|
- if (err) {
|
|
+// err = fat_register_device(&mmc->block_dev,
|
|
+// CONFIG_SYS_MMC_SD_FAT_BOOT_PARTITION);
|
|
+// if (err) {
|
|
#ifdef CONFIG_SPL_LIBCOMMON_SUPPORT
|
|
- printf("spl: fat register err - %d\n", err);
|
|
+// printf("spl: fat register err - %d\n", err);
|
|
#endif
|
|
- hang();
|
|
- }
|
|
+// hang();
|
|
+// }
|
|
|
|
#ifdef CONFIG_SPL_OS_BOOT
|
|
if (spl_start_uboot() || mmc_load_image_fat_os(mmc))
|
|
#endif
|
|
- err = mmc_load_image_fat(mmc, CONFIG_SPL_FAT_LOAD_PAYLOAD_NAME);
|
|
+// err = mmc_load_image_fat(mmc, CONFIG_SPL_FAT_LOAD_PAYLOAD_NAME);
|
|
+ err = mmc_load_image_ext2(mmc, "boot/u-boot.bin"); /* We use u-boot.bin file in /boot/ folder */
|
|
#endif
|
|
} else {
|
|
#ifdef CONFIG_SPL_LIBCOMMON_SUPPORT
|
|
--- ./include/configs/omap3_beagle.h.orig 2013-11-21 14:01:46.884722728 +0100
|
|
+++ ./include/configs/omap3_beagle.h 2013-11-21 14:05:56.469711684 +0100
|
|
@@ -40,6 +40,7 @@
|
|
|
|
#define CONFIG_OF_LIBFDT
|
|
#define CONFIG_CMD_BOOTZ
|
|
+#define CONFIG_SUPPORT_RAW_INITRD /* bootz raw initrd support */
|
|
|
|
#define CONFIG_CMDLINE_TAG 1 /* enable passing of ATAGs */
|
|
#define CONFIG_SETUP_MEMORY_TAGS 1
|
|
@@ -249,7 +250,7 @@
|
|
"if test $fdtfile = undefined; then " \
|
|
"echo WARNING: Could not determine device tree to use; fi; \0" \
|
|
"bootenv=uEnv.txt\0" \
|
|
- "loadbootenv=fatload mmc ${mmcdev} ${loadaddr} ${bootenv}\0" \
|
|
+ "loadbootenv=load mmc ${mmcdev} ${loadaddr} ${bootenv}\0" \
|
|
"importbootenv=echo Importing environment from mmc ...; " \
|
|
"env import -t $loadaddr $filesize\0" \
|
|
"ramargs=setenv bootargs console=${console} " \
|
|
--- ./include/configs/omap4_common.h.orig 2013-11-21 14:05:29.066372667 +0100
|
|
+++ ./include/configs/omap4_common.h 2013-11-21 14:06:39.260679071 +0100
|
|
@@ -111,6 +111,7 @@
|
|
#define CONFIG_CMD_FAT /* FAT support */
|
|
#define CONFIG_CMD_I2C /* I2C serial bus support */
|
|
#define CONFIG_CMD_MMC /* MMC support */
|
|
+#define CONFIG_SUPPORT_RAW_INITRD /* bootz raw initrd support */
|
|
|
|
/* Disabled commands */
|
|
#undef CONFIG_CMD_NET
|
|
@@ -148,10 +149,10 @@
|
|
"vram=${vram} " \
|
|
"root=${mmcroot} " \
|
|
"rootfstype=${mmcrootfstype}\0" \
|
|
- "loadbootscript=fatload mmc ${mmcdev} ${loadaddr} boot.scr\0" \
|
|
+ "loadbootscript=load mmc ${mmcdev} ${loadaddr} boot/boot.scr\0" \
|
|
"bootscript=echo Running bootscript from mmc${mmcdev} ...; " \
|
|
"source ${loadaddr}\0" \
|
|
- "loadbootenv=fatload mmc ${mmcdev} ${loadaddr} uEnv.txt\0" \
|
|
+ "loadbootenv=load mmc ${mmcdev} ${loadaddr} uEnv.txt\0" \
|
|
"importbootenv=echo Importing environment from mmc${mmcdev} ...; " \
|
|
"env import -t ${loadaddr} ${filesize}\0" \
|
|
"loadimage=load mmc ${bootpart} ${loadaddr} ${bootdir}/${bootfile}\0" \
|
|
--- ./spl/Makefile.orig 2013-11-21 14:10:09.094607542 +0100
|
|
+++ ./spl/Makefile 2013-11-21 14:10:21.476307890 +0100
|
|
@@ -86,6 +86,7 @@ LIBS-$(CONFIG_SPL_SERIAL_SUPPORT) += dri
|
|
LIBS-$(CONFIG_SPL_SPI_FLASH_SUPPORT) += drivers/mtd/spi/libspi_flash.o
|
|
LIBS-$(CONFIG_SPL_SPI_SUPPORT) += drivers/spi/libspi.o
|
|
LIBS-$(CONFIG_SPL_FAT_SUPPORT) += fs/fat/libfat.o
|
|
+LIBS-$(CONFIG_SPL_FAT_SUPPORT) += fs/ext4/libext4fs.o
|
|
LIBS-$(CONFIG_SPL_LIBGENERIC_SUPPORT) += lib/libgeneric.o
|
|
LIBS-$(CONFIG_SPL_POWER_SUPPORT) += drivers/power/libpower.o \
|
|
drivers/power/pmic/libpmic.o
|
|
--- arch/arm/cpu/armv7/omap3/board.c.orig 2013-11-21 15:21:32.962225786 +0100
|
|
+++ arch/arm/cpu/armv7/omap3/board.c 2013-11-21 15:22:26.797911840 +0100
|
|
@@ -61,6 +61,8 @@ u32 omap3_boot_device = BOOT_DEVICE_NAND
|
|
/* auto boot mode detection is not possible for OMAP3 - hard code */
|
|
u32 spl_boot_mode(void)
|
|
{
|
|
+ return MMCSD_MODE_FAT;
|
|
+
|
|
switch (spl_boot_device()) {
|
|
case BOOT_DEVICE_MMC2:
|
|
return MMCSD_MODE_RAW;
|