24 Aug 2011 19:42
mips changes for loongson2
Manuel Bouyer <bouyer <at> antioche.eu.org>
2011-08-24 17:42:36 GMT
2011-08-24 17:42:36 GMT
Hello, my work on getting the lemote fuloong working is almost ready to be commited (it'll be another evbmips sub-port: evbmips/loongson, which should also work on the lebote yeloong, the gdium and probably others). This requires a few changes to some mips-specific files as in the attached patches: - bonito.diff: make the 'struct bonito_config' const, so that it can be in kernel text instead of data. This needs some __UNCONST() but I guess it's no big deal. Add a bc_attach_hook to struct bonito_config, to be used as pc_attach_hook if not NULL. Add some LS2-specific register defines (LS2f uses a modified bonito64). - mips.diff: add some LS2F specific defines to cpuregs.h Fix a bug with VM_MAXUSER_ADDRESS and 16k pages (VM_MAXUSER_ADDRESS doens't change with page size ...) Hack some assembly files for LS2 branch prediction bug workaround on j(r) reg, as already discussed here (basically, the assembler needs to be able to use at register when it runs into a j register instruction). LS2-specific tlbmiss handler (ls2 doesn't have a separate handler for 64bit addresses) Fixes for some #ifdef MIPS3_LOONGSON2 assembly code (using the wrong register). mips_fixup.c: add code to handle the instructions added by -fix-loongson2-btb - common.diff: Hack some assembly files for LS2 branch prediction bug workaround on(Continue reading)
RSS Feed