Ralf, Here's is the second attempt to make this works on your Malta board and all other boards that have some data reserved at the start of their memories. In these cases the first patchset assumed wrongly that the start of the memory was after this reserved area. Patch 1/2 should work alone now. the kernel should report that your mem config is wasting some memory for tracking reserved pages located at the start of the mem. Thanks for testing Franck --- arch/mips/kernel/setup.c | 40 +++++++++++++++++++++++++++++++--------- arch/mips/mm/init.c | 23 +++++++++++------------ include/asm-mips/dma.h | 1 + include/asm-mips/io.h | 4 ++-- include/asm-mips/page.h | 25 +++++++++++++++++++++---- 5 files changed, 66 insertions(+), 27 deletions(-)