Hello community, here is the log from the commit of package u-boot for openSUSE:Factory checked in at 2012-07-24 16:16:40 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/u-boot (Old) and /work/SRC/openSUSE:Factory/.u-boot.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Package is "u-boot", Maintainer is "" Changes: -------- New Changes file: --- /dev/null 2012-07-06 19:40:38.919402255 +0200 +++ /work/SRC/openSUSE:Factory/.u-boot.new/u-boot-omap3beagle.changes 2012-07-24 17:22:44.000000000 +0200 @@ -0,0 +1,136 @@ +------------------------------------------------------------------- +Thu Jul 12 08:12:15 UTC 2012 - agraf@suse.com + +- update to upstream u-boot 2012.04 + -> gets rid of linaro fork, only mainline now + -> gets us omap3 MLO support, no more need for x-loader + -> potentially fixes voltage issues on omap4 + +------------------------------------------------------------------- +Thu Jun 14 09:04:53 UTC 2012 - adrian@suse.de + +- add SUSE style conflicts to avoid installation of multiple + boot loaders + +------------------------------------------------------------------- +Tue Apr 17 11:59:55 UTC 2012 - joop.boonen@opensuse.org + +- Included u-boot.spec.in and gen_spec.sh in the spec file + +------------------------------------------------------------------- +Mon Feb 6 13:25:09 UTC 2012 - agraf@suse.com + +- use ext2 on panda + +------------------------------------------------------------------- +Tue Dec 20 02:36:05 UTC 2011 - agraf@suse.com + +- use ttyO2 as default console= on OMAP boards + +------------------------------------------------------------------- +Mon Dec 19 20:21:21 UTC 2011 - agraf@suse.com + +- add u8500_href and origen configs + +------------------------------------------------------------------- +Fri Dec 16 16:03:01 UTC 2011 - agraf@suse.com + +- fix lint failures + +------------------------------------------------------------------- +Fri Dec 16 14:46:53 CET 2011 - agraf@suse.com + +- don't install map + +------------------------------------------------------------------- +Fri Dec 16 02:16:19 UTC 2011 - agraf@suse.com + +- generalize spec file to be able to build for more boards +- add beagle board spec file +- remove boot.scr + +------------------------------------------------------------------- +Fri Dec 16 01:15:47 UTC 2011 - agraf@suse.com + +- rename to u-boot-omap4panda + +------------------------------------------------------------------- +Tue Dec 13 17:24:45 UTC 2011 - dkukawka@suse.de + +- new package based on u-boot-omap4panda but use linaro u-boot git + repo (http://git.linaro.org/git/boot/u-boot-linaro-stable.git) + instead of mainline u-boot. This package also contains the MLO + (this package obsoletes the x-loader package) + +------------------------------------------------------------------- +Tue Nov 29 22:53:44 UTC 2011 - joop.boonen@opensuse.org + +- COPYING CREDITS README are now in the standard package + +------------------------------------------------------------------- +Thu Nov 24 21:08:58 UTC 2011 - joop.boonen@opensuse.org + +- Corrected the links + +------------------------------------------------------------------- +Tue Nov 22 17:47:17 UTC 2011 - joop.boonen@opensuse.org + +- Build without u-boot tools as we have a u-boot-tools packages + +------------------------------------------------------------------- +Sun Nov 20 17:00:43 UTC 2011 - joop.boonen@opensuse.org + +- Cleaned the spec file up the spec file +- The name is the same as the package name + +------------------------------------------------------------------- +Sun Nov 13 13:13:39 UTC 2011 - joop.boonen@opensuse.org + +- Build u-boot according to http://elinux.org/Panda_How_to_MLO_&_u-boot +- Using .txt config file instead of .scr it's gerated via mkimage + +------------------------------------------------------------------- +Wed Nov 09 22:55:09 UTC 2011 - joop.boonen@opensuse.org + +- Used scr file based on http://elinux.org definition +- Build u-boot 20111109 +- Used the Meego panda u-boot as a base + +------------------------------------------------------------------- +Fri Feb 18 00:00:00 UTC 2011 - raghuveer.murthy@ti.com> +- 2010.09-MeeGo +- Fix for u-boot fails to compile on armv7hl, BMC#13140 + +------------------------------------------------------------------- +Thu Nov 18 00:00:00 UTC 2010 - peter.j.zhu@intel.com> +- 2010.09-MeeGo +- Don't build against i586, BMC#10159 + +------------------------------------------------------------------- +Tue Oct 10 00:00:00 UTC 2010 - nm@ti.com> +- 2010.09-MeeGo +- Add Das u-boot package - FEA#9723 + +------------------------------------------------------------------- +Tue Oct 10 00:00:00 UTC 2010 - nm@ti.com> +- 2010.09.rc1-MeeGo +- Added option to enable boot.scr generation and copy + +------------------------------------------------------------------- +Mon Oct 04 00:00:00 UTC 2010 - nm@ti.com> +- 2010.09.rc1-MeeGo +- Update to 2010.09 + +------------------------------------------------------------------- +Wed Sep 14 00:00:00 UTC 2010 - nm@ti.com> +- 2010.09.rc1-MeeGo +- Update to 2010.09.rc1 +- MeeGo customization +- Enabled PandaBoard, Beagleboard build + +------------------------------------------------------------------- +Wed Mar 31 00:00:00 UTC 2010 - silvan.calarco@mambasoft.it> +- 2009.11.1-1mamba +- update to 2009.11.1 + +------------------------------------------------------------------- New Changes file: u-boot-omap4panda.changes: same change New Changes file: u-boot-origen.changes: same change New Changes file: u-boot-u8500href.changes: same change New Changes file: u-boot.changes: same change Old: ---- _link New: ---- 0006-ARMV7-hardfp-build-fix.patch loadaddr-defaults.patch mlo-ext2.patch openSUSE_panda.txt pre_checkin.sh rpmlintrc u-boot-2012.04.tar.bz2 u-boot-omap3beagle.changes u-boot-omap3beagle.spec u-boot-omap4panda.changes u-boot-omap4panda.spec u-boot-origen.changes u-boot-origen.spec u-boot-u8500href.changes u-boot-u8500href.spec u-boot.changes u-boot.spec u-boot.spec.in ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ u-boot-omap3beagle.spec ++++++ # # spec file for package u-boot-omap3beagle # # Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany. # Copyright (c) 2010 Texas Instruments Inc by Nishanth Menon # Copyright (c) 2007-2010 by Silvan Calarco <silvan.calarco@mambasoft.it> # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via http://bugs.opensuse.org/ # %define x_loader 1 Name: u-boot-omap3beagle Version: 2012.04 Release: 0 Summary: The u-boot firmware for the omap3beagle arm platform License: GPL-2.0 Group: System/Boot Url: http://www.denx.de/wiki/U-Boot Source: u-boot-%{version}.tar.bz2 Source1: openSUSE_panda.txt Source300: rpmlintrc Patch1: 0006-ARMV7-hardfp-build-fix.patch Patch2: mlo-ext2.patch Patch3: loadaddr-defaults.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build Provides: u-boot-loader Conflicts: otherproviders(u-boot-loader) %if %x_loader == 1 Obsoletes: x-loader-omap3beagle Provides: x-loader-omap3beagle %endif ExclusiveArch: %arm %description Das U-Boot (or just "U-Boot" for short) is Open Source Firmware for Embedded PowerPC, ARM, MIPS and x86 processors. This package contains the firmware for the omap3beagle arm platform. %package doc Summary: Documentation for the u-boot Firmware Group: Documentation/Other %description doc Das U-Boot (or just "U-Boot" for short) is Open Source Firmware for Embedded PowerPC, ARM, MIPS and x86 processors. This package contains documentation for u-boot firmware %prep %setup -q -n u-boot-%{version} # Any custom patches to be applied on top of mainline u-boot %patch1 -p1 %patch2 -p1 %patch3 -p1 %build make %{?jobs:-j %jobs} CFLAGS="$RPM_OPT_FLAGS" omap3_beagle_config # temporary disable of --build-id #make CFLAGS="$RPM_OPT_FLAGS" USE_PRIVATE_LIBGG=yes make %{?jobs:-j %jobs} USE_PRIVATE_LIBGG=yes %install install -D -m 0644 u-boot.bin %{buildroot}/boot/u-boot.bin %if %x_loader == 1 install -D -m 0755 MLO %{buildroot}/boot/MLO %endif %clean rm -rf $RPM_BUILD_ROOT %files %defattr(-,root,root) /boot/u-boot.bin %if %x_loader == 1 /boot/MLO %endif %doc COPYING CREDITS README %files doc %defattr(-,root,root) # Generic documents %doc doc/README.JFFS2 doc/README.JFFS2_NAND doc/README.commands %doc doc/README.autoboot doc/README.commands doc/README.console doc/README.dns %doc doc/README.hwconfig doc/README.nand doc/README.NetConsole doc/README.serial_multi %doc doc/README.SNTP doc/README.standalone doc/README.update doc/README.usb %doc doc/README.video doc/README.VLAN doc/README.silent doc/README.POST doc/README.Modem # Copy some useful kermit scripts as well %doc tools/scripts/dot.kermrc tools/scripts/flash_param tools/scripts/send_cmd tools/scripts/send_image # Now any h/w dependent Documentation %doc doc/README.ARM-SoC doc/README.ARM-memory-map %changelog ++++++ u-boot-omap4panda.spec ++++++ # # spec file for package u-boot-omap4panda # # Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany. # Copyright (c) 2010 Texas Instruments Inc by Nishanth Menon # Copyright (c) 2007-2010 by Silvan Calarco <silvan.calarco@mambasoft.it> # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via http://bugs.opensuse.org/ # %define x_loader 1 Name: u-boot-omap4panda Version: 2012.04 Release: 0 Summary: The u-boot firmware for the omap4panda arm platform License: GPL-2.0 Group: System/Boot Url: http://www.denx.de/wiki/U-Boot Source: u-boot-%{version}.tar.bz2 Source1: openSUSE_panda.txt Source300: rpmlintrc Patch1: 0006-ARMV7-hardfp-build-fix.patch Patch2: mlo-ext2.patch Patch3: loadaddr-defaults.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build Provides: u-boot-loader Conflicts: otherproviders(u-boot-loader) %if %x_loader == 1 Obsoletes: x-loader-omap4panda Provides: x-loader-omap4panda %endif ExclusiveArch: %arm %description Das U-Boot (or just "U-Boot" for short) is Open Source Firmware for Embedded PowerPC, ARM, MIPS and x86 processors. This package contains the firmware for the omap4panda arm platform. %package doc Summary: Documentation for the u-boot Firmware Group: Documentation/Other %description doc Das U-Boot (or just "U-Boot" for short) is Open Source Firmware for Embedded PowerPC, ARM, MIPS and x86 processors. This package contains documentation for u-boot firmware %prep %setup -q -n u-boot-%{version} # Any custom patches to be applied on top of mainline u-boot %patch1 -p1 %patch2 -p1 %patch3 -p1 %build make %{?jobs:-j %jobs} CFLAGS="$RPM_OPT_FLAGS" omap4_panda_config # temporary disable of --build-id #make CFLAGS="$RPM_OPT_FLAGS" USE_PRIVATE_LIBGG=yes make %{?jobs:-j %jobs} USE_PRIVATE_LIBGG=yes %install install -D -m 0644 u-boot.bin %{buildroot}/boot/u-boot.bin %if %x_loader == 1 install -D -m 0755 MLO %{buildroot}/boot/MLO %endif %clean rm -rf $RPM_BUILD_ROOT %files %defattr(-,root,root) /boot/u-boot.bin %if %x_loader == 1 /boot/MLO %endif %doc COPYING CREDITS README %files doc %defattr(-,root,root) # Generic documents %doc doc/README.JFFS2 doc/README.JFFS2_NAND doc/README.commands %doc doc/README.autoboot doc/README.commands doc/README.console doc/README.dns %doc doc/README.hwconfig doc/README.nand doc/README.NetConsole doc/README.serial_multi %doc doc/README.SNTP doc/README.standalone doc/README.update doc/README.usb %doc doc/README.video doc/README.VLAN doc/README.silent doc/README.POST doc/README.Modem # Copy some useful kermit scripts as well %doc tools/scripts/dot.kermrc tools/scripts/flash_param tools/scripts/send_cmd tools/scripts/send_image # Now any h/w dependent Documentation %doc doc/README.ARM-SoC doc/README.ARM-memory-map %changelog ++++++ u-boot-origen.spec ++++++ # # spec file for package u-boot-origen # # Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany. # Copyright (c) 2010 Texas Instruments Inc by Nishanth Menon # Copyright (c) 2007-2010 by Silvan Calarco <silvan.calarco@mambasoft.it> # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via http://bugs.opensuse.org/ # %define x_loader 0 Name: u-boot-origen Version: 2012.04 Release: 0 Summary: The u-boot firmware for the origen arm platform License: GPL-2.0 Group: System/Boot Url: http://www.denx.de/wiki/U-Boot Source: u-boot-%{version}.tar.bz2 Source1: openSUSE_panda.txt Source300: rpmlintrc Patch1: 0006-ARMV7-hardfp-build-fix.patch Patch2: mlo-ext2.patch Patch3: loadaddr-defaults.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build Provides: u-boot-loader Conflicts: otherproviders(u-boot-loader) %if %x_loader == 1 Obsoletes: x-loader-origen Provides: x-loader-origen %endif ExclusiveArch: %arm %description Das U-Boot (or just "U-Boot" for short) is Open Source Firmware for Embedded PowerPC, ARM, MIPS and x86 processors. This package contains the firmware for the origen arm platform. %package doc Summary: Documentation for the u-boot Firmware Group: Documentation/Other %description doc Das U-Boot (or just "U-Boot" for short) is Open Source Firmware for Embedded PowerPC, ARM, MIPS and x86 processors. This package contains documentation for u-boot firmware %prep %setup -q -n u-boot-%{version} # Any custom patches to be applied on top of mainline u-boot %patch1 -p1 %patch2 -p1 %patch3 -p1 %build make %{?jobs:-j %jobs} CFLAGS="$RPM_OPT_FLAGS" origen_config # temporary disable of --build-id #make CFLAGS="$RPM_OPT_FLAGS" USE_PRIVATE_LIBGG=yes make %{?jobs:-j %jobs} USE_PRIVATE_LIBGG=yes %install install -D -m 0644 u-boot.bin %{buildroot}/boot/u-boot.bin %if %x_loader == 1 install -D -m 0755 MLO %{buildroot}/boot/MLO %endif %clean rm -rf $RPM_BUILD_ROOT %files %defattr(-,root,root) /boot/u-boot.bin %if %x_loader == 1 /boot/MLO %endif %doc COPYING CREDITS README %files doc %defattr(-,root,root) # Generic documents %doc doc/README.JFFS2 doc/README.JFFS2_NAND doc/README.commands %doc doc/README.autoboot doc/README.commands doc/README.console doc/README.dns %doc doc/README.hwconfig doc/README.nand doc/README.NetConsole doc/README.serial_multi %doc doc/README.SNTP doc/README.standalone doc/README.update doc/README.usb %doc doc/README.video doc/README.VLAN doc/README.silent doc/README.POST doc/README.Modem # Copy some useful kermit scripts as well %doc tools/scripts/dot.kermrc tools/scripts/flash_param tools/scripts/send_cmd tools/scripts/send_image # Now any h/w dependent Documentation %doc doc/README.ARM-SoC doc/README.ARM-memory-map %changelog ++++++ u-boot-u8500href.spec ++++++ # # spec file for package u-boot-u8500href # # Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany. # Copyright (c) 2010 Texas Instruments Inc by Nishanth Menon # Copyright (c) 2007-2010 by Silvan Calarco <silvan.calarco@mambasoft.it> # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via http://bugs.opensuse.org/ # %define x_loader 0 Name: u-boot-u8500href Version: 2012.04 Release: 0 Summary: The u-boot firmware for the u8500href arm platform License: GPL-2.0 Group: System/Boot Url: http://www.denx.de/wiki/U-Boot Source: u-boot-%{version}.tar.bz2 Source1: openSUSE_panda.txt Source300: rpmlintrc Patch1: 0006-ARMV7-hardfp-build-fix.patch Patch2: mlo-ext2.patch Patch3: loadaddr-defaults.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build Provides: u-boot-loader Conflicts: otherproviders(u-boot-loader) %if %x_loader == 1 Obsoletes: x-loader-u8500href Provides: x-loader-u8500href %endif ExclusiveArch: %arm %description Das U-Boot (or just "U-Boot" for short) is Open Source Firmware for Embedded PowerPC, ARM, MIPS and x86 processors. This package contains the firmware for the u8500href arm platform. %package doc Summary: Documentation for the u-boot Firmware Group: Documentation/Other %description doc Das U-Boot (or just "U-Boot" for short) is Open Source Firmware for Embedded PowerPC, ARM, MIPS and x86 processors. This package contains documentation for u-boot firmware %prep %setup -q -n u-boot-%{version} # Any custom patches to be applied on top of mainline u-boot %patch1 -p1 %patch2 -p1 %patch3 -p1 %build make %{?jobs:-j %jobs} CFLAGS="$RPM_OPT_FLAGS" u8500_href_config # temporary disable of --build-id #make CFLAGS="$RPM_OPT_FLAGS" USE_PRIVATE_LIBGG=yes make %{?jobs:-j %jobs} USE_PRIVATE_LIBGG=yes %install install -D -m 0644 u-boot.bin %{buildroot}/boot/u-boot.bin %if %x_loader == 1 install -D -m 0755 MLO %{buildroot}/boot/MLO %endif %clean rm -rf $RPM_BUILD_ROOT %files %defattr(-,root,root) /boot/u-boot.bin %if %x_loader == 1 /boot/MLO %endif %doc COPYING CREDITS README %files doc %defattr(-,root,root) # Generic documents %doc doc/README.JFFS2 doc/README.JFFS2_NAND doc/README.commands %doc doc/README.autoboot doc/README.commands doc/README.console doc/README.dns %doc doc/README.hwconfig doc/README.nand doc/README.NetConsole doc/README.serial_multi %doc doc/README.SNTP doc/README.standalone doc/README.update doc/README.usb %doc doc/README.video doc/README.VLAN doc/README.silent doc/README.POST doc/README.Modem # Copy some useful kermit scripts as well %doc tools/scripts/dot.kermrc tools/scripts/flash_param tools/scripts/send_cmd tools/scripts/send_image # Now any h/w dependent Documentation %doc doc/README.ARM-SoC doc/README.ARM-memory-map %changelog ++++++ u-boot.spec ++++++ # # spec file for package u-boot # # Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via http://bugs.opensuse.org/ # Name: u-boot Version: 1 Release: 0 Summary: fake package License: GPL-2.0 Group: System/Boot Url: http://www.denx.de/wiki/U-Boot BuildRoot: %{_tmppath}/%{name}-%{version}-build %description dummy package %prep %build %install %clean %files %changelog ++++++ 0006-ARMV7-hardfp-build-fix.patch ++++++ Index: u-boot-2010.09/arch/arm/cpu/armv7/config.mk =================================================================== --- u-boot-2010.09.orig/arch/arm/cpu/armv7/config.mk 2011-02-17 18:43:19.828905882 +0530 +++ u-boot-2010.09/arch/arm/cpu/armv7/config.mk 2011-02-17 18:43:33.356906110 +0530 @@ -20,7 +20,7 @@ # Foundation, Inc., 59 Temple Place, Suite 330, Boston, # MA 02111-1307 USA # -PLATFORM_RELFLAGS += -fno-common -ffixed-r8 -msoft-float +PLATFORM_RELFLAGS += -fno-common -ffixed-r8 # Make ARMv5 to allow more compilers to work, even though its v7a. PLATFORM_CPPFLAGS += -march=armv5 ++++++ loadaddr-defaults.patch ++++++
From a8fab5078beb88a3f1ae46450d08d0db1460fccc Mon Sep 17 00:00:00 2001 From: Alexander Graf <agraf@suse.de> Date: Thu, 12 Jul 2012 09:55:58 +0200 Subject: [PATCH] OMAP: Provide reasonable kernel and initrd load addresses
To make our generic boot.scr approach work, we need to make sure we have variables that tell us where to load the kernel and initrd to. Add them back into upstream u-boot again. They used to be there in the linaro version. Signed-off-by: Alexander Graf <agraf@suse.de> diff --git a/include/configs/omap3_beagle.h b/include/configs/omap3_beagle.h index 0c46d5b..c4df587 100644 --- a/include/configs/omap3_beagle.h +++ b/include/configs/omap3_beagle.h @@ -218,6 +218,8 @@ #define CONFIG_EXTRA_ENV_SETTINGS \ "loadaddr=0x80200000\0" \ "rdaddr=0x81000000\0" \ + "kerneladdr=0x80200000\0" \ + "ramdiskaddr=0x81000000\0" \ "usbtty=cdc_acm\0" \ "bootfile=uImage.beagle\0" \ "console=ttyO2,115200n8\0" \ diff --git a/include/configs/omap4_common.h b/include/configs/omap4_common.h index 00578fe..bc802f4 100644 --- a/include/configs/omap4_common.h +++ b/include/configs/omap4_common.h @@ -150,6 +150,8 @@ #define CONFIG_EXTRA_ENV_SETTINGS \ "loadaddr=0x82000000\0" \ + "kerneladdr=0x80000000\0" \ + "ramdiskaddr=0x82000000\0" \ "console=ttyO2,115200n8\0" \ "usbtty=cdc_acm\0" \ "vram=16M\0" \ ++++++ mlo-ext2.patch ++++++ diff --git a/arch/arm/cpu/armv7/omap-common/spl_mmc.c b/arch/arm/cpu/armv7/omap-common/spl_mmc.c index 6f5b43e..f369e47 100644 --- a/arch/arm/cpu/armv7/omap-common/spl_mmc.c +++ b/arch/arm/cpu/armv7/omap-common/spl_mmc.c @@ -83,6 +83,53 @@ end: } } +static void mmc_load_image_ext2(struct mmc *mmc) +{ + s32 err; + struct image_header *header; + char *payloadname; + int filelen; + + header = (struct image_header *)(CONFIG_SYS_TEXT_BASE - + sizeof(struct image_header)); + + err = ext2fs_set_blk_dev(&mmc->block_dev, + CONFIG_SYS_MMC_SD_FAT_BOOT_PARTITION); + if (!err) { + printf("spl: ext2fs register err - %d\n", err); + hang(); + } + + err = ext2fs_mount(0); + if (!err) { + printf("spl: ext2fs mount err - %d\n", err); + hang(); + } + + + payloadname = "u-boot.bin"; + + filelen = err = ext2fs_open(payloadname); + if (err < 0) { + goto end; + } + err = ext2fs_read((u8 *)header, sizeof(struct image_header)); + if (err <= 0) { + goto end; + } + + spl_parse_image_header(header); + + err = ext2fs_read((u8 *)spl_image.load_addr, filelen); + +end: + if (err <= 0) { + printf("spl: error reading image %s, err - %d\n", + payloadname, err); + hang(); + } +} + static void mmc_load_image_fat(struct mmc *mmc) { s32 err; @@ -136,12 +183,14 @@ void spl_mmc_load_image(void) hang(); } boot_mode = omap_boot_mode(); + boot_mode = MMCSD_MODE_FAT; if (boot_mode == MMCSD_MODE_RAW) { debug("boot mode - RAW\n"); mmc_load_image_raw(mmc); } else if (boot_mode == MMCSD_MODE_FAT) { debug("boot mode - FAT\n"); - mmc_load_image_fat(mmc); +// mmc_load_image_fat(mmc); + mmc_load_image_ext2(mmc); } else { puts("spl: wrong MMC boot mode\n"); hang(); diff --git a/fs/ext2/ext2fs.c b/fs/ext2/ext2fs.c index f621741..f38697c 100644 --- a/fs/ext2/ext2fs.c +++ b/fs/ext2/ext2fs.c @@ -25,9 +25,47 @@ #include <common.h> #include <ext2fs.h> -#include <malloc.h> #include <asm/byteorder.h> +#ifndef CONFIG_SPL_BUILD + +#include <malloc.h> + +#else + +/* compat stuff */ + +void *free_buf; +void *topmost_entry; +int topmost_size; +char heap[10240]; + +static inline void *malloc(int size) +{ + void *r; + if (!free_buf) + free_buf = heap; + memset(free_buf, 0, size); + r = free_buf; + free_buf += size; + topmost_entry = r; + topmost_size = size; + return r; +} + +static inline void free(void *p) +{ + if (p == topmost_entry) { + free_buf -= topmost_size; + topmost_entry = 0; + } else { + printf("leaked %d bytes\n", topmost_size); + } +} + +#endif + + extern int ext2fs_devread (int sector, int byte_offset, int byte_len, char *buf); diff --git a/include/configs/omap3_beagle.h b/include/configs/omap3_beagle.h index ddeb414..0c46d5b 100644 --- a/include/configs/omap3_beagle.h +++ b/include/configs/omap3_beagle.h @@ -256,7 +256,7 @@ "root=${nandroot} " \ "rootfstype=${nandrootfstype}\0" \ "bootenv=uEnv.txt\0" \ - "loadbootenv=fatload mmc ${mmcdev} ${loadaddr} ${bootenv}\0" \ + "loadbootenv=ext2load mmc ${mmcdev} ${loadaddr} ${bootenv}\0" \ "importbootenv=echo Importing environment from mmc ...; " \ "env import -t $loadaddr $filesize\0" \ "ramargs=setenv bootargs console=${console} " \ @@ -268,8 +268,8 @@ "omapdss.def_disp=${defaultdisplay} " \ "root=${ramroot} " \ "rootfstype=${ramrootfstype}\0" \ - "loadramdisk=fatload mmc ${mmcdev} ${rdaddr} ramdisk.gz\0" \ - "loaduimagefat=fatload mmc ${mmcdev} ${loadaddr} uImage\0" \ + "loadramdisk=ext2load mmc ${mmcdev} ${rdaddr} ramdisk.gz\0" \ + "loaduimagefat=ext2load mmc ${mmcdev} ${loadaddr} uImage\0" \ "loaduimage=ext2load mmc ${mmcdev}:2 ${loadaddr} /boot/uImage\0" \ "mmcboot=echo Booting from mmc ...; " \ "run mmcargs; " \ diff --git a/include/configs/omap4_common.h b/include/configs/omap4_common.h index a989721..00578fe 100644 --- a/include/configs/omap4_common.h +++ b/include/configs/omap4_common.h @@ -160,10 +160,10 @@ "vram=${vram} " \ "root=${mmcroot} " \ "rootfstype=${mmcrootfstype}\0" \ - "loadbootscript=fatload mmc ${mmcdev} ${loadaddr} boot.scr\0" \ + "loadbootscript=ext2load mmc ${mmcdev} ${loadaddr} boot.scr\0" \ "bootscript=echo Running bootscript from mmc${mmcdev} ...; " \ "source ${loadaddr}\0" \ - "loaduimage=fatload mmc ${mmcdev} ${loadaddr} uImage\0" \ + "loaduimage=ext2load mmc ${mmcdev} ${loadaddr} uImage\0" \ "mmcboot=echo Booting from mmc${mmcdev} ...; " \ "run mmcargs; " \ "bootm ${loadaddr}\0" \ diff --git a/spl/Makefile b/spl/Makefile index ea7d475..6abfd7e 100644 --- a/spl/Makefile +++ b/spl/Makefile @@ -51,6 +51,7 @@ LIBS-$(CONFIG_SPL_SERIAL_SUPPORT) += drivers/serial/libserial.o 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/ext2/libext2fs.o LIBS-$(CONFIG_SPL_LIBGENERIC_SUPPORT) += lib/libgeneric.o LIBS-$(CONFIG_SPL_POWER_SUPPORT) += drivers/power/libpower.o LIBS-$(CONFIG_SPL_NAND_SUPPORT) += drivers/mtd/nand/libnand.o ++++++ openSUSE_panda.txt ++++++ setenv bootargs 'root=/dev/mmcblk0p2 rw rootwait rootfstype=ext3 console=ttyO2,115200n8 vram=16M' fatload mmc 0 82000000 uImage bootm 82000000 ++++++ pre_checkin.sh ++++++ #!/bin/bash -e BOARDNAME="$1" BOARDCONFIG="$2" if [ ! "$1" -o ! "$2" ]; then for BOARDCONFIG in omap3_beagle omap4_panda u8500_href origen; do BOARDNAME="$(echo $BOARDCONFIG | tr -d '_')" BOARDCONFIG=${BOARDCONFIG}_config bash $0 $BOARDNAME $BOARDCONFIG done exit 0 fi if [ "$(echo $BOARDCONFIG | grep omap)" ]; then XLOADER=1 else XLOADER=0 fi sed "s/BOARDCONFIG/$BOARDCONFIG/g s/BOARDNAME/$BOARDNAME/g s/XLOADER/$XLOADER/g" < u-boot.spec.in > u-boot-$BOARDNAME.spec cp u-boot.changes u-boot-$BOARDNAME.changes ++++++ rpmlintrc ++++++ # This line is mandatory to access the configuration functions from Config import * addFilter("no-binary") addFilter("name-repeated-in-summary") addFilter("incorrect-fsf-address") addFilter("file-contains-date-and-time") addFilter("strict-aliasing-punning") addFilter("no-rpm-opt-flags") ++++++ u-boot.spec.in ++++++ # # spec file for package u-boot-BOARDNAME # # Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany. # Copyright (c) 2010 Texas Instruments Inc by Nishanth Menon # Copyright (c) 2007-2010 by Silvan Calarco <silvan.calarco@mambasoft.it> # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via http://bugs.opensuse.org/ # %define x_loader XLOADER Name: u-boot-BOARDNAME Version: 2012.04 Release: 0 Summary: The u-boot firmware for the BOARDNAME arm platform License: GPL-2.0 Group: System/Boot Url: http://www.denx.de/wiki/U-Boot Source: u-boot-%{version}.tar.bz2 Source1: openSUSE_panda.txt Source300: rpmlintrc Patch1: 0006-ARMV7-hardfp-build-fix.patch Patch2: mlo-ext2.patch Patch3: loadaddr-defaults.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build Provides: u-boot-loader Conflicts: otherproviders(u-boot-loader) %if %x_loader == 1 Obsoletes: x-loader-BOARDNAME Provides: x-loader-BOARDNAME %endif ExclusiveArch: %arm %description Das U-Boot (or just "U-Boot" for short) is Open Source Firmware for Embedded PowerPC, ARM, MIPS and x86 processors. This package contains the firmware for the BOARDNAME arm platform. %package doc Summary: Documentation for the u-boot Firmware Group: Documentation/Other %description doc Das U-Boot (or just "U-Boot" for short) is Open Source Firmware for Embedded PowerPC, ARM, MIPS and x86 processors. This package contains documentation for u-boot firmware %prep %setup -q -n u-boot-%{version} # Any custom patches to be applied on top of mainline u-boot %patch1 -p1 %patch2 -p1 %patch3 -p1 %build make %{?jobs:-j %jobs} CFLAGS="$RPM_OPT_FLAGS" BOARDCONFIG # temporary disable of --build-id #make CFLAGS="$RPM_OPT_FLAGS" USE_PRIVATE_LIBGG=yes make %{?jobs:-j %jobs} USE_PRIVATE_LIBGG=yes %install install -D -m 0644 u-boot.bin %{buildroot}/boot/u-boot.bin %if %x_loader == 1 install -D -m 0755 MLO %{buildroot}/boot/MLO %endif %clean rm -rf $RPM_BUILD_ROOT %files %defattr(-,root,root) /boot/u-boot.bin %if %x_loader == 1 /boot/MLO %endif %doc COPYING CREDITS README %files doc %defattr(-,root,root) # Generic documents %doc doc/README.JFFS2 doc/README.JFFS2_NAND doc/README.commands %doc doc/README.autoboot doc/README.commands doc/README.console doc/README.dns %doc doc/README.hwconfig doc/README.nand doc/README.NetConsole doc/README.serial_multi %doc doc/README.SNTP doc/README.standalone doc/README.update doc/README.usb %doc doc/README.video doc/README.VLAN doc/README.silent doc/README.POST doc/README.Modem # Copy some useful kermit scripts as well %doc tools/scripts/dot.kermrc tools/scripts/flash_param tools/scripts/send_cmd tools/scripts/send_image # Now any h/w dependent Documentation %doc doc/README.ARM-SoC doc/README.ARM-memory-map %changelog -- To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-commit+help@opensuse.org