linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/2] ARM: owl: Add CubieBoard6
@ 2017-09-11  0:58 Andreas Färber
  2017-09-11  0:58 ` [PATCH 1/2] dt-bindings: arm: actions: " Andreas Färber
                   ` (3 more replies)
  0 siblings, 4 replies; 6+ messages in thread
From: Andreas Färber @ 2017-09-11  0:58 UTC (permalink / raw)
  To: Andreas Färber, linux-arm-kernel
  Cc: Thomas Liau, 张东风, 刘炜,
	张天益, 梅利,
	support, linux-kernel, Ahha Lee

Hello,

This series prepares the Cubietech CubieBoard6, based on Actions Semi S500.

Cf. https://en.opensuse.org/HCL:CubieBoard6

With this Device Tree it starts to boot, but it gets stuck during earlycon:

[    0.899855] cpuidle: using governor ladder
[    0.904118] Internal error: Oops - undefined instruction: 0 [#1] PREEMPT SMP ARM
[    0.911498] Modules linked in:
[    0.914552] CPU: 3 PID: 1 Comm: swapper/0 Not tainted 4.13.0-next-20170908-00003-gbc21950343e1 #38
[    0.923486] Hardware name: Generic DT based system
[    0.928263] task: ee833840 task.stack: ee834000
[    0.932804] PC is at arch_hw_breakpoint_init+0xa0/0x2ac
[    0.938015] LR is at arch_hw_breakpoint_init+0x88/0x2ac
[    0.943223] pc : [<c09044a0>]    lr : [<c0904488>]    psr: 60000013
[    0.949469] sp : ee835ef8  ip : c09005a0  fp : 00000000
[    0.954676] r10: c092e83c  r9 : 0000009a  r8 : c0939624
[    0.959882] r7 : c092e828  r6 : c0a3463c  r5 : c0a3463c  r4 : 00000001
[    0.966388] r3 : 0000000f  r2 : 510002d0  r1 : 00000000  r0 : 00000003
[    0.972898] Flags: nZCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment none
[    0.980013] Control: 10c5387d  Table: 0000404a  DAC: 00000051
[    0.985740] Process swapper/0 (pid: 1, stack limit = 0xee834218)
[    0.991727] Stack: (0xee835ef8 to 0xee836000)
[    0.996069] 5ee0:                                                       c0a24844 c0a2b47c
[    1.004228] 5f00: 00000000 c05adf6c 00000003 c0904400 00000000 c01019f0 0000009a 0000009a
[    1.012388] 5f20: eeff7200 eeff72c9 c08a5aec 0000009a 0000009a c0137b54 c08a4ee4 00000000
[    1.020546] 5f40: 00000003 00000003 eeff72c9 eeff72d1 c0a0b7f4 00000003 c0a34300 c0a34300
[    1.028704] 5f60: 00000003 c0a34300 c0a34300 c0939624 0000009a c0900dd0 00000003 00000003
[    1.036862] 5f80: 00000000 c09005a0 00000000 c06d6cac 00000000 00000000 00000000 00000000
[    1.045020] 5fa0: 00000000 c06d6cb4 00000000 c01079e0 00000000 00000000 00000000 00000000
[    1.053177] 5fc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[    1.061335] 5fe0: 00000000 00000000 00000000 00000000 00000013 00000000 ffffffff ffffffff
[    1.069521] [<c09044a0>] (arch_hw_breakpoint_init) from [<c01019f0>] (do_one_initcall+0x40/0x16c)
[    1.078385] [<c01019f0>] (do_one_initcall) from [<c0900dd0>] (kernel_init_freeable+0x144/0x1e0)
[    1.087081] [<c0900dd0>] (kernel_init_freeable) from [<c06d6cb4>] (kernel_init+0x8/0x110)
[    1.095252] [<c06d6cb4>] (kernel_init) from [<c01079e0>] (ret_from_fork+0x14/0x34)
[    1.102807] Code: 0a000002 e3500005 13a04000 ea000001 (ee114e91) 
[    1.108892] ---[ end trace 7c7f41a8afd53875 ]---
[    1.113517] Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b

The same kernel zImage binary boots fine on Guitar, where I instead get:

[    0.865476] cpuidle: using governor ladder
[    0.866283] hw-breakpoint: found 5 (+1 reserved) breakpoint and 1 watchpoint registers.
[    0.866385] hw-breakpoint: maximum watchpoint size is 4 bytes.

I have tested this both with and without owl_secondary_boot(), i.e. my SMP patch series.

Work branch for testing:
https://github.com/afaerber/linux/commits/bg96-next

Cheers,
Andreas

Cc: Ahha Lee <lee@cubietech.com>
Cc: support@cubietech.com

Andreas Färber (2):
  dt-bindings: arm: actions: Add CubieBoard6
  ARM: dts: owl-s500: Add CubieBoard6

 Documentation/devicetree/bindings/arm/actions.txt |  1 +
 arch/arm/boot/dts/Makefile                        |  1 +
 arch/arm/boot/dts/owl-s500-cubieboard6.dts        | 44 +++++++++++++++++++++++
 3 files changed, 46 insertions(+)
 create mode 100644 arch/arm/boot/dts/owl-s500-cubieboard6.dts

-- 
2.13.5

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

* [PATCH 1/2] dt-bindings: arm: actions: Add CubieBoard6
  2017-09-11  0:58 [PATCH 0/2] ARM: owl: Add CubieBoard6 Andreas Färber
@ 2017-09-11  0:58 ` Andreas Färber
  2017-09-18 20:44   ` Rob Herring
  2017-09-11  0:58 ` [PATCH 2/2] ARM: dts: owl-s500: " Andreas Färber
                   ` (2 subsequent siblings)
  3 siblings, 1 reply; 6+ messages in thread
From: Andreas Färber @ 2017-09-11  0:58 UTC (permalink / raw)
  To: Andreas Färber, linux-arm-kernel
  Cc: Thomas Liau, 张东风, 刘炜,
	张天益, 梅利,
	support, linux-kernel, Rob Herring, Mark Rutland, devicetree

Define a compatible string for Cubietech CubieBoard6.

Cc: support@cubietech.com
Signed-off-by: Andreas Färber <afaerber@suse.de>
---
 Documentation/devicetree/bindings/arm/actions.txt | 1 +
 1 file changed, 1 insertion(+)

diff --git a/Documentation/devicetree/bindings/arm/actions.txt b/Documentation/devicetree/bindings/arm/actions.txt
index 3bc7ea575564..ced764a8549e 100644
--- a/Documentation/devicetree/bindings/arm/actions.txt
+++ b/Documentation/devicetree/bindings/arm/actions.txt
@@ -21,6 +21,7 @@ Boards:
 
 Root node property compatible must contain, depending on board:
 
+ - Cubietech CubieBoard6: "cubietech,cubieboard6"
  - LeMaker Guitar Base Board rev. B: "lemaker,guitar-bb-rev-b", "lemaker,guitar"
 
 
-- 
2.13.5

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

* [PATCH 2/2] ARM: dts: owl-s500: Add CubieBoard6
  2017-09-11  0:58 [PATCH 0/2] ARM: owl: Add CubieBoard6 Andreas Färber
  2017-09-11  0:58 ` [PATCH 1/2] dt-bindings: arm: actions: " Andreas Färber
@ 2017-09-11  0:58 ` Andreas Färber
  2017-09-12 12:55 ` [PATCH 0/2] ARM: owl: " Andreas Färber
  2017-09-19  7:59 ` Andreas Färber
  3 siblings, 0 replies; 6+ messages in thread
From: Andreas Färber @ 2017-09-11  0:58 UTC (permalink / raw)
  To: Andreas Färber, linux-arm-kernel
  Cc: Thomas Liau, 张东风, 刘炜,
	张天益, 梅利,
	support, linux-kernel, Rob Herring, Mark Rutland, Russell King,
	devicetree

Add a Device Tree for Cubietech CubieBoard6.

Cc: support@cubietech.com
Signed-off-by: Andreas Färber <afaerber@suse.de>
---
 arch/arm/boot/dts/Makefile                 |  1 +
 arch/arm/boot/dts/owl-s500-cubieboard6.dts | 44 ++++++++++++++++++++++++++++++
 2 files changed, 45 insertions(+)
 create mode 100644 arch/arm/boot/dts/owl-s500-cubieboard6.dts

diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
index faf46abaa4a2..448e0bd74ab7 100644
--- a/arch/arm/boot/dts/Makefile
+++ b/arch/arm/boot/dts/Makefile
@@ -680,6 +680,7 @@ dtb-$(CONFIG_ARCH_ORION5X) += \
 	orion5x-netgear-wnr854t.dtb \
 	orion5x-rd88f5182-nas.dtb
 dtb-$(CONFIG_ARCH_ACTIONS) += \
+	owl-s500-cubieboard6.dtb \
 	owl-s500-guitar-bb-rev-b.dtb
 dtb-$(CONFIG_ARCH_PRIMA2) += \
 	prima2-evb.dtb
diff --git a/arch/arm/boot/dts/owl-s500-cubieboard6.dts b/arch/arm/boot/dts/owl-s500-cubieboard6.dts
new file mode 100644
index 000000000000..ea4e01bce8d1
--- /dev/null
+++ b/arch/arm/boot/dts/owl-s500-cubieboard6.dts
@@ -0,0 +1,44 @@
+/*
+ * Cubietech CubieBoard6
+ *
+ * Copyright (c) 2017 Andreas Färber
+ *
+ * SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+ */
+
+/dts-v1/;
+
+#include "owl-s500.dtsi"
+
+/ {
+	compatible = "cubietech,cubieboard6", "actions,s500";
+	model = "CubieBoard6";
+
+	aliases {
+		serial3 = &uart3;
+	};
+
+	chosen {
+		stdout-path = "serial3:115200n8";
+	};
+
+	memory@0 {
+		device_type = "memory";
+		reg = <0x0 0x80000000>;
+	};
+
+	uart3_clk: uart3-clk {
+		compatible = "fixed-clock";
+		clock-frequency = <921600>;
+		#clock-cells = <0>;
+	};
+};
+
+&timer {
+	clocks = <&hosc>;
+};
+
+&uart3 {
+	status = "okay";
+	clocks = <&uart3_clk>;
+};
-- 
2.13.5

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

* Re: [PATCH 0/2] ARM: owl: Add CubieBoard6
  2017-09-11  0:58 [PATCH 0/2] ARM: owl: Add CubieBoard6 Andreas Färber
  2017-09-11  0:58 ` [PATCH 1/2] dt-bindings: arm: actions: " Andreas Färber
  2017-09-11  0:58 ` [PATCH 2/2] ARM: dts: owl-s500: " Andreas Färber
@ 2017-09-12 12:55 ` Andreas Färber
  2017-09-19  7:59 ` Andreas Färber
  3 siblings, 0 replies; 6+ messages in thread
From: Andreas Färber @ 2017-09-12 12:55 UTC (permalink / raw)
  To: linux-arm-kernel
  Cc: support, 张天益, 梅利,
	linux-kernel, Thomas Liau, Ahha Lee, 张东风,
	刘炜

Am 11.09.2017 um 02:58 schrieb Andreas Färber:
> With this Device Tree it starts to boot, but it gets stuck during earlycon:
> 
> [    0.899855] cpuidle: using governor ladder
> [    0.904118] Internal error: Oops - undefined instruction: 0 [#1] PREEMPT SMP ARM
> [    0.911498] Modules linked in:
> [    0.914552] CPU: 3 PID: 1 Comm: swapper/0 Not tainted 4.13.0-next-20170908-00003-gbc21950343e1 #38
> [    0.923486] Hardware name: Generic DT based system
> [    0.928263] task: ee833840 task.stack: ee834000
> [    0.932804] PC is at arch_hw_breakpoint_init+0xa0/0x2ac
> [    0.938015] LR is at arch_hw_breakpoint_init+0x88/0x2ac
> [    0.943223] pc : [<c09044a0>]    lr : [<c0904488>]    psr: 60000013
> [    0.949469] sp : ee835ef8  ip : c09005a0  fp : 00000000
> [    0.954676] r10: c092e83c  r9 : 0000009a  r8 : c0939624
> [    0.959882] r7 : c092e828  r6 : c0a3463c  r5 : c0a3463c  r4 : 00000001
> [    0.966388] r3 : 0000000f  r2 : 510002d0  r1 : 00000000  r0 : 00000003
> [    0.972898] Flags: nZCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment none
> [    0.980013] Control: 10c5387d  Table: 0000404a  DAC: 00000051
> [    0.985740] Process swapper/0 (pid: 1, stack limit = 0xee834218)
> [    0.991727] Stack: (0xee835ef8 to 0xee836000)
> [    0.996069] 5ee0:                                                       c0a24844 c0a2b47c
> [    1.004228] 5f00: 00000000 c05adf6c 00000003 c0904400 00000000 c01019f0 0000009a 0000009a
> [    1.012388] 5f20: eeff7200 eeff72c9 c08a5aec 0000009a 0000009a c0137b54 c08a4ee4 00000000
> [    1.020546] 5f40: 00000003 00000003 eeff72c9 eeff72d1 c0a0b7f4 00000003 c0a34300 c0a34300
> [    1.028704] 5f60: 00000003 c0a34300 c0a34300 c0939624 0000009a c0900dd0 00000003 00000003
> [    1.036862] 5f80: 00000000 c09005a0 00000000 c06d6cac 00000000 00000000 00000000 00000000
> [    1.045020] 5fa0: 00000000 c06d6cb4 00000000 c01079e0 00000000 00000000 00000000 00000000
> [    1.053177] 5fc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
> [    1.061335] 5fe0: 00000000 00000000 00000000 00000000 00000013 00000000 ffffffff ffffffff
> [    1.069521] [<c09044a0>] (arch_hw_breakpoint_init) from [<c01019f0>] (do_one_initcall+0x40/0x16c)
> [    1.078385] [<c01019f0>] (do_one_initcall) from [<c0900dd0>] (kernel_init_freeable+0x144/0x1e0)
> [    1.087081] [<c0900dd0>] (kernel_init_freeable) from [<c06d6cb4>] (kernel_init+0x8/0x110)
> [    1.095252] [<c06d6cb4>] (kernel_init) from [<c01079e0>] (ret_from_fork+0x14/0x34)
> [    1.102807] Code: 0a000002 e3500005 13a04000 ea000001 (ee114e91) 
> [    1.108892] ---[ end trace 7c7f41a8afd53875 ]---
> [    1.113517] Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b
> 
> The same kernel zImage binary boots fine on Guitar, where I instead get:
> 
> [    0.865476] cpuidle: using governor ladder
> [    0.866283] hw-breakpoint: found 5 (+1 reserved) breakpoint and 1 watchpoint registers.
> [    0.866385] hw-breakpoint: maximum watchpoint size is 4 bytes.
> 
> I have tested this both with and without owl_secondary_boot(), i.e. my SMP patch series.

If I return from arch/arm/kernel/hw_breakpoint.c like Scorpion does,
then we avoid the undefined instruction, but it just hangs:

[    0.899948] cpuidle: using governor ladder
[    0.904215] hw-breakpoint: CubieBoard6 detected. Hardware breakpoints
and watchpoints disabled
[  132.032547] random: crng init done

Any ideas?

Regards,
Andreas

-- 
SUSE Linux GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
GF: Felix Imendörffer, Jane Smithard, Graham Norton
HRB 21284 (AG Nürnberg)

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

* Re: [PATCH 1/2] dt-bindings: arm: actions: Add CubieBoard6
  2017-09-11  0:58 ` [PATCH 1/2] dt-bindings: arm: actions: " Andreas Färber
@ 2017-09-18 20:44   ` Rob Herring
  0 siblings, 0 replies; 6+ messages in thread
From: Rob Herring @ 2017-09-18 20:44 UTC (permalink / raw)
  To: Andreas Färber
  Cc: linux-arm-kernel, Thomas Liau, 张东风,
	刘炜, 张天益, 梅利,
	support, linux-kernel, Mark Rutland, devicetree

On Mon, Sep 11, 2017 at 02:58:04AM +0200, Andreas Färber wrote:
> Define a compatible string for Cubietech CubieBoard6.
> 
> Cc: support@cubietech.com
> Signed-off-by: Andreas Färber <afaerber@suse.de>
> ---
>  Documentation/devicetree/bindings/arm/actions.txt | 1 +
>  1 file changed, 1 insertion(+)

Acked-by: Rob Herring <robh@kernel.org>

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

* Re: [PATCH 0/2] ARM: owl: Add CubieBoard6
  2017-09-11  0:58 [PATCH 0/2] ARM: owl: Add CubieBoard6 Andreas Färber
                   ` (2 preceding siblings ...)
  2017-09-12 12:55 ` [PATCH 0/2] ARM: owl: " Andreas Färber
@ 2017-09-19  7:59 ` Andreas Färber
  3 siblings, 0 replies; 6+ messages in thread
From: Andreas Färber @ 2017-09-19  7:59 UTC (permalink / raw)
  To: linux-arm-kernel
  Cc: support, 张天益, 梅利,
	linux-kernel, Thomas Liau, Ahha Lee, 张东风,
	刘炜

Am 11.09.2017 um 02:58 schrieb Andreas Färber:
> Andreas Färber (2):
>   dt-bindings: arm: actions: Add CubieBoard6
>   ARM: dts: owl-s500: Add CubieBoard6
> 
>  Documentation/devicetree/bindings/arm/actions.txt |  1 +
>  arch/arm/boot/dts/Makefile                        |  1 +
>  arch/arm/boot/dts/owl-s500-cubieboard6.dts        | 44 +++++++++++++++++++++++
>  3 files changed, 46 insertions(+)
>  create mode 100644 arch/arm/boot/dts/owl-s500-cubieboard6.dts

Applied to v4.15/dt:

https://git.kernel.org/pub/scm/linux/kernel/git/afaerber/linux-actions.git/log/?h=v4.15/dt

Regards,
Andreas

-- 
SUSE Linux GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
GF: Felix Imendörffer, Jane Smithard, Graham Norton
HRB 21284 (AG Nürnberg)

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

end of thread, other threads:[~2017-09-19  7:59 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-09-11  0:58 [PATCH 0/2] ARM: owl: Add CubieBoard6 Andreas Färber
2017-09-11  0:58 ` [PATCH 1/2] dt-bindings: arm: actions: " Andreas Färber
2017-09-18 20:44   ` Rob Herring
2017-09-11  0:58 ` [PATCH 2/2] ARM: dts: owl-s500: " Andreas Färber
2017-09-12 12:55 ` [PATCH 0/2] ARM: owl: " Andreas Färber
2017-09-19  7:59 ` Andreas Färber

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