summaryrefslogtreecommitdiffstats
path: root/sys/boot/arm/at91
Commit message (Collapse)AuthorAgeFilesLines
...
* MFp4:imp2006-10-2025-1058/+1165
| | | | | | | | Massive update. The highlights: o dramatically cut memory usage by writing better, less intertwingled code. o implement booting off mmc/sd cards (sd only tested one at the moment) o start to split out board specific stuff for boot2.
* Support compiling as part of worldimp2006-08-181-1/+1
|
* MFp4: changes since .s -> .S rename. Use correct header for sizeimp2006-08-171-2/+17
|
* MFp4: First cut at making spi and/or sd card booting work, needs workimp2006-08-1619-119/+2940
|
* MFp4:imp2006-08-163-41/+23
| | | | | Tidy up a bit. Make sure that the burned image matches the downloaded one.
* MFp4:imp2006-08-163-48/+5
| | | | Simplify life a little for such a simple program.
* MFp4: Integrate a boatload of bug fixes from p4. We're right on theimp2006-08-107-2/+705
| | | | | | | | | | | 8k boundary with this program still. text data bss dec hex filename 7925 4 4476 12405 3075 bootiic.out so we have like 293 bytes left before we have to play games. There may be ways to reduce that somewhat, but they start to be very board specific.
* MFp4:imp2006-08-101-6/+23
| | | | | | Reach over into the arm tree to grab some at91 definitions. Better warnings Lots of build tweaks
* MFp4: remove obsolete filesimp2006-08-102-109/+0
|
* MFp4:imp2006-08-103-2/+294
| | | | | Remove obsolete files in list Add spi flash reading routines
* MFp4: Numerous changes from p4 to try to improve tftp downloading,imp2006-08-102-242/+230
| | | | | reduce code footprint, etc. While some problems still remain, the reliability of tftp is much improved.
* MFp4: consolidate #include files down to lib.himp2006-08-104-69/+24
|
* MFp4: These will migrate to the boot specific directories because theyimp2006-08-102-633/+0
| | | | are too hard to share between the different boot loaders.
* MFp4: Make it clearer that the address passed to the eeprom routines isimp2006-08-101-8/+8
| | | | really an offset within the eeprom device, and not a IIC address.
* MFp4: Catchup with migration of some defines.imp2006-08-101-317/+1
|
* MFp4: Tweaks for our board.imp2006-08-101-1/+1
|
* MFp4: Increase character timeout to 10. Make it a #define for easierimp2006-08-101-8/+9
| | | | | | | changes in the future. This helps with getting started and to overcome the really sucky level of granuality this timeout has in getc. A timeout of 1 means 'wait until top of next second' rather than 'wait for at least a second'.
* MFp4:imp2006-04-211-2/+2
| | | | | Make getc(0) polling (this has the happy side effect of saving 8 bytes in the generated code).
* MFp4: Loop forever getting characters... A kludge for now.imp2006-04-211-1/+1
|
* MFp4: Integrate support for building tag support for linux booting.imp2006-04-211-0/+7
|
* MFp4:imp2006-04-211-5/+2
| | | | | | Init eeprom here now that we don't init the eeprom in arm_init.s and read in the second 8k of the data. Tweak formatting.
* Move from arm_init.s -> .S. #ifdef linux vs freebsd defaults for theimp2006-04-212-13/+10
| | | | | boot loader (linux booting helps regression testing). No repo copy because of limited history.
* MFp4: formatting nits and minor style changes that likely won't matter.imp2006-04-211-2/+2
|
* Allow one to enable building tags. Check the size of the boot imag.imp2006-04-211-2/+15
|
* MFp4:imp2006-04-211-1/+13
| | | | | On the KB9202 go ahead and enable the flash controller so the boot loader can access the parallel flash.
* MFp4:imp2006-04-211-1/+3
| | | | | | | Make this compile, assuming that you have linux installed in a sensible place. tag_list is disabled by default, since we don't distribute linux, but it is desirable to allow the boot loader to boot Linux or FreeBSD (mostly for testing).
* MFp4:imp2006-04-211-2/+2
| | | | Minor diffs to reduce diffs to p4.
* spi flash updating boot loader. upload this file for the recoveryimp2006-04-213-0/+92
| | | | | | xmodem download. Then download the image you want in the flash. This will burn the image into the flash. You must then reset the unit and the new flash image will be used for booting...
* iic eeprom updating boot loader. upload this file for the recoveryimp2006-04-213-0/+98
| | | | | | xmodem download. Then download the image you want in the eeprom. This will burn the image into the eeprom. You must then reset the unit and the new eeprom image will be used for booting...
* Add boot0iic and boot0spi. These are 'shortcut' boot loaders designedimp2006-04-211-1/+1
| | | | | to replace either a bad iic eeprom with one you download with xmodem, or likewise with a spi flash.
* MFp4 (checkpoint of work in progress):imp2006-04-1934-48/+2979
| | | | | | | | | | | | o Use a directory layout that is more akin to the i386 boot layout. o Create a libat91 for library routines that are used by one or more of the boot loaders. o Create bootiic for booting from an iic part. o Create bootspi for booting from an spi part. o Optimize the size of many of these routines (especially emac.c). Except for the emac.c optimizations, all these have been tested. o eliminate the inc directory, libat91 superceeds it. o Move linker.cfg up a layer to allow it to be shared.
* Fix style nit noticed by bde.imp2006-04-151-1712/+1712
|
* Add commented out define for TSC board's boot0.imp2006-04-131-0/+1
|
* MFp4:imp2006-04-131-4/+7
| | | | | | | | | | For 32-bit SDRAM systems, enable D16 to D31 in the PIO controller. Otherwise they read back as 0xffff. Shave 8 bytes from the object size by using AT91C_BASE_PIOA directly and by not assigning PIO_BSR to 0 in the DBGU init. That's a nop in two ways (everything defaults to peripheral A, and writing 0 changes nothing).
* Merge from p4:imp2006-04-131-1084/+1084
| | | | | | | | | | | | | | | Many places used #define FOO ((unsigned int) 0x23) where a simpler #define FOO 0x23u would have sufficed. This practice is overly verbose and has the disadvantage that you can't say #if FOO == BAR #endif because the extra "unsigned int" tokens choke cpp's little brain. Migrate to the latter style to allow use in preprocessor statements. The two are the same semantically anyway in a C context (at least for the uses they are put to presently, C gurus can explain to me how they differ).
* Need at91rm9200_lowlevel.h for SDRAM_BASE definition.imp2006-04-131-0/+1
|
* Common register definition for AT91RM9200imp2006-04-121-0/+2747
|
* Recovery boot loader for the AT91 family of processors. Download itimp2006-04-1211-0/+769
via xmodem to the DBGU port when the AT91 comes up in recovery mode. The recovery loader will then load your program via xmodem into SDRAM at 1MB which can do its things. It needs to be tweaked to the specific board one is using, but it fits in < 1kB (all of Atmel's ARM products have at least 8kb of SRAM that I can tell, so this should work for them all). Parts of this code were provided by Kwikbyte with copyright specifically disclaimed. I heavily modified it to act as a recovery loader (before it was a bootstrap loader) and to optimize for size (before I started the size was closer to 8k). Bootstrap loaders for SPI and IIC to follow.
OpenPOWER on IntegriCloud