linux/arch/powerpc/platforms
Michael Ellerman 529d235a0e powerpc: Add a proper syscall for switching endianness
We currently have a "special" syscall for switching endianness. This is
syscall number 0x1ebe, which is handled explicitly in the 64-bit syscall
exception entry.

That has a few problems, firstly the syscall number is outside of the
usual range, which confuses various tools. For example strace doesn't
recognise the syscall at all.

Secondly it's handled explicitly as a special case in the syscall
exception entry, which is complicated enough without it.

As a first step toward removing the special syscall, we need to add a
regular syscall that implements the same functionality.

The logic is simple, it simply toggles the MSR_LE bit in the userspace
MSR. This is the same as the special syscall, with the caveat that the
special syscall clobbers fewer registers.

This version clobbers r9-r12, XER, CTR, and CR0-1,5-7.

Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
2015-03-28 22:03:40 +11:00
..
8xx powerpc/8xx: Remove Kconfig symbol FADS 2014-11-07 18:10:46 -06:00
40x powerpc: make of_device_ids const 2014-09-25 23:14:46 +10:00
44x powerpc/44x/Akebono: Remove select of IBM_EMAC_RGMII_WOL 2014-12-29 15:45:44 +11:00
52xx Driver core patches for 3.19-rc1 2014-12-14 16:10:09 -08:00
82xx powerpc: platforms: 82xx: drop owner assignment from platform_drivers 2014-10-20 16:20:11 +02:00
83xx PowerPC-83xx: Deletion of an unnecessary check before the function call "of_node_put" 2015-01-29 23:16:19 -06:00
85xx powerpc/85xx: Add support for Emerson/Artesyn MVME2500. 2015-01-29 22:57:42 -06:00
86xx powerpc: make of_device_ids const 2014-09-25 23:14:46 +10:00
512x powerpc: call of_clk_init() from time_init() 2015-01-20 10:09:02 -08:00
amigaone lib/scatterlist: make ARCH_HAS_SG_CHAIN an actual Kconfig 2014-08-08 15:57:26 -07:00
cell powerpc: Add a proper syscall for switching endianness 2015-03-28 22:03:40 +11:00
chrp powerpc: Convert power off logic to pm_power_off 2014-11-03 12:12:51 +11:00
embedded6xx powerpc: Remove some unused functions 2015-01-28 15:00:24 +11:00
maple powerpc: Remove superfluous bootmem includes 2014-11-10 09:59:26 +11:00
pasemi powerpc: platforms: pasemi: drop owner assignment from platform_drivers 2014-10-20 16:20:12 +02:00
powermac powerpc/pmac: Fix DT refcount imbalance in pmac_pic_probe_oldstyle 2015-03-25 16:53:27 +11:00
powernv Merge branch 'next-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc into test 2015-03-26 20:04:28 +11:00
ps3 powerpc/ps3: Write highmem info to repository 2015-01-22 17:31:21 +11:00
pseries powerpc/pseries: Simplify check for suspendability during suspend/migration 2015-03-28 12:20:39 +11:00
fsl_uli1575.c of/irq: Refactor interrupt-map parsing 2013-10-24 11:43:04 +01:00
Kconfig powerpc: Remove platforms/wsp and associated pieces 2014-06-11 16:35:38 +10:00
Kconfig.cputype powerpc: Spelling s/embeeded/embedded/ 2015-03-23 14:47:48 +11:00
Makefile powerpc: Remove platforms/wsp and associated pieces 2014-06-11 16:35:38 +10:00