summaryrefslogtreecommitdiffstats
path: root/arch/m68k
diff options
context:
space:
mode:
authorGreg Ungerer <gerg@linux-m68k.org>2018-03-25 22:37:11 +1000
committerGreg Ungerer <gerg@linux-m68k.org>2018-05-28 09:45:26 +1000
commitdfbc5cb39928c872c299f4718674e3f1215b07ae (patch)
treeadffb23aba9736140fc2b4ee72f8e89338cffa04 /arch/m68k
parent927c28c252dc4c0c9c4ca9fcfcfad9e70a555298 (diff)
downloadlinux-dfbc5cb39928c872c299f4718674e3f1215b07ae.tar.gz
linux-dfbc5cb39928c872c299f4718674e3f1215b07ae.tar.bz2
linux-dfbc5cb39928c872c299f4718674e3f1215b07ae.zip
m68k: use io_no.h for MMU and non-MMU enabled ColdFire
Use the io_no.h IO access support for all ColdFire systems, no matter whether configured with MMU enabled or disabled. Previously there was subtle differences in IO access functions used in both cases, and these resulted in broken behavior for some drivers. As observed and reported by Angelo when using MMU enabled systems the read/write family of functions was using little endian access, while the non-MMU enabled systems were using native endian. This results in drivers that are shared across Freescale processors (for some of the common internal SoC peripherals) not working - since they are wired up for native endian access. This problem brings to light issues with PCI bus access and local peripheral access - but these are not addressed with this fix. Reported-by: Angelo Dureghello <angelo@sysam.it> Signed-off-by: Greg Ungerer <gerg@linux-m68k.org> Reviewed-by: Angelo Dureghello <angelo@sysam.it> Tested-by: Angelo Dureghello <angelo@sysam.it>
Diffstat (limited to 'arch/m68k')
-rw-r--r--arch/m68k/include/asm/io.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/m68k/include/asm/io.h b/arch/m68k/include/asm/io.h
index 00b45155969c..ca2849afb087 100644
--- a/arch/m68k/include/asm/io.h
+++ b/arch/m68k/include/asm/io.h
@@ -1,5 +1,5 @@
/* SPDX-License-Identifier: GPL-2.0 */
-#ifdef __uClinux__
+#if defined(__uClinux__) || defined(CONFIG_COLDFIRE)
#include <asm/io_no.h>
#else
#include <asm/io_mm.h>