linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [GIT 0/5] Renesas ARM based SoC fixes for v3.12
@ 2013-07-22  7:36 Simon Horman
  2013-07-22  7:36 ` [PATCH 1/5] ARM: shmobile: Update romImage to relocate appended DTB Simon Horman
                   ` (5 more replies)
  0 siblings, 6 replies; 7+ messages in thread
From: Simon Horman @ 2013-07-22  7:36 UTC (permalink / raw)
  To: linux-arm-kernel

Hi Olof, Hi Arnd,
										please consider the following fixes v3.12.

The following changes since commit ad81f0545ef01ea651886dddac4bef6cec930092:

  Linux 3.11-rc1 (2013-07-14 15:18:27 -0700)

are available in the git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas.git tags/renesas-fixes-for-v3.12

for you to fetch changes up to 93d8a6fbe69a629a7bb37bb546699a5c49963dc5:

  ARM: shmobile: r8a7740: Fix TPU clock name (2013-07-19 11:12:35 +0900)

----------------------------------------------------------------
Renesas ARM based SoC fixes for v3.12

* Fix TPU clock name for r8a7740 SoC
* Update romImage to relocate appended DTB
* Thumb fixes

----------------------------------------------------------------
Laurent Pinchart (1):
      ARM: shmobile: r8a7740: Fix TPU clock name

Magnus Damm (1):
      ARM: shmobile: Update romImage to relocate appended DTB

Tetsuyuki Kobayashi (3):
      ARM: shmobile: fix compile error when CONFIG_THUMB2_KERNEL=y
      ARM: shmobile: Force ARM mode to compile reset vector for secondary CPUs
      ARM: shmobile: Insert align directives before 4 bytes data

 arch/arm/boot/compressed/head-shmobile.S    | 43 ++++++++++++++++++++++++++---
 arch/arm/mach-shmobile/clock-r8a7740.c      |  2 +-
 arch/arm/mach-shmobile/headsmp-scu.S        |  4 ++-
 arch/arm/mach-shmobile/headsmp.S            |  6 +++-
 arch/arm/mach-shmobile/include/mach/zboot.h |  2 --
 arch/arm/mach-shmobile/sleep-sh7372.S       |  2 ++
 6 files changed, 50 insertions(+), 9 deletions(-)

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [PATCH 1/5] ARM: shmobile: Update romImage to relocate appended DTB
  2013-07-22  7:36 [GIT 0/5] Renesas ARM based SoC fixes for v3.12 Simon Horman
@ 2013-07-22  7:36 ` Simon Horman
  2013-07-22  7:36 ` [PATCH 2/5] ARM: shmobile: fix compile error when CONFIG_THUMB2_KERNEL=y Simon Horman
                   ` (4 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: Simon Horman @ 2013-07-22  7:36 UTC (permalink / raw)
  To: linux-arm-kernel

From: Magnus Damm <damm@opensource.se>

Instead of relying of MACH_TYPE for board identification,
update the romImage code to relocate an appended DTB to
the beginning of RAM. This implementation is independent
of ARM_APPENDED_DTB, this because it is necessary to copy
the DTB to memory so the kernel can access it.

Without this patch Mackerel does not boot via the Mask ROM
over USB (r_usb_boot) - this since non-DT boot was broken
ages ago in commit:

0ce53cd ARM: mach-shmobile: Use DT_MACHINE for mackerel

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
---
 arch/arm/boot/compressed/head-shmobile.S    | 43 ++++++++++++++++++++++++++---
 arch/arm/mach-shmobile/include/mach/zboot.h |  2 --
 2 files changed, 39 insertions(+), 6 deletions(-)

diff --git a/arch/arm/boot/compressed/head-shmobile.S b/arch/arm/boot/compressed/head-shmobile.S
index e2d6363..e7f8092 100644
--- a/arch/arm/boot/compressed/head-shmobile.S
+++ b/arch/arm/boot/compressed/head-shmobile.S
@@ -55,12 +55,47 @@ __tmp_stack:
 __continue:
 #endif /* CONFIG_ZBOOT_ROM_MMC || CONFIG_ZBOOT_ROM_SH_MOBILE_SDHI */
 
-	/* Set board ID necessary for boot */
-	ldr	r7, 1f				@ Set machine type register
-	mov	r8, #0				@ pass null pointer as atag
+	adr	r0, dtb_info
+	ldmia	r0, {r1, r3, r4, r5, r7}
+
+	sub	r0, r0, r1		@ calculate the delta offset
+	add	r5, r5, r0		@ _edata
+
+	ldr	lr, [r5, #0]		@ check if valid DTB is present
+	cmp	lr, r3
+	bne	0f
+
+	add	r9, r7, #31		@ rounded up to a multiple
+	bic	r9, r9, #31		@ ... of 32 bytes
+
+	add	r6, r9, r5		@ copy from _edata
+	add	r9, r9, r4		@ to MEMORY_START
+
+1:	ldmdb	r6!, {r0 - r3, r10 - r12, lr}
+	cmp	r6, r5
+	stmdb	r9!, {r0 - r3, r10 - r12, lr}
+	bhi	1b
+
+	/* Success: Zero board ID, pointer to start of memory for atag/dtb */
+	mov	r7, #0
+	mov	r8, r4
 	b	2f
 
-1 :	.long MACH_TYPE
+	.align	2
+dtb_info:
+	.word	dtb_info
+#ifndef __ARMEB__
+	.word	0xedfe0dd0		@ sig is 0xd00dfeed big endian
+#else
+	.word	0xd00dfeed
+#endif
+	.word	MEMORY_START
+	.word	_edata
+	.word	0x4000			@ maximum DTB size
+0:
+	/* Failure: Zero board ID, NULL atag/dtb */
+	mov 	r7, #0
+	mov	r8, #0			@ pass null pointer as atag
 2 :
 
 #endif /* CONFIG_ZBOOT_ROM */
diff --git a/arch/arm/mach-shmobile/include/mach/zboot.h b/arch/arm/mach-shmobile/include/mach/zboot.h
index f2d8744..c3c4669 100644
--- a/arch/arm/mach-shmobile/include/mach/zboot.h
+++ b/arch/arm/mach-shmobile/include/mach/zboot.h
@@ -1,7 +1,6 @@
 #ifndef ZBOOT_H
 #define ZBOOT_H
 
-#include <asm/mach-types.h>
 #include <mach/zboot_macros.h>
 
 /**************************************************
@@ -11,7 +10,6 @@
  **************************************************/
 
 #ifdef CONFIG_MACH_MACKEREL
-#define MACH_TYPE	MACH_TYPE_MACKEREL
 #define MEMORY_START	0x40000000
 #include "mach/head-mackerel.txt"
 #else
-- 
1.8.2.1

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCH 2/5] ARM: shmobile: fix compile error when CONFIG_THUMB2_KERNEL=y
  2013-07-22  7:36 [GIT 0/5] Renesas ARM based SoC fixes for v3.12 Simon Horman
  2013-07-22  7:36 ` [PATCH 1/5] ARM: shmobile: Update romImage to relocate appended DTB Simon Horman
@ 2013-07-22  7:36 ` Simon Horman
  2013-07-22  7:37 ` [PATCH 3/5] ARM: shmobile: Force ARM mode to compile reset vector for secondary CPUs Simon Horman
                   ` (3 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: Simon Horman @ 2013-07-22  7:36 UTC (permalink / raw)
  To: linux-arm-kernel

From: Tetsuyuki Kobayashi <koba@kmckk.co.jp>

On KZM-A9-GT board (SMP), when CONFIG_THUMB2_KERNEL=y it fails to compile

  AS      arch/arm/mach-shmobile/headsmp-scu.o
/proj/koba/kernel/arm-soc/arch/arm/mach-shmobile/headsmp-scu.S: Assembler messages:
/proj/koba/kernel/arm-soc/arch/arm/mach-shmobile/headsmp-scu.S:41: Error: shift must be constant -- `bic r2,r2,r3,lsl r1'
make[2]: *** [arch/arm/mach-shmobile/headsmp-scu.o] Error 1
make[1]: *** [arch/arm/mach-shmobile] Error 2
make: *** [sub-make] Error 2

Instruction `bic r2,r2,r3,lsl r1' is not supported in thumb mode. This patch split it into 2 instructions.

Signed-off-by: Tetsuyuki Kobayashi <koba@kmckk.co.jp>
Acked-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
---
 arch/arm/mach-shmobile/headsmp-scu.S | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/arch/arm/mach-shmobile/headsmp-scu.S b/arch/arm/mach-shmobile/headsmp-scu.S
index 6f98654..5ce416c 100644
--- a/arch/arm/mach-shmobile/headsmp-scu.S
+++ b/arch/arm/mach-shmobile/headsmp-scu.S
@@ -38,7 +38,8 @@ ENTRY(shmobile_boot_scu)
 	lsl	r1, r1, #3		@ we will shift by cpu_id * 8 bits
 	ldr	r2, [r0, #8]		@ SCU Power Status Register
 	mov	r3, #3
-	bic	r2, r2, r3, lsl r1	@ Clear bits of our CPU (Run Mode)
+	lsl	r3, r3, r1
+	bic	r2, r2, r3		@ Clear bits of our CPU (Run Mode)
 	str	r2, [r0, #8]		@ write back
 
 	b	shmobile_invalidate_start
-- 
1.8.2.1

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCH 3/5] ARM: shmobile: Force ARM mode to compile reset vector for secondary CPUs
  2013-07-22  7:36 [GIT 0/5] Renesas ARM based SoC fixes for v3.12 Simon Horman
  2013-07-22  7:36 ` [PATCH 1/5] ARM: shmobile: Update romImage to relocate appended DTB Simon Horman
  2013-07-22  7:36 ` [PATCH 2/5] ARM: shmobile: fix compile error when CONFIG_THUMB2_KERNEL=y Simon Horman
@ 2013-07-22  7:37 ` Simon Horman
  2013-07-22  7:37 ` [PATCH 4/5] ARM: shmobile: Insert align directives before 4 bytes data Simon Horman
                   ` (2 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: Simon Horman @ 2013-07-22  7:37 UTC (permalink / raw)
  To: linux-arm-kernel

From: Tetsuyuki Kobayashi <koba@kmckk.co.jp>

Instructions start from boot vector must be ARM mode.
This patch specify ARM mode explicitly and use 'bx' instruction to be
able to change to Thumb mode.

Signed-off-by: Tetsuyuki Kobayashi <koba@kmckk.co.jp>
Acked-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
---
 arch/arm/mach-shmobile/headsmp.S | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/arch/arm/mach-shmobile/headsmp.S b/arch/arm/mach-shmobile/headsmp.S
index 559d1ce..afed58e 100644
--- a/arch/arm/mach-shmobile/headsmp.S
+++ b/arch/arm/mach-shmobile/headsmp.S
@@ -26,10 +26,13 @@ ENDPROC(shmobile_invalidate_start)
  * This will be mapped at address 0 by SBAR register.
  * We need _long_ jump to the physical address.
  */
+	.arm
 	.align  12
 ENTRY(shmobile_boot_vector)
 	ldr     r0, 2f
-	ldr     pc, 1f
+	ldr     r1, 1f
+	bx	r1
+
 ENDPROC(shmobile_boot_vector)
 
 	.globl	shmobile_boot_fn
-- 
1.8.2.1

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCH 4/5] ARM: shmobile: Insert align directives before 4 bytes data
  2013-07-22  7:36 [GIT 0/5] Renesas ARM based SoC fixes for v3.12 Simon Horman
                   ` (2 preceding siblings ...)
  2013-07-22  7:37 ` [PATCH 3/5] ARM: shmobile: Force ARM mode to compile reset vector for secondary CPUs Simon Horman
@ 2013-07-22  7:37 ` Simon Horman
  2013-07-22  7:37 ` [PATCH 5/5] ARM: shmobile: r8a7740: Fix TPU clock name Simon Horman
  2013-08-04 19:43 ` [GIT 0/5] Renesas ARM based SoC fixes for v3.12 Olof Johansson
  5 siblings, 0 replies; 7+ messages in thread
From: Simon Horman @ 2013-07-22  7:37 UTC (permalink / raw)
  To: linux-arm-kernel

From: Tetsuyuki Kobayashi <koba@kmckk.co.jp>

In thumb2 mode instructions are not align to 4 byte. This patch insert
align directives before putting 4 byte data.

Signed-off-by: Tetsuyuki Kobayashi <koba@kmckk.co.jp>
Acked-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
---
 arch/arm/mach-shmobile/headsmp-scu.S  | 1 +
 arch/arm/mach-shmobile/headsmp.S      | 1 +
 arch/arm/mach-shmobile/sleep-sh7372.S | 2 ++
 3 files changed, 4 insertions(+)

diff --git a/arch/arm/mach-shmobile/headsmp-scu.S b/arch/arm/mach-shmobile/headsmp-scu.S
index 5ce416c..0a77488 100644
--- a/arch/arm/mach-shmobile/headsmp-scu.S
+++ b/arch/arm/mach-shmobile/headsmp-scu.S
@@ -46,6 +46,7 @@ ENTRY(shmobile_boot_scu)
 ENDPROC(shmobile_boot_scu)
 
 	.text
+	.align	2
 	.globl	shmobile_scu_base
 shmobile_scu_base:
 	.space	4
diff --git a/arch/arm/mach-shmobile/headsmp.S b/arch/arm/mach-shmobile/headsmp.S
index afed58e..dfb41df 100644
--- a/arch/arm/mach-shmobile/headsmp.S
+++ b/arch/arm/mach-shmobile/headsmp.S
@@ -35,6 +35,7 @@ ENTRY(shmobile_boot_vector)
 
 ENDPROC(shmobile_boot_vector)
 
+	.align	2
 	.globl	shmobile_boot_fn
 shmobile_boot_fn:
 1:	.space	4
diff --git a/arch/arm/mach-shmobile/sleep-sh7372.S b/arch/arm/mach-shmobile/sleep-sh7372.S
index 53f4840..9782862 100644
--- a/arch/arm/mach-shmobile/sleep-sh7372.S
+++ b/arch/arm/mach-shmobile/sleep-sh7372.S
@@ -41,6 +41,7 @@
 sh7372_resume_core_standby_sysc:
 	ldr     pc, 1f
 
+	.align	2
 	.globl	sh7372_cpu_resume
 sh7372_cpu_resume:
 1:	.space	4
@@ -96,6 +97,7 @@ sh7372_do_idle_sysc:
 1:
 	b      1b
 
+	.align	2
 kernel_flush:
 	.word v7_flush_dcache_all
 #endif
-- 
1.8.2.1

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCH 5/5] ARM: shmobile: r8a7740: Fix TPU clock name
  2013-07-22  7:36 [GIT 0/5] Renesas ARM based SoC fixes for v3.12 Simon Horman
                   ` (3 preceding siblings ...)
  2013-07-22  7:37 ` [PATCH 4/5] ARM: shmobile: Insert align directives before 4 bytes data Simon Horman
@ 2013-07-22  7:37 ` Simon Horman
  2013-08-04 19:43 ` [GIT 0/5] Renesas ARM based SoC fixes for v3.12 Olof Johansson
  5 siblings, 0 replies; 7+ messages in thread
From: Simon Horman @ 2013-07-22  7:37 UTC (permalink / raw)
  To: linux-arm-kernel

From: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>

The TPU device is called renesas-tpu-pwm, not renesas_tpu_pwm. Fix the
clock name accordingly.

Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
---
 arch/arm/mach-shmobile/clock-r8a7740.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/arm/mach-shmobile/clock-r8a7740.c b/arch/arm/mach-shmobile/clock-r8a7740.c
index de10fd7..f4265e5 100644
--- a/arch/arm/mach-shmobile/clock-r8a7740.c
+++ b/arch/arm/mach-shmobile/clock-r8a7740.c
@@ -596,7 +596,7 @@ static struct clk_lookup lookups[] = {
 	CLKDEV_DEV_ID("e6bd0000.mmcif",         &mstp_clks[MSTP312]),
 	CLKDEV_DEV_ID("r8a7740-gether",		&mstp_clks[MSTP309]),
 	CLKDEV_DEV_ID("e9a00000.sh-eth",	&mstp_clks[MSTP309]),
-	CLKDEV_DEV_ID("renesas_tpu_pwm",	&mstp_clks[MSTP304]),
+	CLKDEV_DEV_ID("renesas-tpu-pwm",	&mstp_clks[MSTP304]),
 
 	CLKDEV_DEV_ID("sh_mobile_sdhi.2",	&mstp_clks[MSTP415]),
 	CLKDEV_DEV_ID("e6870000.sdhi",          &mstp_clks[MSTP415]),
-- 
1.8.2.1

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [GIT 0/5] Renesas ARM based SoC fixes for v3.12
  2013-07-22  7:36 [GIT 0/5] Renesas ARM based SoC fixes for v3.12 Simon Horman
                   ` (4 preceding siblings ...)
  2013-07-22  7:37 ` [PATCH 5/5] ARM: shmobile: r8a7740: Fix TPU clock name Simon Horman
@ 2013-08-04 19:43 ` Olof Johansson
  5 siblings, 0 replies; 7+ messages in thread
From: Olof Johansson @ 2013-08-04 19:43 UTC (permalink / raw)
  To: linux-arm-kernel

On Mon, Jul 22, 2013 at 04:36:47PM +0900, Simon Horman wrote:
> Hi Olof, Hi Arnd,
> 										please consider the following fixes v3.12.
> 
> The following changes since commit ad81f0545ef01ea651886dddac4bef6cec930092:
> 
>   Linux 3.11-rc1 (2013-07-14 15:18:27 -0700)
> 
> are available in the git repository at:
> 
>   git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas.git tags/renesas-fixes-for-v3.12

Pulled.


-Olof

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2013-08-04 19:43 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-07-22  7:36 [GIT 0/5] Renesas ARM based SoC fixes for v3.12 Simon Horman
2013-07-22  7:36 ` [PATCH 1/5] ARM: shmobile: Update romImage to relocate appended DTB Simon Horman
2013-07-22  7:36 ` [PATCH 2/5] ARM: shmobile: fix compile error when CONFIG_THUMB2_KERNEL=y Simon Horman
2013-07-22  7:37 ` [PATCH 3/5] ARM: shmobile: Force ARM mode to compile reset vector for secondary CPUs Simon Horman
2013-07-22  7:37 ` [PATCH 4/5] ARM: shmobile: Insert align directives before 4 bytes data Simon Horman
2013-07-22  7:37 ` [PATCH 5/5] ARM: shmobile: r8a7740: Fix TPU clock name Simon Horman
2013-08-04 19:43 ` [GIT 0/5] Renesas ARM based SoC fixes for v3.12 Olof Johansson

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).