* [PULL REQUEST] big-endian updates for ARM
@ 2013-09-02 11:24 Ben Dooks
2013-09-02 11:27 ` Thomas Petazzoni
2013-09-02 11:51 ` Thomas Petazzoni
0 siblings, 2 replies; 11+ messages in thread
From: Ben Dooks @ 2013-09-02 11:24 UTC (permalink / raw)
To: linux-arm-kernel
With the last ack added, the following series is ready to be pulled.
The following changes since commit fa8218def1b1a16f0a410e2c1c767b4738cc81fa:
Merge tag 'regmap-v3.11-rc7' of
git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap (2013-08-27
10:10:30 -0700)
are available in the git repository at:
git://git.baserock.org/delta/linux.git baserock/311-rc7/be/core-v3
for you to fetch changes up to 5217543fe4605fa91065acf5141d88949cd3da1e:
ARM: signal: sigreturn_codes should be endian neutral to work in BE8
(2013-09-02 11:53:53 +0100)
----------------------------------------------------------------
Ben Dooks (19):
ARM: fix ARCH_IXP4xx usage of ARCH_SUPPORTS_BIG_ENDIAN
ARM: asm: Add ARM_BE8() assembly helper
ARM: fixup_pv_table bug when CPU_ENDIAN_BE8
ARM: set BE8 if LE in head code
ARM: pl01x debug code endian fix
ARM: twd: data endian fix
ARM: smp_scu: data endian fixes
highbank: enable big-endian
fix highbank
mvebu: support running big-endian
vexpress: add big endian support
ARM: alignment: correctly decode instructions in BE8 mode.
ARM: traps: use <asm/opcodes.h> to get correct instruction order
ARM: module: correctly relocate instructions in BE8
ARM: set --be8 when linking modules
ARM: hardware: fix endian-ness in <hardware/coresight.h>
ARM: net: fix arm instruction endian-ness in bpf_jit_32.c
ARM: Correct BUG() assembly to ensure it is endian-agnostic
ARM: kdgb: use <asm/opcodes.h> for data to be assembled as intruction
Victor Kamensky (2):
ARM: atomic64: fix endian-ness in atomic.h
ARM: signal: sigreturn_codes should be endian neutral to work in BE8
arch/arm/Kconfig | 1 +
arch/arm/Makefile | 1 +
arch/arm/boot/compressed/head.S | 9 ++--
arch/arm/include/asm/assembler.h | 7 +++
arch/arm/include/asm/atomic.h | 26 +++++------
arch/arm/include/asm/bug.h | 10 +++--
arch/arm/include/asm/hardware/coresight.h | 8 ++--
arch/arm/include/asm/hardware/debug-pl01x.S | 2 +
arch/arm/include/asm/kgdb.h | 3 +-
arch/arm/kernel/Makefile | 3 +-
arch/arm/kernel/entry-armv.S | 5 +--
arch/arm/kernel/entry-common.S | 4 +-
arch/arm/kernel/head.S | 12 +++++
arch/arm/kernel/module.c | 57 ++++++++++++++----------
arch/arm/kernel/signal.c | 24 +---------
arch/arm/kernel/sigreturn_codes.S | 69
+++++++++++++++++++++++++++++
arch/arm/kernel/sleep.S | 1 +
arch/arm/kernel/smp_scu.c | 14 +++---
arch/arm/kernel/smp_twd.c | 24 +++++-----
arch/arm/kernel/traps.c | 24 ++++++----
arch/arm/mach-highbank/Kconfig | 1 +
arch/arm/mach-ixp4xx/Kconfig | 4 --
arch/arm/mach-mvebu/Kconfig | 1 +
arch/arm/mach-mvebu/coherency_ll.S | 3 ++
arch/arm/mach-mvebu/headsmp.S | 4 ++
arch/arm/mach-vexpress/Kconfig | 1 +
arch/arm/mm/Kconfig | 6 +++
arch/arm/mm/abort-ev6.S | 5 +--
arch/arm/mm/alignment.c | 9 +++-
arch/arm/mm/proc-v6.S | 4 +-
arch/arm/mm/proc-v7.S | 4 +-
arch/arm/net/bpf_jit_32.c | 6 ++-
arch/arm/plat-versatile/headsmp.S | 2 +
33 files changed, 229 insertions(+), 125 deletions(-)
create mode 100644 arch/arm/kernel/sigreturn_codes.S
--
Ben Dooks http://www.codethink.co.uk/
Senior Engineer Codethink - Providing Genius
^ permalink raw reply [flat|nested] 11+ messages in thread* [PULL REQUEST] big-endian updates for ARM
2013-09-02 11:24 [PULL REQUEST] big-endian updates for ARM Ben Dooks
@ 2013-09-02 11:27 ` Thomas Petazzoni
2013-09-02 11:32 ` Ben Dooks
2013-09-02 11:51 ` Thomas Petazzoni
1 sibling, 1 reply; 11+ messages in thread
From: Thomas Petazzoni @ 2013-09-02 11:27 UTC (permalink / raw)
To: linux-arm-kernel
Dear Ben Dooks,
On Mon, 02 Sep 2013 12:24:23 +0100, Ben Dooks wrote:
> Ben Dooks (19):
> ARM: fix ARCH_IXP4xx usage of ARCH_SUPPORTS_BIG_ENDIAN
> ARM: asm: Add ARM_BE8() assembly helper
> ARM: fixup_pv_table bug when CPU_ENDIAN_BE8
> ARM: set BE8 if LE in head code
> ARM: pl01x debug code endian fix
> ARM: twd: data endian fix
> ARM: smp_scu: data endian fixes
> highbank: enable big-endian
> fix highbank
Seems like you forgot to rebase your branch to squash this commit in
the previous one.
> mvebu: support running big-endian
> vexpress: add big endian support
> ARM: alignment: correctly decode instructions in BE8 mode.
> ARM: traps: use <asm/opcodes.h> to get correct instruction order
> ARM: module: correctly relocate instructions in BE8
> ARM: set --be8 when linking modules
> ARM: hardware: fix endian-ness in <hardware/coresight.h>
> ARM: net: fix arm instruction endian-ness in bpf_jit_32.c
> ARM: Correct BUG() assembly to ensure it is endian-agnostic
> ARM: kdgb: use <asm/opcodes.h> for data to be assembled as intruction
>
> Victor Kamensky (2):
> ARM: atomic64: fix endian-ness in atomic.h
> ARM: signal: sigreturn_codes should be endian neutral to work in BE8
Thomas
--
Thomas Petazzoni, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com
^ permalink raw reply [flat|nested] 11+ messages in thread
* [PULL REQUEST] big-endian updates for ARM
2013-09-02 11:27 ` Thomas Petazzoni
@ 2013-09-02 11:32 ` Ben Dooks
0 siblings, 0 replies; 11+ messages in thread
From: Ben Dooks @ 2013-09-02 11:32 UTC (permalink / raw)
To: linux-arm-kernel
On 02/09/13 12:27, Thomas Petazzoni wrote:
> Dear Ben Dooks,
>
> On Mon, 02 Sep 2013 12:24:23 +0100, Ben Dooks wrote:
>
>> Ben Dooks (19):
>> ARM: fix ARCH_IXP4xx usage of ARCH_SUPPORTS_BIG_ENDIAN
>> ARM: asm: Add ARM_BE8() assembly helper
>> ARM: fixup_pv_table bug when CPU_ENDIAN_BE8
>> ARM: set BE8 if LE in head code
>> ARM: pl01x debug code endian fix
>> ARM: twd: data endian fix
>> ARM: smp_scu: data endian fixes
>> highbank: enable big-endian
>> fix highbank
>
> Seems like you forgot to rebase your branch to squash this commit in
> the previous one.
thanks, sorted and pushed out.
>> mvebu: support running big-endian
>> vexpress: add big endian support
>> ARM: alignment: correctly decode instructions in BE8 mode.
>> ARM: traps: use<asm/opcodes.h> to get correct instruction order
>> ARM: module: correctly relocate instructions in BE8
>> ARM: set --be8 when linking modules
>> ARM: hardware: fix endian-ness in<hardware/coresight.h>
>> ARM: net: fix arm instruction endian-ness in bpf_jit_32.c
>> ARM: Correct BUG() assembly to ensure it is endian-agnostic
>> ARM: kdgb: use<asm/opcodes.h> for data to be assembled as intruction
>>
>> Victor Kamensky (2):
>> ARM: atomic64: fix endian-ness in atomic.h
>> ARM: signal: sigreturn_codes should be endian neutral to work in BE8
>
> Thomas
--
Ben Dooks http://www.codethink.co.uk/
Senior Engineer Codethink - Providing Genius
^ permalink raw reply [flat|nested] 11+ messages in thread
* [PULL REQUEST] big-endian updates for ARM
2013-09-02 11:24 [PULL REQUEST] big-endian updates for ARM Ben Dooks
2013-09-02 11:27 ` Thomas Petazzoni
@ 2013-09-02 11:51 ` Thomas Petazzoni
2013-09-02 17:22 ` Jason Cooper
1 sibling, 1 reply; 11+ messages in thread
From: Thomas Petazzoni @ 2013-09-02 11:51 UTC (permalink / raw)
To: linux-arm-kernel
Dear Ben Dooks,
On Mon, 02 Sep 2013 12:24:23 +0100, Ben Dooks wrote:
> With the last ack added, the following series is ready to be pulled.
>
> The following changes since commit fa8218def1b1a16f0a410e2c1c767b4738cc81fa:
>
> Merge tag 'regmap-v3.11-rc7' of
> git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap (2013-08-27
> 10:10:30 -0700)
>
> are available in the git repository at:
>
>
> git://git.baserock.org/delta/linux.git baserock/311-rc7/be/core-v3
>
> for you to fetch changes up to 5217543fe4605fa91065acf5141d88949cd3da1e:
>
> ARM: signal: sigreturn_codes should be endian neutral to work in BE8
> (2013-09-02 11:53:53 +0100)
Successfully boot tested in LE and BE modes on Armada XP hardware:
Tested-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Jason, Greg or Andrew, can you give your formal Acked-by as mach-mvebu
maintainers for "mvebu: support running big-endian" in this series?
Thanks,
Thomas
--
Thomas Petazzoni, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com
^ permalink raw reply [flat|nested] 11+ messages in thread
* [PULL REQUEST] big-endian updates for ARM
2013-09-02 11:51 ` Thomas Petazzoni
@ 2013-09-02 17:22 ` Jason Cooper
0 siblings, 0 replies; 11+ messages in thread
From: Jason Cooper @ 2013-09-02 17:22 UTC (permalink / raw)
To: linux-arm-kernel
On Mon, Sep 02, 2013 at 01:51:26PM +0200, Thomas Petazzoni wrote:
> Dear Ben Dooks,
>
> On Mon, 02 Sep 2013 12:24:23 +0100, Ben Dooks wrote:
> > With the last ack added, the following series is ready to be pulled.
> >
> > The following changes since commit fa8218def1b1a16f0a410e2c1c767b4738cc81fa:
> >
> > Merge tag 'regmap-v3.11-rc7' of
> > git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap (2013-08-27
> > 10:10:30 -0700)
> >
> > are available in the git repository at:
> >
> >
> > git://git.baserock.org/delta/linux.git baserock/311-rc7/be/core-v3
> >
> > for you to fetch changes up to 5217543fe4605fa91065acf5141d88949cd3da1e:
> >
> > ARM: signal: sigreturn_codes should be endian neutral to work in BE8
> > (2013-09-02 11:53:53 +0100)
>
> Successfully boot tested in LE and BE modes on Armada XP hardware:
>
> Tested-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
>
> Jason, Greg or Andrew, can you give your formal Acked-by as mach-mvebu
> maintainers for "mvebu: support running big-endian" in this series?
No problem.
Acked-by: Jason Cooper <jason@lakedaemon.net>
thx,
Jason.
^ permalink raw reply [flat|nested] 11+ messages in thread
[parent not found: <20130903101332.GA26613@localhost.localdomain>]
* [PULL REQUEST] big-endian updates for ARM
[not found] <20130903101332.GA26613@localhost.localdomain>
@ 2013-09-03 11:25 ` Ben Dooks
2013-09-03 11:45 ` Thomas Petazzoni
0 siblings, 1 reply; 11+ messages in thread
From: Ben Dooks @ 2013-09-03 11:25 UTC (permalink / raw)
To: linux-arm-kernel
On 03/09/13 11:13, Dave Martin wrote:
> On Mon, Sep 02, 2013 at 12:24:23PM +0100, Ben Dooks wrote:
>> With the last ack added, the following series is ready to be pulled.
>>
>> The following changes since commit fa8218def1b1a16f0a410e2c1c767b4738cc81fa:
>>
>> Merge tag 'regmap-v3.11-rc7' of
>> git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap
>> (2013-08-27 10:10:30 -0700)
>>
>> are available in the git repository at:
>>
>>
>> git://git.baserock.org/delta/linux.git baserock/311-rc7/be/core-v3
>>
>> for you to fetch changes up to 5217543fe4605fa91065acf5141d88949cd3da1e:
>>
>> ARM: signal: sigreturn_codes should be endian neutral to work in BE8
>> (2013-09-02 11:53:53 +0100)
>>
>> ----------------------------------------------------------------
>> Ben Dooks (19):
>> ARM: fix ARCH_IXP4xx usage of ARCH_SUPPORTS_BIG_ENDIAN
>> ARM: asm: Add ARM_BE8() assembly helper
>> ARM: fixup_pv_table bug when CPU_ENDIAN_BE8
>> ARM: set BE8 if LE in head code
>> ARM: pl01x debug code endian fix
>> ARM: twd: data endian fix
>> ARM: smp_scu: data endian fixes
>> highbank: enable big-endian
>> fix highbank
>> mvebu: support running big-endian
>> vexpress: add big endian support
>> ARM: alignment: correctly decode instructions in BE8 mode.
>> ARM: traps: use<asm/opcodes.h> to get correct instruction order
>
> As I repoerted in [1], this is patch broken for CONFIG_THUMB2_KERNEL due
> to a typo:
>
> arch/arm/kernel/traps.c: In function 'do_undefinstr':
> arch/arm/kernel/traps.c:411:5: error: 'instr2' undeclared (first use in this function)
> instr2 = __mem_to_opcode_thumb16(((u16 *)pc)[1]);
> ^
> arch/arm/kernel/traps.c:411:5: note: each undeclared identifier is reported only once for each function it appears in
> arch/arm/kernel/traps.c:410:9: warning: unused variable 'inst2' [-Wunused-variable]
> u16 inst2;
> ^
> make[1]: *** [arch/arm/kernel/traps.o] Error 1
>
>
> The following should be enough to fix it:
>
> diff --git a/arch/arm/kernel/traps.c b/arch/arm/kernel/traps.c
> index da070db..d3806aa 100644
> --- a/arch/arm/kernel/traps.c
> +++ b/arch/arm/kernel/traps.c
> @@ -407,7 +407,7 @@ asmlinkage void __exception do_undefinstr(struct pt_regs *regs)
> if (thumb_mode(regs)) {
> instr = __mem_to_opcode_thumb16(((u16 *)pc)[0]);
> if (is_wide_instruction(instr)) {
> - u16 inst2;
> + u16 instr2;
> instr2 = __mem_to_opcode_thumb16(((u16 *)pc)[1]);
> instr = __opcode_thumb32_compose(instr, instr2);
> }
Sorry, I thought that had been fixed, thanks for reminding me.
I have fixed it and now on:
git://git.baserock.org/delta/linux baserock/311-rc7/be/core-v4
--
Ben Dooks http://www.codethink.co.uk/
Senior Engineer Codethink - Providing Genius
^ permalink raw reply [flat|nested] 11+ messages in thread* [PULL REQUEST] big-endian updates for ARM
2013-09-03 11:25 ` Ben Dooks
@ 2013-09-03 11:45 ` Thomas Petazzoni
2013-09-03 12:51 ` Ben Dooks
0 siblings, 1 reply; 11+ messages in thread
From: Thomas Petazzoni @ 2013-09-03 11:45 UTC (permalink / raw)
To: linux-arm-kernel
Dear Ben Dooks,
On Tue, 03 Sep 2013 12:25:08 +0100, Ben Dooks wrote:
> Sorry, I thought that had been fixed, thanks for reminding me.
>
> I have fixed it and now on:
>
> git://git.baserock.org/delta/linux baserock/311-rc7/be/core-v4
Can you resend a proper pull request for this core-v4 branch? There has
been two fixes since the v3, the Acked-by from one of the mach-mvebu
maintainers, and my Tested-by.
Also, as indicated on IRC, I confirm that this patch set also works on
Armada 370. It doesn't work on one particular Armada 370 board that I
have, but it's using an old bootloader that may be the cause of the
issue. The BE kernel works fine on the two other Armada 370 boards I've
tested.
Thanks!
Thomas
--
Thomas Petazzoni, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com
^ permalink raw reply [flat|nested] 11+ messages in thread
* [PULL REQUEST] big-endian updates for ARM
2013-09-03 11:45 ` Thomas Petazzoni
@ 2013-09-03 12:51 ` Ben Dooks
2013-09-03 12:55 ` Thomas Petazzoni
0 siblings, 1 reply; 11+ messages in thread
From: Ben Dooks @ 2013-09-03 12:51 UTC (permalink / raw)
To: linux-arm-kernel
On 03/09/13 12:45, Thomas Petazzoni wrote:
> Dear Ben Dooks,
>
> On Tue, 03 Sep 2013 12:25:08 +0100, Ben Dooks wrote:
>
>> Sorry, I thought that had been fixed, thanks for reminding me.
>>
>> I have fixed it and now on:
>>
>> git://git.baserock.org/delta/linux baserock/311-rc7/be/core-v4
>
> Can you resend a proper pull request for this core-v4 branch? There has
> been two fixes since the v3, the Acked-by from one of the mach-mvebu
> maintainers, and my Tested-by.
that was just a confirmation for Dave to test. I will sort out a new
pull request later.
> Also, as indicated on IRC, I confirm that this patch set also works on
> Armada 370. It doesn't work on one particular Armada 370 board that I
> have, but it's using an old bootloader that may be the cause of the
> issue. The BE kernel works fine on the two other Armada 370 boards I've
> tested.
>
> Thanks!
>
> Thomas
--
Ben Dooks http://www.codethink.co.uk/
Senior Engineer Codethink - Providing Genius
^ permalink raw reply [flat|nested] 11+ messages in thread
* [PULL REQUEST] big-endian updates for ARM
2013-09-03 12:51 ` Ben Dooks
@ 2013-09-03 12:55 ` Thomas Petazzoni
2013-09-03 15:21 ` Ben Dooks
0 siblings, 1 reply; 11+ messages in thread
From: Thomas Petazzoni @ 2013-09-03 12:55 UTC (permalink / raw)
To: linux-arm-kernel
Dear Ben Dooks,
On Tue, 03 Sep 2013 13:51:40 +0100, Ben Dooks wrote:
> >> I have fixed it and now on:
> >>
> >> git://git.baserock.org/delta/linux baserock/311-rc7/be/core-v4
> >
> > Can you resend a proper pull request for this core-v4 branch? There has
> > been two fixes since the v3, the Acked-by from one of the mach-mvebu
> > maintainers, and my Tested-by.
>
> that was just a confirmation for Dave to test. I will sort out a new
> pull request later.
Excellent, thanks!
Thomas
--
Thomas Petazzoni, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com
^ permalink raw reply [flat|nested] 11+ messages in thread
* [PULL REQUEST] big-endian updates for ARM
2013-09-03 12:55 ` Thomas Petazzoni
@ 2013-09-03 15:21 ` Ben Dooks
2013-09-03 15:29 ` Thomas Petazzoni
0 siblings, 1 reply; 11+ messages in thread
From: Ben Dooks @ 2013-09-03 15:21 UTC (permalink / raw)
To: linux-arm-kernel
On 03/09/13 13:55, Thomas Petazzoni wrote:
> Dear Ben Dooks,
>
> On Tue, 03 Sep 2013 13:51:40 +0100, Ben Dooks wrote:
>
>>>> I have fixed it and now on:
>>>>
>>>> git://git.baserock.org/delta/linux baserock/311-rc7/be/core-v4
>>>
>>> Can you resend a proper pull request for this core-v4 branch? There has
>>> been two fixes since the v3, the Acked-by from one of the mach-mvebu
>>> maintainers, and my Tested-by.
>>
>> that was just a confirmation for Dave to test. I will sort out a new
>> pull request later.
>
> Excellent, thanks!
>
> Thomas
Out of interest, should all patches in the series have the
Tested-by line added to them, or just the top-level pull request?
--
Ben Dooks http://www.codethink.co.uk/
Senior Engineer Codethink - Providing Genius
^ permalink raw reply [flat|nested] 11+ messages in thread
* [PULL REQUEST] big-endian updates for ARM
2013-09-03 15:21 ` Ben Dooks
@ 2013-09-03 15:29 ` Thomas Petazzoni
0 siblings, 0 replies; 11+ messages in thread
From: Thomas Petazzoni @ 2013-09-03 15:29 UTC (permalink / raw)
To: linux-arm-kernel
Dear Ben Dooks,
On Tue, 03 Sep 2013 16:21:10 +0100, Ben Dooks wrote:
> Out of interest, should all patches in the series have the
> Tested-by line added to them, or just the top-level pull request?
I believe the Tested-by normall goes to the individual patches.
However, my testing on Armada XP obviously didn't exercise all the
patches (I haven't tested modules, I haven't used the bpf_jit thing, I
haven't tested the twd, smp_scu and pl01x fixes, etc.).
Thanks,
Thomas
--
Thomas Petazzoni, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com
^ permalink raw reply [flat|nested] 11+ messages in thread
end of thread, other threads:[~2013-09-03 15:29 UTC | newest]
Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-09-02 11:24 [PULL REQUEST] big-endian updates for ARM Ben Dooks
2013-09-02 11:27 ` Thomas Petazzoni
2013-09-02 11:32 ` Ben Dooks
2013-09-02 11:51 ` Thomas Petazzoni
2013-09-02 17:22 ` Jason Cooper
[not found] <20130903101332.GA26613@localhost.localdomain>
2013-09-03 11:25 ` Ben Dooks
2013-09-03 11:45 ` Thomas Petazzoni
2013-09-03 12:51 ` Ben Dooks
2013-09-03 12:55 ` Thomas Petazzoni
2013-09-03 15:21 ` Ben Dooks
2013-09-03 15:29 ` Thomas Petazzoni
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).