aboutsummaryrefslogtreecommitdiff
path: root/sys/boot/arm
Commit message (Collapse)AuthorAgeFilesLines
...
* Add a 'ubenv import' command to import environment variables from theIan Lepore2014-09-081-0/+26
| | | | | | | | | | u-boot env into the loader(8) env (which also gets them into the kernel env). You can import selected variables or the whole environment. Each u-boot var=value becomes uboot.var=value in the loader env. You can also use 'ubenv show' to display uboot vars without importing them. Notes: svn path=/head/; revision=271285
* Enable at91 systems to boot from high capacity SD cards.Ian Lepore2014-07-263-142/+278
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This also fixes a few minor violations of the SD protocol, such as running the bus at high speed during the card identification sequence. The sdcard_init() routine now probes for SDHC cards so that later read requests can make needed adjustments between block and byte offsets based on card type. There is a new MCI_readblocks() function that takes block number and block count parameters instead of byte-offset values. Using this routine, boot loader code can load a kernel from any location on an SDHC or standard SD. The old MCI_read() interface remains unchanged so that existing customized boot loader code will still keep working without changes. Using this routine, boot loaders can load a kernel from anywhere in the first 4GB of an SDHC card (or of course any location on a standard SD card). A new sdcard_use4wire() routine allows boot loaders to request 4-bit transfers; it should be called after sdcard_init(). The sdcard_init() routine no longer assumes the hardware is 4-wire capable and by default sets things up for 1-bit transfers. (4-wire mode is unreliable on at91rm9200, works on later SoCs.) PR: 155894 Submitted by: me. years ago. Notes: svn path=/head/; revision=269113
* The 'flags' variable is conflicting with some inline code in a header fileIan Lepore2014-07-261-2/+2
| | | | | | | | ("variable flags shadows a global..."), just rename this variable to wish away the problem. Notes: svn path=/head/; revision=269112
* Eliminate "no previous prototype for main" warnings.Ian Lepore2014-07-266-1/+14
| | | | Notes: svn path=/head/; revision=269111
* Silence a clang warning about a while loop with an empty body.Ian Lepore2014-07-261-2/+4
| | | | Notes: svn path=/head/; revision=269110
* Use src.opts.mk in preference to bsd.own.mk except where we need stuffWarner Losh2014-05-064-2/+5
| | | | | | | from the latter. Notes: svn path=/head/; revision=265420
* NO_MAN= has been deprecated in favor of MAN= for some time, go aheadWarner Losh2014-04-138-8/+8
| | | | | | | | | and finish the job. ncurses is now the only Makefile in the tree that uses it since it wasn't a simple mechanical change, and will be addressed in a future commit. Notes: svn path=/head/; revision=264400
* Fix undefined behavior: (1 << 31) is not defined as 1 is an int and thisEitan Adler2013-11-301-1/+1
| | | | | | | | | | | | | | | | shifts into the sign bit. Instead use (1U << 31) which gets the expected result. This fix is not ideal as it assumes a 32 bit int, but does fix the issue for most cases. A similar change was made in OpenBSD. Discussed with: -arch, rdivacky Reviewed by: cperciva Notes: svn path=/head/; revision=258780
* Recent versions of U-Boot require us to also backup and restore r9 for APIAndrew Turner2013-11-241-6/+12
| | | | | | | calls to work. Notes: svn path=/head/; revision=258527
* Always build ubldr as a soft-float binary as there is no support for VFPAndrew Turner2013-10-271-1/+1
| | | | | | | this early on in the boot process. Notes: svn path=/head/; revision=257210
* Fix ixp425 boot2 with ARM EABI:Andrew Turner2013-09-291-0/+5
| | | | | | | | | | | - libkern is missing __aeabi_llsl, implement this by calling __ashldi3. - Because of how the asm entry macros are defined the boot2 code requires the unwind symbols to exist, include them in boot2. Approved by: re (marius) Notes: svn path=/head/; revision=255939
* Install Forth infrastructure along with ubldr.Tim Kientzle2013-07-271-1/+14
| | | | | | | | Note: loader.rc is installed as loader.rc.sample so that by default, none of this is actually used. Notes: svn path=/head/; revision=253714
* Convert old make variable modifiers :U and :L to bmake :tu and :tl.Tijl Coosemans2013-06-024-4/+4
| | | | | | | Reviewed by: sjg Notes: svn path=/head/; revision=251250
* When running on armv6, set alignment checking to modulo-4 mode ratherIan Lepore2013-03-311-0/+8
| | | | | | | | than modulo-8, because clang emits ldrd and strd instructions for addresses that are only 4-byte aligned Notes: svn path=/head/; revision=248962
* Provide verbose help for fdt commands on platforms that use it.Tim Kientzle2013-02-111-1/+1
| | | | Notes: svn path=/head/; revision=246647
* * Add the integer div & mod functions and ARM EABI support functions toAndrew Turner2013-02-051-2/+2
| | | | | | | | | libstand. * Stop linking the ARM U-Boot loader against libgcc now libstand has the required symbols. Notes: svn path=/head/; revision=246369
* Link against compiler-rt to pull in the required __aeabi_* functionsAndrew Turner2013-01-191-2/+2
| | | | Notes: svn path=/head/; revision=245677
* Ignore a warning in ubldr where clang doesn't understand the %D printfAndrew Turner2012-12-151-0/+3
| | | | | | | specifier from libstand. Notes: svn path=/head/; revision=244278
* Handle LOADER_NO_DISK_SUPPORT knob in the arm and powerpc ubldr.Andrey V. Elsukov2012-09-091-0/+4
| | | | Notes: svn path=/head/; revision=240277
* Use the pin number rather than the hybrid pin number + name.Warner Losh2012-07-157-35/+35
| | | | Notes: svn path=/head/; revision=238463
* Generalize this for loading the loader into the SPI. Plus trim aboutWarner Losh2012-07-071-11/+5
| | | | | | | | | 100 bytes from the binary with silly tricks. Hope to get this small enough to run on the models that have 4k SRAM. We are close compiled for the at91rm9200, but still need to trim for the target. Notes: svn path=/head/; revision=238188
* Allow other SOCs to be compiled in, first step.Warner Losh2012-07-071-1/+3
| | | | Notes: svn path=/head/; revision=238187
* Strip out the useless junk. All we really care about is the text,Warner Losh2012-07-071-232/+0
| | | | | | | | data and bss sections. All the rest is needed for normal binaries, but boot loaders aren't normal. Notes: svn path=/head/; revision=238186
* Allow the load address used by ARM ubldr to be set via Make argument.Tim Kientzle2012-05-272-2/+19
| | | | | | | | In particular, this simplifies scripts that build system images. Notes: svn path=/head/; revision=236159
* Use 32-bit ufs_ino_t instead of ino_t to keep boot2 small and preventGleb Kurtsou2012-05-252-8/+6
| | | | | | | | | unnecessary 64-bit math on 32-bit machines. Sponsored by: Google Summer of Code 2011 Notes: svn path=/head/; revision=235988
* Import work done under project/nand (@235533) into head.Grzegorz Bernacki2012-05-173-0/+12
| | | | | | | | | | | | | | | | | The NAND Flash environment consists of several distinct components: - NAND framework (drivers harness for NAND controllers and NAND chips) - NAND simulator (NANDsim) - NAND file system (NAND FS) - Companion tools and utilities - Documentation (manual pages) This work is still experimental. Please use with caution. Obtained from: Semihalf Supported by: FreeBSD Foundation, Juniper Networks Notes: svn path=/head/; revision=235537
* Add support for passing in the board ID.Warner Losh2012-05-111-2/+3
| | | | | | | | | | | # This doesn't implement the full Linux boot ABI for arm yet. # since there's no ATAGs list passed in for r2, and r0 has # boot options rather than 0 as specified in the standard. # Commited code to the tree won't touch any of this anyway, but # future code may be able to use this. Notes: svn path=/head/; revision=235272
* Hack to unbreak boot2 for at91rm9200 boot loader. When the at91samWarner Losh2012-05-111-0/+2
| | | | | | | | | code came in, it moved things around which wound up breaking the build. We have to do this bit of a hack to avoid duplication of a lot of #defines. Notes: svn path=/head/; revision=235271
* Remove some redundant register loads.Tim Kientzle2012-05-021-9/+2
| | | | | | | Discussed on: arm@ Notes: svn path=/head/; revision=234908
* Replace `inline static' by `static inline'.Ed Schouten2011-12-131-2/+2
| | | | | | | | | If I interpret the C standard correctly, the storage specifier should be placed before the inline keyword. While at it, replace __inline by inline in the files affected. Notes: svn path=/head/; revision=228471
* Look for /boot/config in addition to /boot.config, with the former takingDag-Erling Smørgrav2011-10-182-4/+8
| | | | | | | | | precedence over the latter if it exists. MFC after: 3 weeks Notes: svn path=/head/; revision=226506
* Allow ixp425 boot2 to compile after r219452Andrew Thompson2011-10-041-1/+1
| | | | Notes: svn path=/head/; revision=225955
* No need to list an obsolete arm compiler here.Warner Losh2011-01-202-2/+0
| | | | Notes: svn path=/head/; revision=217663
* Don't need __DYNAMIC here. it is commented out and a.out only -- these are ↵Warner Losh2011-01-201-2/+0
| | | | | | | all ELF. Notes: svn path=/head/; revision=217657
* We no longer need the OUTPUT_FORMAT line, so fix the build by removing it.Warner Losh2010-11-151-1/+0
| | | | Notes: svn path=/head/; revision=215344
* Fix typos.Rebecca Cran2010-11-091-2/+2
| | | | | | | | PR: bin/148894 Submitted by: olgeni Notes: svn path=/head/; revision=215034
* MFtbemd:Warner Losh2010-08-231-1/+1
| | | | | | | | Prefer MACHNE_CPUARCH to MACHINE_ARCH in most contexts where you want to test of all the CPUs of a given family conform. Notes: svn path=/head/; revision=211725
* It turns out that the OUTPUT_FORMAT should do the right thing for both ↵Warner Losh2010-08-232-135/+1
| | | | | | | endians... Notes: svn path=/head/; revision=211676
* MF tbemd: differentiate between arm and armebWarner Losh2010-08-232-1/+135
| | | | Notes: svn path=/head/; revision=211675
* Fix conditional FDT support in loader(8).Rafal Jaworowski2010-06-131-1/+3
| | | | Notes: svn path=/head/; revision=209125
* Initial loader(8) support for Flattened Device Tree.Rafal Jaworowski2010-05-252-2/+14
| | | | | | | | | | | | | o This is disabled by default for now, and can be enabled using WITH_FDT at build time. o Tested with ARM and PowerPC. Reviewed by: imp Sponsored by: The FreeBSD Foundation Notes: svn path=/head/; revision=208538
* BWCT boards can have 128MB SDRAM.Bernd Walter2010-03-092-2/+6
| | | | Notes: svn path=/head/; revision=204900
* fix signed warningBernd Walter2010-03-091-1/+1
| | | | Notes: svn path=/head/; revision=204899
* add delays around 16-bit enable/disable a la the driver; w/o thisSam Leffler2008-12-191-0/+2
| | | | | | | operation on my ixp435 Cambria board is unreliable Notes: svn path=/projects/cambria/; revision=186307
* merge WIP multi-board support; tested on Avila and Cambria, stillSam Leffler2008-12-134-75/+154
| | | | | | | needs Proghorn testing Notes: svn path=/projects/cambria/; revision=186013
* Let ARM loader(8) build with the man page.Rafal Jaworowski2008-11-271-4/+3
| | | | Notes: svn path=/head/; revision=185375
* Initial storage functionality for U-Boot support library.Rafal Jaworowski2008-11-193-3/+4
| | | | | | | | | | | - Only non-sliced bsdlabel style partitioning is currently supported (but provisions are made towards GPT support, which should follow soon) - Enable storage support in loader on ARM Obtained from: Semihalf Notes: svn path=/head/; revision=185099
* Initial support of loader(8) for ARM machines running U-Boot.Rafal Jaworowski2008-10-147-1/+422
| | | | | | | | | | | | | This uses the common U-Boot support lib (sys/boot/uboot, already used on FreeBSD/powerpc), and assumes the underlying firmware has the modern API for stand-alone apps enabled in the config (CONFIG_API). Only netbooting is supported at the moment. Obtained from: Marvell, Semihalf Notes: svn path=/head/; revision=183878
* More diff reductions against ixp425/boot2/boot2.c. This time, weWarner Losh2008-10-071-0/+87
| | | | | | | | | | | | | | | bring in FIXUP_BOOT_DRV functionality as an #ifdef. This is not enabled at this time, and the md5 remains constant with this change. Apart from the 'accept any partitioning scheme on the device' changes, this was the biggest delta... # and yes, we'll merge these into one source file if we can do that in a # way that makes sense. Obtained from: sys/boot/arm/ixp425/boot2/boot2.c Notes: svn path=/head/; revision=183673
* Diff reduction with boot/arm/at91/boot2/boot2.c: indent this statementWarner Losh2008-10-071-1/+1
| | | | | | | correctly. Notes: svn path=/head/; revision=183671