Navigation: Linux Kernel Driver DataBase - web LKDDB: Main index - A index

CONFIG_ARM_DMA_MEM_BUFFERABLE: Use non-cacheable memory for DMA

General informations

The Linux kernel configuration item CONFIG_ARM_DMA_MEM_BUFFERABLE:

Help text

Historically, the kernel has used strongly ordered mappings to provide DMA coherent memory. With the advent of ARMv7, mapping memory with differing types results in unpredictable behaviour, so on these CPUs, this option is forced on.

Multiple mappings with differing attributes is also unpredictable on ARMv6 CPUs, but since they do not have aggressive speculative prefetch, no harm appears to occur.

However, drivers may be missing the necessary barriers for ARMv6, and therefore turning this on may result in unpredictable driver behaviour. Therefore, we offer this as an option.

On some of the beefier ARMv7-M machines (with DMA and write buffers) you likely want this enabled, while those that didn't need it until now also won't need it in the future.

You are recommended say 'Y' here and debug any affected drivers.

Hardware

LKDDb

Raw data from LKDDb:

Sources

This page is automaticly generated with free (libre, open) software lkddb(see lkddb-sources).

The data is retrived from:

Automatic links from Google (and ads)

Custom Search

Popular queries:

Navigation: Linux Kernel Driver DataBase - web LKDDB: main index - A index

Automatically generated (in year 2024). See also LKDDb sources on GitLab