The code handling non-coherent DMA depends on being able to remap code as non-cached. But that can't be done without an MMU, so using this option on NOMMU builds is broken.
Unified · Split
| @@ -61,6 +61,7 @@ config SUPERH · 60 unmodified lines | ||
| 61 | 61 | select MAY_HAVE_SPARSE_IRQ |
| 62 | 62 | select MODULES_USE_ELF_RELA |
| 63 | 63 | select NEED_SG_DMA_LENGTH |
| 64 | + select NO_DMA if !MMU && !DMA_COHERENT | |
| 64 | 65 | select NO_GENERIC_PCI_IOPORT_MAP if PCI |
| 65 | 66 | select OLD_SIGACTION |
| 66 | 67 | select OLD_SIGSUSPEND |
| @@ -135,7 +136,7 @@ config DMA_COHERENT · 68 unmodified lines | ||
| 135 | 136 | bool |
| 136 | 137 | |
| 137 | 138 | config DMA_NONCOHERENT |
| 138 | − def_bool !DMA_COHERENT | |
| 139 | + def_bool !NO_DMA && !DMA_COHERENT | |
| 139 | 140 | select ARCH_HAS_SYNC_DMA_FOR_DEVICE |
| 140 | 141 | |
| 141 | 142 | config PGTABLE_LEVELS |