Re: [PATCH 1/3] phy: rockchip-emmc: Allow to set drive impedance via DTS.

2019-03-01 Thread Philipp Tomsich
es the value from the DTS >>> to setup the drive impedance accordingly. >>> >>> Signed-off-by: Christoph Muellner >>> Signed-off-by: Philipp Tomsich >>> --- >>> drivers/phy/rockchip/phy-rockchip-emmc.c | 38 >>> +

Re: [PATCH 1/3] phy: rockchip-emmc: Allow to set drive impedance via DTS.

2019-03-01 Thread Philipp Tomsich
d coded into the driver. >> >> This patch introduces the DTS property 'drive-impedance-ohm' >> for the rockchip-emmc phy node, which uses the value from the DTS >> to setup the drive impedance accordingly. >> >> Signed-off-by: Christoph Muellner >> Sig

Re: [PATCH 2/3] dt-bindings: mmc: Add a new property disable-cqe-dcmd.

2019-03-01 Thread Philipp Tomsich
> On 01.03.2019, at 17:43, Christoph Muellner > wrote: > > This patch documents the new proprty disable-cqe-dcmd typo: proprty -> property > for the Arasan eMMC 5.1 driver. > > Signed-off-by: Christoph Muellner > Signed-off-by: Philipp Tomsich > --- >

Re: [PATCH 07/24] arm64: ilp32: add documentation on the ILP32 ABI for ARM64

2018-05-24 Thread Dr. Philipp Tomsich
Yury & Pavel, > On 24 May 2018, at 14:15, Yury Norov wrote: > > Hi Pavel, > > On Wed, May 23, 2018 at 04:06:20PM +0200, Pavel Machek wrote: >> On Wed 2018-05-16 11:18:52, Yury Norov wrote: >>> Based on Andrew Pinski's patch-series. >>> >>> Signed-off-by: Yury Norov

Re: [PATCH 07/24] arm64: ilp32: add documentation on the ILP32 ABI for ARM64

2018-05-24 Thread Dr. Philipp Tomsich
Yury & Pavel, > On 24 May 2018, at 14:15, Yury Norov wrote: > > Hi Pavel, > > On Wed, May 23, 2018 at 04:06:20PM +0200, Pavel Machek wrote: >> On Wed 2018-05-16 11:18:52, Yury Norov wrote: >>> Based on Andrew Pinski's patch-series. >>> >>> Signed-off-by: Yury Norov >> >> So Andrew's signoff

Re: [PATCH 4/4] arm64: dts: add RK3399-Q7 (Puma) SoM

2017-06-28 Thread Dr. Philipp Tomsich
> On 28 Jun 2017, at 12:26, Heiko Stübner wrote: > > Hi Klaus, > > [added Kever from Rockchip concerning the cluster1-opps below] > > > Am Montag, 26. Juni 2017, 21:18:54 CEST schrieb Klaus Goger: >> The RK3399-Q7 SoM is a Qseven-compatible (70mm x 70mm, MXM-230 >>

Re: [PATCH 4/4] arm64: dts: add RK3399-Q7 (Puma) SoM

2017-06-28 Thread Dr. Philipp Tomsich
> On 28 Jun 2017, at 12:26, Heiko Stübner wrote: > > Hi Klaus, > > [added Kever from Rockchip concerning the cluster1-opps below] > > > Am Montag, 26. Juni 2017, 21:18:54 CEST schrieb Klaus Goger: >> The RK3399-Q7 SoM is a Qseven-compatible (70mm x 70mm, MXM-230 >> connector)

[PATCH] clk: sunxi-ng: Fix div/mult settings for osc12M on A64

2017-03-15 Thread Philipp Tomsich
The mult/div for osc12M was previously backwards (giving a 48M rate for osc12M). Fix it. X-AffectedPlatforms: A64-uQ7 Signed-off-by: Philipp Tomsich <philipp.toms...@theobroma-systems.com> Tested-by: Christoph Muellner <christoph.muell...@theobroma-systems.com> Cc: Maxime Ripard

[PATCH] clk: sunxi-ng: Fix div/mult settings for osc12M on A64

2017-03-15 Thread Philipp Tomsich
The mult/div for osc12M was previously backwards (giving a 48M rate for osc12M). Fix it. X-AffectedPlatforms: A64-uQ7 Signed-off-by: Philipp Tomsich Tested-by: Christoph Muellner Cc: Maxime Ripard --- drivers/clk/sunxi-ng/ccu-sun50i-a64.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion

Re: [Question] New mmap64 syscall?

2016-12-07 Thread Dr. Philipp Tomsich
Catalin, > On 07 Dec 2016, at 17:32, Catalin Marinas wrote: > >>> In other words: Why not keep ILP32 simple an ask users that need a 16TB+ >>> offset >>> to use LP64? It seems much more consistent with the other choices takes so >>> far. >> >> If user can switch to

Re: [Question] New mmap64 syscall?

2016-12-07 Thread Dr. Philipp Tomsich
Catalin, > On 07 Dec 2016, at 17:32, Catalin Marinas wrote: > >>> In other words: Why not keep ILP32 simple an ask users that need a 16TB+ >>> offset >>> to use LP64? It seems much more consistent with the other choices takes so >>> far. >> >> If user can switch to lp64, he doesn't need

Re: [RFC2 nowrap: PATCH v7 00/18] ILP32 for ARM64

2016-08-17 Thread Dr. Philipp Tomsich
> On 17 Aug 2016, at 16:29, Catalin Marinas <catalin.mari...@arm.com> wrote: > > On Wed, Aug 17, 2016 at 02:54:59PM +0200, Dr. Philipp Tomsich wrote: >> On 17 Aug 2016, at 14:48, Yury Norov <yno...@caviumnetworks.com> wrote: >>> On Wed, Aug 17, 2016 at 02

Re: [RFC2 nowrap: PATCH v7 00/18] ILP32 for ARM64

2016-08-17 Thread Dr. Philipp Tomsich
> On 17 Aug 2016, at 16:29, Catalin Marinas wrote: > > On Wed, Aug 17, 2016 at 02:54:59PM +0200, Dr. Philipp Tomsich wrote: >> On 17 Aug 2016, at 14:48, Yury Norov wrote: >>> On Wed, Aug 17, 2016 at 02:28:50PM +0200, Alexander Graf wrote: >>>> On 17 A

Re: [RFC2 nowrap: PATCH v7 00/18] ILP32 for ARM64

2016-08-17 Thread Dr. Philipp Tomsich
> On 17 Aug 2016, at 14:48, Yury Norov wrote: > > On Wed, Aug 17, 2016 at 02:28:50PM +0200, Alexander Graf wrote: >> >>> On 17 Aug 2016, at 13:46, Yury Norov wrote: >>> >>> This series enables aarch64 with ilp32 mode, and as supporting

Re: [RFC2 nowrap: PATCH v7 00/18] ILP32 for ARM64

2016-08-17 Thread Dr. Philipp Tomsich
> On 17 Aug 2016, at 14:48, Yury Norov wrote: > > On Wed, Aug 17, 2016 at 02:28:50PM +0200, Alexander Graf wrote: >> >>> On 17 Aug 2016, at 13:46, Yury Norov wrote: >>> >>> This series enables aarch64 with ilp32 mode, and as supporting work, >>> introduces ARCH_32BIT_OFF_T configuration

Re: [PATCH v6 12/20] arm64:ilp32: add sys_ilp32.c and a separate table (in entry.S) to use it

2015-12-21 Thread Dr. Philipp Tomsich
> On 18 Dec 2015, at 13:47, Arnd Bergmann wrote: > >> 3. Follow the PCS up to glibc but always pass syscall arguments in W >> registers, like AArch32 compat support (the least preferred option, >> the only advantage is a single wrapper for all syscalls but it would >> be doing unnecessary

Re: [PATCH v6 12/20] arm64:ilp32: add sys_ilp32.c and a separate table (in entry.S) to use it

2015-12-21 Thread Dr. Philipp Tomsich
> On 18 Dec 2015, at 13:47, Arnd Bergmann wrote: > >> 3. Follow the PCS up to glibc but always pass syscall arguments in W >> registers, like AArch32 compat support (the least preferred option, >> the only advantage is a single wrapper for all syscalls but it would >> be

Re: [PATCH v6 05/19] arm64:uapi: set __BITS_PER_LONG correctly for ILP32 and LP64

2015-12-03 Thread Dr. Philipp Tomsich
Catalin, > Quick question: IIRC, earlier aarch64 gcc versions did not generate > __ILP32__ when -mabi=ilp32, they only removed __LP64__. When did the > change happen? Could we assume that all compiler versions used to > generate ILP32 would define this? The __ILP32__ define has been supported

Re: [PATCH v6 05/19] arm64:uapi: set __BITS_PER_LONG correctly for ILP32 and LP64

2015-12-03 Thread Dr. Philipp Tomsich
Catalin, > Quick question: IIRC, earlier aarch64 gcc versions did not generate > __ILP32__ when -mabi=ilp32, they only removed __LP64__. When did the > change happen? Could we assume that all compiler versions used to > generate ILP32 would define this? The __ILP32__ define has been supported

Re: [PATCH v6 18/19] arm64:ilp32: change COMPAT_ELF_PLATFORM to report a a subplatform for ILP32

2015-11-18 Thread Dr. Philipp Tomsich
com wrote: >> >> >>> On Nov 18, 2015, at 12:11 AM, Zhangjian (Bamvor) >>> wrote: >>> >>> Hi, Yury >>> >>>> On 2015/11/18 5:16, Yury Norov wrote: >>>> From: Philipp Tomsich >>>> >>>> To make li

Re: [PATCH v6 18/19] arm64:ilp32: change COMPAT_ELF_PLATFORM to report a a subplatform for ILP32

2015-11-18 Thread Dr. Philipp Tomsich
3:21:05AM -0800, pins...@gmail.com wrote: >> >> >>> On Nov 18, 2015, at 12:11 AM, Zhangjian (Bamvor) >>> <bamvor.zhangj...@huawei.com> wrote: >>> >>> Hi, Yury >>> >>>> On 2015/11/18 5:16, Yury Norov wrote: >>&g

Re: [PATCH v5 17/23] arm64:ilp32: add vdso-ilp32 and use for signal return

2015-10-01 Thread Dr. Philipp Tomsich
:44, Yury Norov wrote: > > On Tue, Sep 29, 2015 at 11:06:13PM -0500, Nathan Lynch wrote: >> On 09/29/2015 05:14 PM, Yury Norov wrote: >>> From: Philipp Tomsich >>> >>> Adjusted to move the move data page before code pages in sync with >>&

Re: [PATCH v5 17/23] arm64:ilp32: add vdso-ilp32 and use for signal return

2015-10-01 Thread Dr. Philipp Tomsich
:44, Yury Norov <yno...@caviumnetworks.com> wrote: > > On Tue, Sep 29, 2015 at 11:06:13PM -0500, Nathan Lynch wrote: >> On 09/29/2015 05:14 PM, Yury Norov wrote: >>> From: Philipp Tomsich <philipp.toms...@theobroma-systems.com> >>> >>> Adjuste

Re: [PATCH v4 00/24] ILP32 for ARM64

2015-05-04 Thread Dr. Philipp Tomsich
Arnd, Where can I pull this prototype implementation from? As we are working on getting a final ILP32 change-set ready, I’d like to make sure that we base this on the latest consensus for new ILP32 ABIs on 64bit machines. Thanks, Philipp. > On 04 May 2015, at 12:29, Arnd Bergmann wrote: > >

Re: [PATCH v4 00/24] ILP32 for ARM64

2015-05-04 Thread Dr. Philipp Tomsich
Arnd, Where can I pull this prototype implementation from? As we are working on getting a final ILP32 change-set ready, I’d like to make sure that we base this on the latest consensus for new ILP32 ABIs on 64bit machines. Thanks, Philipp. On 04 May 2015, at 12:29, Arnd Bergmann a...@arndb.de

Re: [PATCH v4 00/24] ILP32 for ARM64

2015-04-17 Thread Dr. Philipp Tomsich
More comments below. > On 17 Apr 2015, at 16:46, Catalin Marinas wrote: > > Even in this case, we could enable AArch32 compat knowing that ioctls > wouldn't work. If this is important, we can add an option to enable > ioctl support for ILP32 and re-target the asm/compat.h definitions. > >> g)

Re: [PATCH v4 00/24] ILP32 for ARM64

2015-04-17 Thread Dr. Philipp Tomsich
More comments below. On 17 Apr 2015, at 16:46, Catalin Marinas catalin.mari...@arm.com wrote: Even in this case, we could enable AArch32 compat knowing that ioctls wouldn't work. If this is important, we can add an option to enable ioctl support for ILP32 and re-target the asm/compat.h

Re: [PATCH v4 00/24] ILP32 for ARM64

2015-04-16 Thread Dr. Philipp Tomsich
Just for the record (and to avoid anyone wasting their time on what’s available today): we are migrating this over to option (a) now, even though we would prefer to see option (b) implemented. If we get a consensus on (b) in the next couple of days, we’ll redo things for option (b). If not, we

Re: [PATCH v4 00/24] ILP32 for ARM64

2015-04-16 Thread Dr. Philipp Tomsich
Just for the record (and to avoid anyone wasting their time on what’s available today): we are migrating this over to option (a) now, even though we would prefer to see option (b) implemented. If we get a consensus on (b) in the next couple of days, we’ll redo things for option (b). If not, we

Re: [PATCH v4 00/24] ILP32 for ARM64

2015-04-15 Thread Dr. Philipp Tomsich
> On 15 Apr 2015, at 17:38, Catalin Marinas wrote: > > On Wed, Apr 15, 2015 at 05:15:16PM +0200, Arnd Bergmann wrote: >> On Wednesday 15 April 2015 11:01:54 Catalin Marinas wrote: >>> On Wed, Apr 15, 2015 at 11:18:06AM +0200, Dr. Philipp Tomsich wrote: >>>>

Re: [PATCH v4 00/24] ILP32 for ARM64

2015-04-15 Thread Dr. Philipp Tomsich
Catalin, even though this may now be moot, as we’ll out a 32bit time_t on ILP32 (making it very similar to n32 on MIPS), here’s the the info on what would be affected by changing timespec. Below is a (hopefully) full list of system calls, helper functions and exposed data structures (with

Re: [PATCH v4 00/24] ILP32 for ARM64

2015-04-15 Thread Dr. Philipp Tomsich
> On 15 Apr 2015, at 00:28, Arnd Bergmann wrote: > > On Tuesday 14 April 2015 16:00:34 Catalin Marinas wrote: >> On Tue, Apr 14, 2015 at 04:07:36PM +0200, Arnd Bergmann wrote: >>> For completeness, there is yet another option, which would be to use the >>> exact system call table from arm64 and

Re: [PATCH v4 00/24] ILP32 for ARM64

2015-04-15 Thread Dr. Philipp Tomsich
On 15 Apr 2015, at 17:38, Catalin Marinas catalin.mari...@arm.com wrote: On Wed, Apr 15, 2015 at 05:15:16PM +0200, Arnd Bergmann wrote: On Wednesday 15 April 2015 11:01:54 Catalin Marinas wrote: On Wed, Apr 15, 2015 at 11:18:06AM +0200, Dr. Philipp Tomsich wrote: We’ve run full systems

Re: [PATCH v4 00/24] ILP32 for ARM64

2015-04-15 Thread Dr. Philipp Tomsich
Catalin, even though this may now be moot, as we’ll out a 32bit time_t on ILP32 (making it very similar to n32 on MIPS), here’s the the info on what would be affected by changing timespec. Below is a (hopefully) full list of system calls, helper functions and exposed data structures (with

Re: [PATCH v4 00/24] ILP32 for ARM64

2015-04-15 Thread Dr. Philipp Tomsich
On 15 Apr 2015, at 00:28, Arnd Bergmann a...@arndb.de wrote: On Tuesday 14 April 2015 16:00:34 Catalin Marinas wrote: On Tue, Apr 14, 2015 at 04:07:36PM +0200, Arnd Bergmann wrote: For completeness, there is yet another option, which would be to use the exact system call table from arm64

Re: [PATCH v4 00/24] ILP32 for ARM64

2015-04-14 Thread Dr. Philipp Tomsich
> On 14 Apr 2015, at 16:47, Catalin Marinas wrote: > >> I mainly want to avoid accidentally creating new ABIs for syscalls and >> ioctls: >> we have many drivers that today use ioctls with data structures derived from >> '__kernel_ulong_t' in some form, often by including a timespec or time_t

Re: [PATCH v4 00/24] ILP32 for ARM64

2015-04-14 Thread Dr. Philipp Tomsich
> On 14 Apr 2015, at 13:14, Arnd Bergmann wrote: > > On Tuesday 14 April 2015 10:45:43 Pinski, Andrew wrote: >>> On Apr 14, 2015, at 3:08 AM, Arnd Bergmann wrote: >>> >>>> On Tuesday 14 April 2015 11:33:13 Dr. Philipp Tomsich wrote: >>>>

Re: [PATCH v4 00/24] ILP32 for ARM64

2015-04-14 Thread Dr. Philipp Tomsich
On 14 Apr 2015, at 13:14, Arnd Bergmann a...@arndb.de wrote: On Tuesday 14 April 2015 10:45:43 Pinski, Andrew wrote: On Apr 14, 2015, at 3:08 AM, Arnd Bergmann a...@arndb.de wrote: On Tuesday 14 April 2015 11:33:13 Dr. Philipp Tomsich wrote: Arnd, After getting a good night’s sleep

Re: [PATCH v4 00/24] ILP32 for ARM64

2015-04-14 Thread Dr. Philipp Tomsich
On 14 Apr 2015, at 16:47, Catalin Marinas catalin.mari...@arm.com wrote: I mainly want to avoid accidentally creating new ABIs for syscalls and ioctls: we have many drivers that today use ioctls with data structures derived from '__kernel_ulong_t' in some form, often by including a

Re: [PATCH v4 00/24] ILP32 for ARM64

2015-04-13 Thread Dr. Philipp Tomsich
Arnd, > 1. Adding a whole new ABI to the kernel is adding a long-term maintenance > burden, and we don't want to do that just because someone thinks it's a cute > hack or because it might add a few percent in performance of some low-level > benchmark. Please describe in the cover-letter for the

[PATCH v4 06/24] arm64:uapi: set __BITS_PER_LONG correctly for ILP32 and LP64

2015-04-13 Thread Philipp Tomsich
From: Andrew Pinski Define __BITS_PER_LONG depending on the ABI used (i.e. check whether __ILP32__ or __LP64__ is defined). This is necessary for glibc to determine the appropriate type definitions for the system call interface. Signed-off-by: Philipp Tomsich Signed-off-by: Christoph Muellner

[PATCH v4 01/24] arm64:ilp32: add documentation on the ILP32 ABI for ARM64

2015-04-13 Thread Philipp Tomsich
Based on Andrew Pinski's original patch-series and adapted with changes to reduce the duplication of code-paths and resolve issue found during LTP testing. Signed-off-by: Philipp Tomsich Signed-off-by: Christoph Muellner --- Documentation/arm64/ilp32.txt | 64

[PATCH v4 15/24] arm64:ilp32: support core dump generation for ILP32

2015-04-13 Thread Philipp Tomsich
From: Andrew Pinski This patch supports core dumping on ILP32. We need a few extra macros (COMPAT_PR_REG_SIZE and COMPAT_PRSTATUS_SIZE) due to size differences of the register sets. Signed-off-by: Philipp Tomsich Signed-off-by: Christoph Muellner --- arch/arm64/include/asm/elf.h | 22

[PATCH v4 17/24] arm64:ilp32: add vdso-ilp32 and use for signal return

2015-04-13 Thread Philipp Tomsich
Adjusted to move the move data page before code pages in sync with commit 601255ae3c98fd3a8bb4696425e4f868b4f1 Signed-off-by: Philipp Tomsich Signed-off-by: Christoph Muellner --- arch/arm64/include/asm/vdso.h | 4 ++ arch/arm64/kernel/Makefile| 5

[PATCH v4 13/24] arm64:ilp32: share HWCAP between LP64 and ILP32

2015-04-13 Thread Philipp Tomsich
From: Andrew Pinski Signed-off-by: Philipp Tomsich Signed-off-by: Christoph Muellner --- arch/arm64/include/asm/hwcap.h | 12 ++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/arch/arm64/include/asm/hwcap.h b/arch/arm64/include/asm/hwcap.h index 0ad7351..1e5361e

[PATCH v4 04/24] arm64: change some CONFIG_COMPAT over to use CONFIG_AARCH32_EL0 instead

2015-04-13 Thread Philipp Tomsich
From: Andrew Pinski Signed-off-by: Philipp Tomsich Signed-off-by: Christoph Muellner --- arch/arm64/include/asm/elf.h | 23 --- arch/arm64/include/asm/fpsimd.h | 2 +- arch/arm64/include/asm/ptrace.h | 2 +- arch/arm64/include/asm/signal32.h | 2 ++ arch/arm64

[PATCH v4 10/24] arm64: introduce is_a32_task and is_a32_thread (for AArch32 compat)

2015-04-13 Thread Philipp Tomsich
From: Andrew Pinski This patch introduces is_a32_compat_task and is_a32_thread so it is easier to say this is a a32 specific thread or a generic compat thread/task. Signed-off-by: Philipp Tomsich Signed-off-by: Christoph Muellner --- arch/arm64/include/asm/compat.h | 31

[PATCH v4 05/24] arm64:ilp32: expose 'kernel_long' as 'long long' for ILP32

2015-04-13 Thread Philipp Tomsich
as their ILP32 'long long' and 'unsigned long long' equivalents to allow glibc to correctly interpret most data-structures used in the kernel ABI (i.el with the exception of those, that include pointers). Signed-off-by: Philipp Tomsich Signed-off-by: Christoph Muellner --- arch/arm64/include/uapi/asm

[PATCH v4 22/24] arm64:ilp32: use compat for stack_t

2015-04-13 Thread Philipp Tomsich
avoid code duplication in the syscall table and can use the compat-functions to zero-extend the pointers involved. Signed-off-by: Philipp Tomsich Signed-off-by: Christoph Muellner --- arch/arm64/kernel/signal.c| 19 +++ arch/arm64/kernel/sys_ilp32.c | 44

[PATCH v4 08/24] arm64:ilp32: use 64bit syscall-names for ILP32 when passing 64bit registers

2015-04-13 Thread Philipp Tomsich
From: Andrew Pinski In the ARM64 ILP32 case, we want to say the syscalls that normally would pass 64bit as two arguments are now passing as one so want to use the 64bit naming scheme. Signed-off-by: Philipp Tomsich Signed-off-by: Christoph Muellner --- include/uapi/asm-generic/unistd.h | 5

[PATCH v4 02/24] arm64: ensure the kernel is compiled for LP64

2015-04-13 Thread Philipp Tomsich
From: Andrew Pinski The kernel needs to be compiled as a LP64 binary for ARM64, even when using a compiler that defaults to code-generation for the ILP32 ABI. Consequently, we need to explicitly pass '-mabi=lp64' (supported on gcc-4.9 and newer). Signed-off-by: Philipp Tomsich Signed-off

[PATCH v4 14/24] arm64:ilp32 use the native LP64 'start_thread' for ILP32 threads

2015-04-13 Thread Philipp Tomsich
From: Andrew Pinski If we have both ILP32 and AARCH32 compiled in, we need use the non compat start thread for ILP32. Signed-off-by: Philipp Tomsich Signed-off-by: Christoph Muellner --- arch/arm64/include/asm/processor.h | 9 + 1 file changed, 9 insertions(+) diff --git a/arch

[PATCH v4 11/24] arm64:ilp32: add is_ilp32_compat_{task,thread} and TIF_32BIT_AARCH64

2015-04-13 Thread Philipp Tomsich
From: Andrew Pinski Signed-off-by: Philipp Tomsich Signed-off-by: Christoph Muellner --- arch/arm64/include/asm/compat.h | 32 ++-- arch/arm64/include/asm/thread_info.h | 1 + 2 files changed, 31 insertions(+), 2 deletions(-) diff --git a/arch/arm64/include

[PATCH v4 21/24] arm64:ilp32: use the native siginfo instead of the compat siginfo

2015-04-13 Thread Philipp Tomsich
From: Andrew Pinski Set COMPAT_USE_NATIVE_SIGINFO to be true for non AARCH32 tasks. Signed-off-by: Philipp Tomsich Signed-off-by: Christoph Muellner --- arch/arm64/include/asm/compat.h | 3 +++ 1 file changed, 3 insertions(+) diff --git a/arch/arm64/include/asm/compat.h b/arch/arm64/include

[PATCH v4 07/24] arm64:ilp32: share signal structures between ILP32 and LP64 ABIs

2015-04-13 Thread Philipp Tomsich
From: Andrew Pinski Defines the macros which allow the signal structures to be the same between ILP32 and LP64. Signed-off-by: Philipp Tomsich Signed-off-by: Christoph Muellner --- arch/arm64/include/uapi/asm/siginfo.h | 21 + arch/arm64/include/uapi/asm/signal.h | 32

[PATCH v4 20/24] arm64:ilp32: use compat-syscalls for msgsnd and msgrcv for ILP32

2015-04-13 Thread Philipp Tomsich
msgsnd and msgrcv require the compat-layer, as they are defined to use data structures with a 'long' (32bit in ILP32, 64bit in LP64) element. Signed-off-by: Philipp Tomsich Signed-off-by: Christoph Muellner --- arch/arm64/kernel/sys_ilp32.c | 9 - 1 file changed, 8 insertions(+), 1

[PATCH v4 18/24] ptrace: Allow compat to use the native siginfo

2015-04-13 Thread Philipp Tomsich
in the compat case as it was the non-compat case. Signed-off-by: Christoph Muellner Signed-off-by: Philipp Tomsich --- include/linux/compat.h | 4 kernel/ptrace.c| 24 +--- 2 files changed, 21 insertions(+), 7 deletions(-) diff --git a/include/linux/compat.h b

[PATCH v4 00/24] ILP32 for ARM64

2015-04-13 Thread Philipp Tomsich
to Kconfig Philipp Tomsich (6): arm64:ilp32: add documentation on the ILP32 ABI for ARM64 arm64:ilp32: COMPAT_USE_64BIT_TIME is true for ILP32 tasks arm64:ilp32: add vdso-ilp32 and use for signal return arm64:ilp32: use compat-syscalls for msgsnd and msgrcv for ILP32 arm64:ilp32: use compat

[PATCH v4 12/24] arm64:ilp32: COMPAT_USE_64BIT_TIME is true for ILP32 tasks

2015-04-13 Thread Philipp Tomsich
due to AARCH32 requiring 4k pages). Stricly speaking, a 'long long' time_t is not standards-compliant (refer to https://sourceware.org/bugzilla/show_bug.cgi?id=16437 for details), but there is precedent (i.e. x32) for such an implementation both in the kernel and in glibc. Signed-off-by: Philipp

[PATCH v4 16/24] arm64: add support for starting ILP32 (ELFCLASS32) binaries

2015-04-13 Thread Philipp Tomsich
From: Andrew Pinski Handle ILP32 (AArch64, but ELFCLASS32) binaries on ARM64. Signed-off-by: Philipp Tomsich Signed-off-by: Christoph Muellner --- arch/arm64/include/asm/elf.h | 66 +--- 1 file changed, 56 insertions(+), 10 deletions(-) diff --git

[PATCH v4 09/24] arm64:ilp32: use non-compat syscall names for ILP32 as for LP64

2015-04-13 Thread Philipp Tomsich
From: Andrew Pinski Define __ARCH_WANT_64BIT_SYSCALLS for ILP32, so we (can) use the 64bit syscall names for ILP32. Signed-off-by: Philipp Tomsich Signed-off-by: Christoph Muellner --- arch/arm64/include/uapi/asm/unistd.h | 7 +++ 1 file changed, 7 insertions(+) diff --git a/arch/arm64

[PATCH v4 19/24] arm64:ilp32: add sys_ilp32.c and a separate table (in entry.S) to use it

2015-04-13 Thread Philipp Tomsich
-handler and simply relies on the flags having been read by the kernel_entry macro. Signed-off-by: Philipp Tomsich Signed-off-by: Christoph Muellner --- arch/arm64/include/asm/unistd.h | 4 + arch/arm64/kernel/Makefile | 1 + arch/arm64/kernel/entry.S | 12 ++- arch/arm64/kernel

[PATCH v4 23/24] arm64:ilp32: change COMPAT_ELF_PLATFORM to report a a subplatform for ILP32

2015-04-13 Thread Philipp Tomsich
To make life for tools (such as gdb) easier when dealing with ILP32 processes, we report a proper subarchitecture for ILP32 in the ELF auxiliary vectors. Signed-off-by: Philipp Tomsich Signed-off-by: Christoph Muellner --- arch/arm64/include/asm/elf.h | 4 ++-- 1 file changed, 2 insertions

[PATCH v4 03/24] arm64: rename COMPAT to AARCH32_EL0 in Kconfig

2015-04-13 Thread Philipp Tomsich
From: Andrew Pinski Signed-off-by: Philipp Tomsich Signed-off-by: Christoph Muellner --- arch/arm64/Kconfig | 8 ++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig index 1b8e9733..6211b3f 100644 --- a/arch/arm64/Kconfig +++ b/arch

[PATCH v4 24/24] arm64:ilp32: add ARM64_ILP32 to Kconfig

2015-04-13 Thread Philipp Tomsich
From: Andrew Pinski This patch adds the config option for ILP32. Signed-off-by: Philipp Tomsich Signed-off-by: Christoph Muellner --- arch/arm64/Kconfig | 9 - 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig index 6211b3f..0725a60

[PATCH v4 19/24] arm64:ilp32: add sys_ilp32.c and a separate table (in entry.S) to use it

2015-04-13 Thread Philipp Tomsich
in the el0_svc-handler and simply relies on the flags having been read by the kernel_entry macro. Signed-off-by: Philipp Tomsich philipp.toms...@theobroma-systems.com Signed-off-by: Christoph Muellner christoph.muell...@theobroma-systems.com --- arch/arm64/include/asm/unistd.h | 4 + arch/arm64

[PATCH v4 09/24] arm64:ilp32: use non-compat syscall names for ILP32 as for LP64

2015-04-13 Thread Philipp Tomsich
From: Andrew Pinski apin...@cavium.com Define __ARCH_WANT_64BIT_SYSCALLS for ILP32, so we (can) use the 64bit syscall names for ILP32. Signed-off-by: Philipp Tomsich philipp.toms...@theobroma-systems.com Signed-off-by: Christoph Muellner christoph.muell...@theobroma-systems.com --- arch/arm64

[PATCH v4 00/24] ILP32 for ARM64

2015-04-13 Thread Philipp Tomsich
to Kconfig Philipp Tomsich (6): arm64:ilp32: add documentation on the ILP32 ABI for ARM64 arm64:ilp32: COMPAT_USE_64BIT_TIME is true for ILP32 tasks arm64:ilp32: add vdso-ilp32 and use for signal return arm64:ilp32: use compat-syscalls for msgsnd and msgrcv for ILP32 arm64:ilp32: use compat

[PATCH v4 23/24] arm64:ilp32: change COMPAT_ELF_PLATFORM to report a a subplatform for ILP32

2015-04-13 Thread Philipp Tomsich
To make life for tools (such as gdb) easier when dealing with ILP32 processes, we report a proper subarchitecture for ILP32 in the ELF auxiliary vectors. Signed-off-by: Philipp Tomsich philipp.toms...@theobroma-systems.com Signed-off-by: Christoph Muellner christoph.muell...@theobroma-systems.com

[PATCH v4 16/24] arm64: add support for starting ILP32 (ELFCLASS32) binaries

2015-04-13 Thread Philipp Tomsich
From: Andrew Pinski apin...@cavium.com Handle ILP32 (AArch64, but ELFCLASS32) binaries on ARM64. Signed-off-by: Philipp Tomsich philipp.toms...@theobroma-systems.com Signed-off-by: Christoph Muellner christoph.muell...@theobroma-systems.com --- arch/arm64/include/asm/elf.h | 66

[PATCH v4 12/24] arm64:ilp32: COMPAT_USE_64BIT_TIME is true for ILP32 tasks

2015-04-13 Thread Philipp Tomsich
due to AARCH32 requiring 4k pages). Stricly speaking, a 'long long' time_t is not standards-compliant (refer to https://sourceware.org/bugzilla/show_bug.cgi?id=16437 for details), but there is precedent (i.e. x32) for such an implementation both in the kernel and in glibc. Signed-off-by: Philipp

[PATCH v4 03/24] arm64: rename COMPAT to AARCH32_EL0 in Kconfig

2015-04-13 Thread Philipp Tomsich
From: Andrew Pinski apin...@cavium.com Signed-off-by: Philipp Tomsich philipp.toms...@theobroma-systems.com Signed-off-by: Christoph Muellner christoph.muell...@theobroma-systems.com --- arch/arm64/Kconfig | 8 ++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/arch/arm64

[PATCH v4 24/24] arm64:ilp32: add ARM64_ILP32 to Kconfig

2015-04-13 Thread Philipp Tomsich
From: Andrew Pinski apin...@cavium.com This patch adds the config option for ILP32. Signed-off-by: Philipp Tomsich philipp.toms...@theobroma-systems.com Signed-off-by: Christoph Muellner christoph.muell...@theobroma-systems.com --- arch/arm64/Kconfig | 9 - 1 file changed, 8 insertions

[PATCH v4 18/24] ptrace: Allow compat to use the native siginfo

2015-04-13 Thread Philipp Tomsich
and if it is true then read/write in the compat case as it was the non-compat case. Signed-off-by: Christoph Muellner christoph.muell...@theobroma-systems.com Signed-off-by: Philipp Tomsich philipp.toms...@theobroma-systems.com --- include/linux/compat.h | 4 kernel/ptrace.c| 24

[PATCH v4 22/24] arm64:ilp32: use compat for stack_t

2015-04-13 Thread Philipp Tomsich
avoid code duplication in the syscall table and can use the compat-functions to zero-extend the pointers involved. Signed-off-by: Philipp Tomsich philipp.toms...@theobroma-systems.com Signed-off-by: Christoph Muellner christoph.muell...@theobroma-systems.com --- arch/arm64/kernel/signal.c| 19

[PATCH v4 05/24] arm64:ilp32: expose 'kernel_long' as 'long long' for ILP32

2015-04-13 Thread Philipp Tomsich
') are exposed as their ILP32 'long long' and 'unsigned long long' equivalents to allow glibc to correctly interpret most data-structures used in the kernel ABI (i.el with the exception of those, that include pointers). Signed-off-by: Philipp Tomsich philipp.toms...@theobroma-systems.com Signed-off

[PATCH v4 04/24] arm64: change some CONFIG_COMPAT over to use CONFIG_AARCH32_EL0 instead

2015-04-13 Thread Philipp Tomsich
From: Andrew Pinski apin...@cavium.com Signed-off-by: Philipp Tomsich philipp.toms...@theobroma-systems.com Signed-off-by: Christoph Muellner christoph.muell...@theobroma-systems.com --- arch/arm64/include/asm/elf.h | 23 --- arch/arm64/include/asm/fpsimd.h | 2

[PATCH v4 10/24] arm64: introduce is_a32_task and is_a32_thread (for AArch32 compat)

2015-04-13 Thread Philipp Tomsich
From: Andrew Pinski apin...@cavium.com This patch introduces is_a32_compat_task and is_a32_thread so it is easier to say this is a a32 specific thread or a generic compat thread/task. Signed-off-by: Philipp Tomsich philipp.toms...@theobroma-systems.com Signed-off-by: Christoph Muellner

[PATCH v4 13/24] arm64:ilp32: share HWCAP between LP64 and ILP32

2015-04-13 Thread Philipp Tomsich
From: Andrew Pinski apin...@cavium.com Signed-off-by: Philipp Tomsich philipp.toms...@theobroma-systems.com Signed-off-by: Christoph Muellner christoph.muell...@theobroma-systems.com --- arch/arm64/include/asm/hwcap.h | 12 ++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff

[PATCH v4 15/24] arm64:ilp32: support core dump generation for ILP32

2015-04-13 Thread Philipp Tomsich
From: Andrew Pinski apin...@cavium.com This patch supports core dumping on ILP32. We need a few extra macros (COMPAT_PR_REG_SIZE and COMPAT_PRSTATUS_SIZE) due to size differences of the register sets. Signed-off-by: Philipp Tomsich philipp.toms...@theobroma-systems.com Signed-off-by: Christoph

[PATCH v4 17/24] arm64:ilp32: add vdso-ilp32 and use for signal return

2015-04-13 Thread Philipp Tomsich
Adjusted to move the move data page before code pages in sync with commit 601255ae3c98fd3a8bb4696425e4f868b4f1 Signed-off-by: Philipp Tomsich philipp.toms...@theobroma-systems.com Signed-off-by: Christoph Muellner christoph.muell...@theobroma-systems.com --- arch/arm64/include/asm/vdso.h

[PATCH v4 06/24] arm64:uapi: set __BITS_PER_LONG correctly for ILP32 and LP64

2015-04-13 Thread Philipp Tomsich
From: Andrew Pinski apin...@cavium.com Define __BITS_PER_LONG depending on the ABI used (i.e. check whether __ILP32__ or __LP64__ is defined). This is necessary for glibc to determine the appropriate type definitions for the system call interface. Signed-off-by: Philipp Tomsich philipp.toms

[PATCH v4 01/24] arm64:ilp32: add documentation on the ILP32 ABI for ARM64

2015-04-13 Thread Philipp Tomsich
Based on Andrew Pinski's original patch-series and adapted with changes to reduce the duplication of code-paths and resolve issue found during LTP testing. Signed-off-by: Philipp Tomsich philipp.toms...@theobroma-systems.com Signed-off-by: Christoph Muellner christoph.muell...@theobroma

[PATCH v4 21/24] arm64:ilp32: use the native siginfo instead of the compat siginfo

2015-04-13 Thread Philipp Tomsich
From: Andrew Pinski apin...@cavium.com Set COMPAT_USE_NATIVE_SIGINFO to be true for non AARCH32 tasks. Signed-off-by: Philipp Tomsich philipp.toms...@theobroma-systems.com Signed-off-by: Christoph Muellner christoph.muell...@theobroma-systems.com --- arch/arm64/include/asm/compat.h | 3 +++ 1

[PATCH v4 07/24] arm64:ilp32: share signal structures between ILP32 and LP64 ABIs

2015-04-13 Thread Philipp Tomsich
From: Andrew Pinski apin...@cavium.com Defines the macros which allow the signal structures to be the same between ILP32 and LP64. Signed-off-by: Philipp Tomsich philipp.toms...@theobroma-systems.com Signed-off-by: Christoph Muellner christoph.muell...@theobroma-systems.com --- arch/arm64

[PATCH v4 20/24] arm64:ilp32: use compat-syscalls for msgsnd and msgrcv for ILP32

2015-04-13 Thread Philipp Tomsich
msgsnd and msgrcv require the compat-layer, as they are defined to use data structures with a 'long' (32bit in ILP32, 64bit in LP64) element. Signed-off-by: Philipp Tomsich philipp.toms...@theobroma-systems.com Signed-off-by: Christoph Muellner christoph.muell...@theobroma-systems.com --- arch

[PATCH v4 02/24] arm64: ensure the kernel is compiled for LP64

2015-04-13 Thread Philipp Tomsich
From: Andrew Pinski apin...@cavium.com The kernel needs to be compiled as a LP64 binary for ARM64, even when using a compiler that defaults to code-generation for the ILP32 ABI. Consequently, we need to explicitly pass '-mabi=lp64' (supported on gcc-4.9 and newer). Signed-off-by: Philipp Tomsich

[PATCH v4 14/24] arm64:ilp32 use the native LP64 'start_thread' for ILP32 threads

2015-04-13 Thread Philipp Tomsich
From: Andrew Pinski apin...@cavium.com If we have both ILP32 and AARCH32 compiled in, we need use the non compat start thread for ILP32. Signed-off-by: Philipp Tomsich philipp.toms...@theobroma-systems.com Signed-off-by: Christoph Muellner christoph.muell...@theobroma-systems.com --- arch/arm64

[PATCH v4 11/24] arm64:ilp32: add is_ilp32_compat_{task,thread} and TIF_32BIT_AARCH64

2015-04-13 Thread Philipp Tomsich
From: Andrew Pinski apin...@cavium.com Signed-off-by: Philipp Tomsich philipp.toms...@theobroma-systems.com Signed-off-by: Christoph Muellner christoph.muell...@theobroma-systems.com --- arch/arm64/include/asm/compat.h | 32 ++-- arch/arm64/include/asm

[PATCH v4 08/24] arm64:ilp32: use 64bit syscall-names for ILP32 when passing 64bit registers

2015-04-13 Thread Philipp Tomsich
From: Andrew Pinski apin...@cavium.com In the ARM64 ILP32 case, we want to say the syscalls that normally would pass 64bit as two arguments are now passing as one so want to use the 64bit naming scheme. Signed-off-by: Philipp Tomsich philipp.toms...@theobroma-systems.com Signed-off-by: Christoph

Re: [PATCH v4 00/24] ILP32 for ARM64

2015-04-13 Thread Dr. Philipp Tomsich
Arnd, 1. Adding a whole new ABI to the kernel is adding a long-term maintenance burden, and we don't want to do that just because someone thinks it's a cute hack or because it might add a few percent in performance of some low-level benchmark. Please describe in the cover-letter for the patch

Re: [PATCH 15/24] ARM64:ILP32: Use the non compat HWCAP for ILP32.

2014-07-01 Thread Dr. Philipp Tomsich
On 24 May 2014, at 09:02 , Andrew Pinski wrote: > #ifdef CONFIG_COMPAT > -#define COMPAT_ELF_HWCAP (compat_elf_hwcap) > -#define COMPAT_ELF_HWCAP2(compat_elf_hwcap2) > extern unsigned int compat_elf_hwcap, compat_elf_hwcap2; > +#define COMPAT_ELF_HWCAP \ > + (is_a32_compat_task()

Re: [PATCH 15/24] ARM64:ILP32: Use the non compat HWCAP for ILP32.

2014-07-01 Thread Dr. Philipp Tomsich
On 24 May 2014, at 09:02 , Andrew Pinski apin...@cavium.com wrote: #ifdef CONFIG_COMPAT -#define COMPAT_ELF_HWCAP (compat_elf_hwcap) -#define COMPAT_ELF_HWCAP2(compat_elf_hwcap2) extern unsigned int compat_elf_hwcap, compat_elf_hwcap2; +#define COMPAT_ELF_HWCAP \ +