This patchset removes the last hurdles to supporting all DB/PB Develoboards in a single kernel image. The main issue is that on earlier chips (Au1000, Au1500, Au1100) some peripherals, notably the USB blocks, aren't fully dma coherent and need manual cache massaging to work properly. For these parts DMA_NONCOHERENT is used. Newer variants starting with the Au1550 work fine without any additional software intervention and use DMA_COHERENT by default. The first patch extends the already existing DMA_MAYBE_COHERENT logic to also cover the parts which are already compiled when DMA_NONCOHERENT is enabled. The second patch then uses the "coherentio" variable which DMA_MAYBE_COHERENT exports and sets it based on CPU subtype. The third patch finally unifies support for all Alchemy devboards. I'm not really sure if patch #1 is even the correct way to do it; however based on my understanding of what DMA_MAYBE_COHERENT is supposed to do I actually thought that it's a logical extension. But I'm not sure and don't have a MALTA board to test it on. Hence the RFC. v2: new defconfig replacing two oobsolete ones, some function renaming Thanks, Manuel Lauss Manuel Lauss (3): MIPS: extend DMA_MAYBE_COHERENT logic to DMA_NONCOHERENT use MIPS: Alchemy: determine cohereny at runtime based on cpu type MIPS: Alchemy: unify Devboard support. arch/mips/Kconfig | 1 + arch/mips/alchemy/Kconfig | 22 +- arch/mips/alchemy/Platform | 16 +- arch/mips/alchemy/common/setup.c | 10 + arch/mips/alchemy/devboards/Makefile | 4 +- arch/mips/alchemy/devboards/db1000.c | 47 +--- arch/mips/alchemy/devboards/db1200.c | 9 + arch/mips/alchemy/devboards/db1235.c | 94 -------- arch/mips/alchemy/devboards/db1300.c | 6 +- arch/mips/alchemy/devboards/db1550.c | 10 +- arch/mips/alchemy/devboards/db1xxx.c | 121 ++++++++++ arch/mips/configs/db1000_defconfig | 359 ----------------------------- arch/mips/configs/db1235_defconfig | 434 ----------------------------------- arch/mips/configs/db1xxx_defconfig | 248 ++++++++++++++++++++ arch/mips/include/asm/io.h | 4 +- arch/mips/mm/c-r4k.c | 6 +- arch/mips/mm/cache.c | 4 +- arch/mips/pci/pci-alchemy.c | 5 +- drivers/spi/spi-au1550.c | 9 + 19 files changed, 445 insertions(+), 964 deletions(-) delete mode 100644 arch/mips/alchemy/devboards/db1235.c create mode 100644 arch/mips/alchemy/devboards/db1xxx.c delete mode 100644 arch/mips/configs/db1000_defconfig delete mode 100644 arch/mips/configs/db1235_defconfig create mode 100644 arch/mips/configs/db1xxx_defconfig -- 1.8.5.5