2
0
mirror of https://github.com/edk2-porting/linux-next.git synced 2024-12-27 06:34:11 +08:00
linux-next/arch/m68k
Babu Moger 4c97a0c8fe arch: define CPU_BIG_ENDIAN for all fixed big endian archs
Patch series "Define CPU_BIG_ENDIAN or warn for inconsistencies", v3.

While working on enabling queued rwlock on SPARC, found this following
code in include/asm-generic/qrwlock.h which uses CONFIG_CPU_BIG_ENDIAN to
clear a byte.

static inline u8 *__qrwlock_write_byte(struct qrwlock *lock)
 {
	return (u8 *)lock + 3 * IS_BUILTIN(CONFIG_CPU_BIG_ENDIAN);
 }

Problem is many of the fixed big endian architectures don't define
CPU_BIG_ENDIAN and clears the wrong byte.

Define CPU_BIG_ENDIAN for all the fixed big endian architecture to fix it.

Also found few more references of this config parameter in
drivers/of/base.c
drivers/of/fdt.c
drivers/tty/serial/earlycon.c
drivers/tty/serial/serial_core.c
Be aware that this may cause regressions if someone has worked-around
problems in the above code already. Remove the work-around.

Here is our original discussion
https://lkml.org/lkml/2017/5/24/620

Link: http://lkml.kernel.org/r/1499358861-179979-2-git-send-email-babu.moger@oracle.com
Signed-off-by: Babu Moger <babu.moger@oracle.com>
Suggested-by: Arnd Bergmann <arnd@arndb.de>
Acked-by: Geert Uytterhoeven <geert@linux-m68k.org>
Acked-by: David S. Miller <davem@davemloft.net>
Acked-by: Stafford Horne <shorne@gmail.com>
Cc: Yoshinori Sato <ysato@users.sourceforge.jp>
Cc: Jonas Bonn <jonas@southpole.se>
Cc: Stefan Kristiansson <stefan.kristiansson@saunalahti.fi>
Cc: "James E.J. Bottomley" <jejb@parisc-linux.org>
Cc: Helge Deller <deller@gmx.de>
Cc: Alexander Viro <viro@zeniv.linux.org.uk>
Cc: Michal Simek <monstr@monstr.eu>
Cc: Michael Ellerman <mpe@ellerman.id.au> (powerpc)
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Max Filippov <jcmvbkbc@gmail.com>
Cc: Greg KH <gregkh@linuxfoundation.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2017-09-08 18:26:48 -07:00
..
68000 m68k: replace gcc specific macros with ones from compiler.h 2017-02-24 17:46:56 -08:00
amiga m68k/amiga: Use seq_puts() in amiga_get_hardware_list() 2016-12-09 08:52:29 +01:00
apollo char/genrtc: remove m68k support 2016-06-04 00:23:28 +02:00
atari m68k/atari: Modernize printing of kernel messages 2017-02-12 10:36:49 +01:00
bvme6000 m68k/bvme6000: Modernize printing of kernel messages 2017-02-12 10:36:50 +01:00
coldfire m68k: coldfire: move inline before return type 2017-07-12 16:26:04 -07:00
configs m68k/defconfig: Update defconfigs for v4.13-rc1 2017-08-21 11:52:20 +02:00
emu net: Remove usage of net_device last_rx member 2017-01-18 17:22:49 -05:00
fpsp040 Fix common misspellings 2011-03-31 11:26:23 -03:00
hp300 char/genrtc: remove m68k support 2016-06-04 00:23:28 +02:00
ifpsp060 scripts/spelling.txt: add regsiter -> register spelling mistake 2017-05-08 17:15:13 -07:00
include m68k updates for 4.14 2017-09-05 09:34:49 -07:00
kernel m68k updates for 4.13 2017-07-03 15:12:52 -07:00
lib m68k: get rid of zeroing 2017-03-28 18:23:40 -04:00
mac m68k/mac: Avoid soft-lockup warning after mach_power_off 2017-08-21 11:52:56 +02:00
math-emu m68k: Assorted spelling fixes 2016-07-03 14:05:28 +02:00
mm m68k: switch to generic extable.h 2017-03-28 18:23:40 -04:00
mvme16x m68k/mvme16x: Modernize printing of kernel messages 2017-02-12 10:36:51 +01:00
mvme147 m68k/mvme147: Modernize printing of kernel messages 2017-02-12 10:36:50 +01:00
q40 m68k/q40: Modernize printing of kernel messages 2017-02-12 10:36:51 +01:00
sun3 sched/headers: Prepare for new header dependencies before moving code to <linux/sched/mm.h> 2017-03-02 08:42:28 +01:00
sun3x m68k/sun3x: Modernize printing of kernel messages 2017-02-12 10:36:52 +01:00
tools/amiga
install.sh kbuild: use INSTALLKERNEL to select customized installkernel script 2009-09-20 12:18:14 +02:00
Kconfig arch: define CPU_BIG_ENDIAN for all fixed big endian archs 2017-09-08 18:26:48 -07:00
Kconfig.bus m68k/atari: ROM port ISA adapter support 2013-04-16 21:08:11 +02:00
Kconfig.cpu m68k: move CONFIG_FPU set to per-CPU configuration 2016-09-26 12:02:58 +10:00
Kconfig.debug m68knommu: remove obsolete 68360 support 2016-03-07 10:07:17 +10:00
Kconfig.devices Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k 2014-10-08 05:40:17 -04:00
Kconfig.machine m68k: add Sysam AMCORE open board support 2016-12-05 08:53:27 +10:00
Makefile m68knommu: remove obsolete 68360 support 2016-03-07 10:07:17 +10:00