| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Remove at91 bootloader. It only worked on AT91RM9200, and only
specific boards that were all EOLd 10 years ago.
Remove ixp425. It doesn't build anymore and is for boards that were
EOLd 8 years ago.
Sponsored by: Netflix
Notes:
svn path=/head/; revision=324982
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
My change had good intentions, but the implementation was incorrect:
- printf was returning the number of characters in the format string
plus the NUL, but failed in two regards implementation wise:
-- the pathological case, printf(""), wasn't being handled properly since
the pointer is always incremented, so the value returned would be
off-by-one.
-- printf(3) reports the number of characters printed post-conversion via
vfprintf, etc.
- putchar(3) should return the character printed or EOF, not the number
of characters output to the screen.
My goal in making the change (again) was to increase parity, but as bde
pointed out these are freestanding functions, so they don't have to
conform to libc/POSIX. I argued that the functions should be named
differently since the implementation is different enough to warrant it
and to allow boot2 code to be usable when linked against sys/boot and
libstand and other libraries in base. I have no interest in pushing
this change forward more though, as the original concern I had behind
the change with zfsboottest was resolved in r321849 and r321852. The
next person that updates the toolchain gets to deal with the
inconsistency if it's flagged by a newer compiler.
MFC after: 1 month
Reported by: ed, markj
Notes:
svn path=/head/; revision=321991
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
POSIX equivalents
Both printf and putchar return int, not void.
This will allow code that leverages the libcalls and checks/rely on the
return type to interchangeably between loader code and non-loader
code.
MFC after: 1 month
Notes:
svn path=/head/; revision=321969
|
| |
|
|
|
|
|
| |
No functional change.
Notes:
svn path=/head/; revision=298826
|
| |
|
|
|
|
|
| |
Found with devel/coccinelle.
Notes:
svn path=/head/; revision=297793
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
| |
Notes:
svn path=/head/; revision=269110
|
| |
|
|
|
|
|
| |
from the latter.
Notes:
svn path=/head/; revision=265420
|
| |
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
| |
Notes:
svn path=/head/; revision=238463
|
| |
|
|
| |
Notes:
svn path=/head/; revision=238187
|
| |
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
|
|
| |
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
|
| |
|
|
| |
Notes:
svn path=/head/; revision=204900
|
| |
|
|
|
|
|
| |
check for both status codes
Notes:
svn path=/head/; revision=174877
|
| |
|
|
| |
Notes:
svn path=/head/; revision=172991
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
order. The kernel used to shuffle them around to get things right,
but that was recently fixed. This makes our boot loader match the
behavior of most other boot loaders for the atmel parts. This bug was
inherited from the Kwikbyte loader that we started from.
This bug was discovered by Bj.ANvrn KNvnig back in June, but fell on the
floor. He provided patches to the kernel, include backwards
compatibility options that were similar to Olivier's if_ate.c commit.
Notes:
svn path=/head/; revision=172952
|
| |
|
|
|
|
|
|
|
|
| |
but I'm unsure of its provenance, so rather than add it here, revert
the migration to it.
Approved by: re@ (blanket)
Notes:
svn path=/head/; revision=171794
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Add support for the CENTIPAD board (http://www.harerod.de/centipad/index.html)
(which is a very cool, very small ARM board)
Add support for KB9202B (it has different memory)
Make BOOT_FLAVOR settable
Minor cleanup nits
Approved by: re@
Notes:
svn path=/head/; revision=171426
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
GetSeconds(). Instead, use CRTR register shifted right 15. This
gives us a range of 32 seconds we can do for timeout.
Shift to using == rather than < or > for calculating the timeout,
since if we can't read the ST_CTRT register twice in a second we have
even bigger problems to worry about, and == deals with the 'wrap'
issue.
This lets me type at the boot2 prompt again! Woo Hoo!
Bogusness noticed by: tisco
Pointy Hat to: That silly imp guy
Notes:
svn path=/head/; revision=168013
|
| |
|
|
|
|
|
|
| |
CRTR register to be 1/32768th of a second in init, we don't need to do
it here.
Notes:
svn path=/head/; revision=168012
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
CSD is usually 512 (well, 9), but for 2GB (and the rogue 4GB SD cards)
it is 1024 (or 2048 for 4GB). This value doesn't work for the block
read commands (which really want 512). Hardcode 512 for those. This
may break really old MMC cards that don't have a 512 block size (I've
never seen one: make my day and send me one :-), but since the MMC
side of the house is currently broken, it should only have the effect
that 2GB (and non-conforming 4GB) SD cards will work.
My 'non-conforming' 4GB SD card also works now too. The
non-conforming 4GB SD cards were sold for a while before the SD
association was worried they would be (a) incompatible (different FAT
flavor on them) and (b) confusing for the new SDHC standard and
cracked down on suppliers' bogus use of the SD trademark...
Notes:
svn path=/head/; revision=168011
|
| |
|
|
|
|
|
|
|
| |
character after the character that was the same.
Submitted by: jhay
Notes:
svn path=/head/; revision=168006
|
| |
|
|
|
|
|
| |
Submitted by: jhay
Notes:
svn path=/head/; revision=168005
|
| |
|
|
|
|
|
|
|
|
| |
It isn't relevant to FreeBSD as a whole, breaks the build, and isn't
even needed for my company's boards anymore...
MFC After: 2 weeks
Notes:
svn path=/head/; revision=167586
|
| |
|
|
| |
Notes:
svn path=/head/; revision=165401
|
| |
|
|
| |
Notes:
svn path=/head/; revision=165400
|
| |
|
|
| |
Notes:
svn path=/head/; revision=165399
|
| |
|
|
| |
Notes:
svn path=/head/; revision=165398
|
| |
|
|
| |
Notes:
svn path=/head/; revision=165397
|
| |
|
|
|
|
|
| |
merged ito sd-card.c, but this is an imperfect world.
Notes:
svn path=/head/; revision=164324
|
| |
|
|
|
|
|
| |
different at this point.
Notes:
svn path=/head/; revision=164323
|
| |
|
|
|
|
|
| |
somewhat.
Notes:
svn path=/head/; revision=164137
|
| |
|
|
| |
Notes:
svn path=/head/; revision=163542
|
| |
|
|
|
|
|
|
|
|
|
| |
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.
Notes:
svn path=/head/; revision=163533
|
| |
|
|
| |
Notes:
svn path=/head/; revision=161370
|
| |
|
|
| |
Notes:
svn path=/head/; revision=161198
|
| |
|
|
|
|
|
|
| |
Remove obsolete files in list
Add spi flash reading routines
Notes:
svn path=/head/; revision=161197
|
| |
|
|
|
|
|
|
| |
reduce code footprint, etc. While some problems still remain, the
reliability of tftp is much improved.
Notes:
svn path=/head/; revision=161196
|
| |
|
|
| |
Notes:
svn path=/head/; revision=161195
|
| |
|
|
|
|
|
| |
are too hard to share between the different boot loaders.
Notes:
svn path=/head/; revision=161194
|
| |
|
|
|
|
|
| |
really an offset within the eeprom device, and not a IIC address.
Notes:
svn path=/head/; revision=161193
|
| |
|
|
| |
Notes:
svn path=/head/; revision=161192
|
| |
|
|
| |
Notes:
svn path=/head/; revision=161191
|
| |
|
|
|
|
|
|
|
|
| |
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'.
Notes:
svn path=/head/; revision=161190
|
| |
|
|
|
|
|
|
| |
Make getc(0) polling (this has the happy side effect of saving
8 bytes in the generated code).
Notes:
svn path=/head/; revision=157940
|
| |
|
|
| |
Notes:
svn path=/head/; revision=157939
|
| |
|
|
| |
Notes:
svn path=/head/; revision=157938
|
| |
|
|
|
|
|
|
| |
On the KB9202 go ahead and enable the flash controller so the boot
loader can access the parallel flash.
Notes:
svn path=/head/; revision=157924
|