Skip to content
Snippets Groups Projects
Commit 4a1f11b4 authored by Shinya Kuribayashi's avatar Shinya Kuribayashi Committed by Wolfgang Denk
Browse files

doc/README.mips: Add MIPS notes

parent 215b01bb
No related branches found
No related tags found
No related merge requests found
Notes for the MIPS architecture port of U-Boot
Toolchains
----------
http://www.denx.de/wiki/DULG/ELDK
ELDK < DULG < DENX
http://www.emdebian.org/crosstools.html
Embedded Debian -- Cross-development toolchains
http://buildroot.uclibc.org/
Buildroot
Known Issues
------------
* Little endian build problem
If use non-ELDK toolchains, -EB will be set to CPPFLAGS. Therefore all
objects will be generated in big-endian format.
* Cache incoherency issue caused by do_bootelf_exec() at cmd_elf.c
Cache will be disabled before entering the loaded ELF image without
writing back and invalidating cache lines. This leads to cache
incoherency in most cases, unless the code gets loaded after U-Boot
re-initializes the cache. The more common uImage 'bootm' command does
not suffer this problem.
[workaround] To avoid this cache incoherency,
1) insert flush_cache(all) before calling dcache_disable(), or
2) fix dcache_disable() to do both flushing and disabling cache.
* Note that Linux users need to kill dcache_disable() in do_bootelf_exec()
or override do_bootelf_exec() not to disable I-/D-caches, because most
Linux/MIPS ports don't re-enable caches after entering kernel_entry.
TODOs
-----
* Probe CPU types, I-/D-cache and TLB size etc. automatically
* Secondary cache support missing
* Centralize the link directive files
* Initialize TLB entries redardless of their use
* R2000/R3000 class parts are not supported
* Limited testing across different MIPS variants
* Due to cache initialization issues, the DRAM on board must be
initialized in board specific assembler language before the cache init
code is run -- that is, initialize the DRAM in lowlevel_init().
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment