diff mbox

[1/2] ARM: msm: Add support for MSM8974 Dragonboard

Message ID 1375780486.2725.7.camel@iivanov-dev.int.mm-sol.com (mailing list archive)
State New, archived
Headers show

Commit Message

Ivan T. Ivanov Aug. 6, 2013, 9:14 a.m. UTC
On Mon, 2013-08-05 at 16:02 -0700, Rohit Vaswani wrote:
> This patch adds basic board support for MSM8974 Dragonboard
> which belongs to the Snapdragon 800 family.
> For now, just support a basic machine with device tree.
> 
> Signed-off-by: Rohit Vaswani <rvaswani@codeaurora.org>
> ---
>  arch/arm/boot/dts/Makefile        |  3 ++-
>  arch/arm/boot/dts/msm8974-db.dts  | 26 ++++++++++++++++++++++++++
>  arch/arm/mach-msm/Kconfig         | 21 ++++++++++++++++++---
>  arch/arm/mach-msm/Makefile        |  1 +
>  arch/arm/mach-msm/board-dt-8974.c | 23 +++++++++++++++++++++++
>  5 files changed, 70 insertions(+), 4 deletions(-)
>  create mode 100644 arch/arm/boot/dts/msm8974-db.dts
>  create mode 100644 arch/arm/mach-msm/board-dt-8974.c

Thanks. 

Tested-by: Ivan T. Ivanov <iivanov@mm-sol.com>

Attached patch enables earlyprink for this board.

[920] booting linux @ 0x8000, ramdisk @ 0x2000000 (1067699), tags/device tree @ 0x1e00000
Uncompressing Linux... done, booting the kernel.
[    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Linux version 3.11.0-rc4-00003-g7c8394e (iivanov@dev) (gcc version 4.6.3 (GCC) ) #502 SMP PREEMPT Tue Aug 6 12:09:07 EEST3
[    0.000000] CPU: ARMv7 Processor [512f06f0] revision 0 (ARMv7), cr=10c5387d
[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, PIPT instruction cache
[    0.000000] Machine: Qualcomm MSM (Flattened Device Tree), model: Qualcomm MSM8974 Dragonboard
....

Comments

David Brown Sept. 11, 2013, 6 p.m. UTC | #1
On Tue, Aug 06, 2013 at 12:14:46PM +0300, Ivan T. Ivanov wrote:

>Attached patch enables earlyprink for this board.
>
>[920] booting linux @ 0x8000, ramdisk @ 0x2000000 (1067699), tags/device tree @ 0x1e00000
>Uncompressing Linux... done, booting the kernel.
>[    0.000000] Booting Linux on physical CPU 0x0
>[    0.000000] Linux version 3.11.0-rc4-00003-g7c8394e (iivanov@dev) (gcc version 4.6.3 (GCC) ) #502 SMP PREEMPT Tue Aug 6 12:09:07 EEST3
>[    0.000000] CPU: ARMv7 Processor [512f06f0] revision 0 (ARMv7), cr=10c5387d
>[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, PIPT instruction cache
>[    0.000000] Machine: Qualcomm MSM (Flattened Device Tree), model: Qualcomm MSM8974 Dragonboard

We'll need to have either Rohit include this in his patch series, or
you'll have to format this as a valid patch.

Thanks,
David
Josh Cartwright Sept. 11, 2013, 6:12 p.m. UTC | #2
Hey Ivan-

On Tue, Aug 06, 2013 at 12:14:46PM +0300, Ivan T. Ivanov wrote:
[..]
> Enable low-level debug print routines to direct their
> output to the serial port on MSM 8974 devices.
> 
> Signed-off-by: Ivan T. Ivanov <iivanov@mm-sol.com>
> ---
>  arch/arm/Kconfig.debug                     |    8 ++++++++
>  arch/arm/mach-msm/board-dt-8974.c          |    2 ++
>  arch/arm/mach-msm/include/mach/msm_iomap.h |    4 ++++
>  3 files changed, 14 insertions(+)
[..]
> diff --git a/arch/arm/mach-msm/board-dt-8974.c b/arch/arm/mach-msm/board-dt-8974.c
> index 697623e..0ce016a 100644
> --- a/arch/arm/mach-msm/board-dt-8974.c
> +++ b/arch/arm/mach-msm/board-dt-8974.c
> @@ -12,6 +12,7 @@
>  
>  #include <linux/of_platform.h>
>  #include <asm/mach/arch.h>
> +#include <asm/mach/map.h>
>  
>  static const char * const msm8974_dt_match[] __initconst = {
>  	"qcom,msm8974-db",
> @@ -20,4 +21,5 @@ static const char * const msm8974_dt_match[] __initconst = {
>  
>  DT_MACHINE_START(MSM8974_DT, "Qualcomm MSM (Flattened Device Tree)")
>  	.dt_compat = msm8974_dt_match,
> +	.map_io = debug_ll_io_init,

If/when you get this patch cooked up ontop of Rohit's, changes to this
file (renamed to board-dt.c) should not be necessary.  As of bc37324
("ARM: mmu: Call debug_ll_io_init if no map_io function is specified"),
the debug ll uart mapping is setup automatically.

Thanks,
  Josh
Ivan T. Ivanov Sept. 12, 2013, 2:03 p.m. UTC | #3
Hi, 

On Wed, 2013-09-11 at 13:12 -0500, Josh Cartwright wrote: 
> Hey Ivan-
> 
> On Tue, Aug 06, 2013 at 12:14:46PM +0300, Ivan T. Ivanov wrote:
> [..]
> > Enable low-level debug print routines to direct their
> > output to the serial port on MSM 8974 devices.
> > 
> > Signed-off-by: Ivan T. Ivanov <iivanov@mm-sol.com>
> > ---
> >  arch/arm/Kconfig.debug                     |    8 ++++++++
> >  arch/arm/mach-msm/board-dt-8974.c          |    2 ++
> >  arch/arm/mach-msm/include/mach/msm_iomap.h |    4 ++++
> >  3 files changed, 14 insertions(+)
> [..]
> > diff --git a/arch/arm/mach-msm/board-dt-8974.c b/arch/arm/mach-msm/board-dt-8974.c
> > index 697623e..0ce016a 100644
> > --- a/arch/arm/mach-msm/board-dt-8974.c
> > +++ b/arch/arm/mach-msm/board-dt-8974.c
> > @@ -12,6 +12,7 @@
> >  
> >  #include <linux/of_platform.h>
> >  #include <asm/mach/arch.h>
> > +#include <asm/mach/map.h>
> >  
> >  static const char * const msm8974_dt_match[] __initconst = {
> >  	"qcom,msm8974-db",
> > @@ -20,4 +21,5 @@ static const char * const msm8974_dt_match[] __initconst = {
> >  
> >  DT_MACHINE_START(MSM8974_DT, "Qualcomm MSM (Flattened Device Tree)")
> >  	.dt_compat = msm8974_dt_match,
> > +	.map_io = debug_ll_io_init,
> 
> If/when you get this patch cooked up ontop of Rohit's, changes to this
> file (renamed to board-dt.c) should not be necessary.  As of bc37324
> ("ARM: mmu: Call debug_ll_io_init if no map_io function is specified"),
> the debug ll uart mapping is setup automatically.

Thanks Josh. I am aware of this.

Regards,
Ivan


> 
> Thanks,
>   Josh
>
Ivan T. Ivanov Sept. 12, 2013, 2:05 p.m. UTC | #4
Hi,

On Wed, 2013-09-11 at 11:00 -0700, David Brown wrote: 
> On Tue, Aug 06, 2013 at 12:14:46PM +0300, Ivan T. Ivanov wrote:
> 
> >Attached patch enables earlyprink for this board.
> >
> >[920] booting linux @ 0x8000, ramdisk @ 0x2000000 (1067699), tags/device tree @ 0x1e00000
> >Uncompressing Linux... done, booting the kernel.
> >[    0.000000] Booting Linux on physical CPU 0x0
> >[    0.000000] Linux version 3.11.0-rc4-00003-g7c8394e (iivanov@dev) (gcc version 4.6.3 (GCC) ) #502 SMP PREEMPT Tue Aug 6 12:09:07 EEST3
> >[    0.000000] CPU: ARMv7 Processor [512f06f0] revision 0 (ARMv7), cr=10c5387d
> >[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, PIPT instruction cache
> >[    0.000000] Machine: Qualcomm MSM (Flattened Device Tree), model: Qualcomm MSM8974 Dragonboard
> 
> We'll need to have either Rohit include this in his patch series, or
> you'll have to format this as a valid patch.

I don't have preferences. Rohit could you send this patch 
with you changes?

Regards,
Ivan

> 
> Thanks,
> David
>
Rohit Vaswani Sept. 12, 2013, 4:34 p.m. UTC | #5
On 9/12/2013 7:05 AM, Ivan T. Ivanov wrote:
> Hi,
>
> On Wed, 2013-09-11 at 11:00 -0700, David Brown wrote:
>> On Tue, Aug 06, 2013 at 12:14:46PM +0300, Ivan T. Ivanov wrote:
>>
>>> Attached patch enables earlyprink for this board.
>>>
>>> [920] booting linux @ 0x8000, ramdisk @ 0x2000000 (1067699), tags/device tree @ 0x1e00000
>>> Uncompressing Linux... done, booting the kernel.
>>> [    0.000000] Booting Linux on physical CPU 0x0
>>> [    0.000000] Linux version 3.11.0-rc4-00003-g7c8394e (iivanov@dev) (gcc version 4.6.3 (GCC) ) #502 SMP PREEMPT Tue Aug 6 12:09:07 EEST3
>>> [    0.000000] CPU: ARMv7 Processor [512f06f0] revision 0 (ARMv7), cr=10c5387d
>>> [    0.000000] CPU: PIPT / VIPT nonaliasing data cache, PIPT instruction cache
>>> [    0.000000] Machine: Qualcomm MSM (Flattened Device Tree), model: Qualcomm MSM8974 Dragonboard
>> We'll need to have either Rohit include this in his patch series, or
>> you'll have to format this as a valid patch.
> I don't have preferences. Rohit could you send this patch
> with you changes?

Yep. Will fixup this as part of the initial support.
> Regards,
> Ivan
>
>> Thanks,
>> David
>>
>


Thanks,
Rohit Vaswani
Ivan T. Ivanov Sept. 13, 2013, 6:56 a.m. UTC | #6
On Thu, 2013-09-12 at 09:34 -0700, Rohit Vaswani wrote: 
> On 9/12/2013 7:05 AM, Ivan T. Ivanov wrote:
> > Hi,
> >
> > On Wed, 2013-09-11 at 11:00 -0700, David Brown wrote:
> >> On Tue, Aug 06, 2013 at 12:14:46PM +0300, Ivan T. Ivanov wrote:
> >>
> >>> Attached patch enables earlyprink for this board.
> >>>
> >>> [920] booting linux @ 0x8000, ramdisk @ 0x2000000 (1067699), tags/device tree @ 0x1e00000
> >>> Uncompressing Linux... done, booting the kernel.
> >>> [    0.000000] Booting Linux on physical CPU 0x0
> >>> [    0.000000] Linux version 3.11.0-rc4-00003-g7c8394e (iivanov@dev) (gcc version 4.6.3 (GCC) ) #502 SMP PREEMPT Tue Aug 6 12:09:07 EEST3
> >>> [    0.000000] CPU: ARMv7 Processor [512f06f0] revision 0 (ARMv7), cr=10c5387d
> >>> [    0.000000] CPU: PIPT / VIPT nonaliasing data cache, PIPT instruction cache
> >>> [    0.000000] Machine: Qualcomm MSM (Flattened Device Tree), model: Qualcomm MSM8974 Dragonboard
> >> We'll need to have either Rohit include this in his patch series, or
> >> you'll have to format this as a valid patch.
> > I don't have preferences. Rohit could you send this patch
> > with you changes?
> 
> Yep. Will fixup this as part of the initial support.

Thanks, 
Ivan

> > Regards,
> > Ivan
> >
> >> Thanks,
> >> David
> >>
> >
> 
> 
> Thanks,
> Rohit Vaswani
>
diff mbox

Patch

From 7c8394ea8d926cc90c90c76aa48c5cee88f2f149 Mon Sep 17 00:00:00 2001
From: "Ivan T. Ivanov" <iivanov@mm-sol.com>
Date: Wed, 5 Jun 2013 17:35:40 +0300
Subject: [PATCH] msm: Add low-level debugging via MSM 8974 UART

Enable low-level debug print routines to direct their
output to the serial port on MSM 8974 devices.

Signed-off-by: Ivan T. Ivanov <iivanov@mm-sol.com>
---
 arch/arm/Kconfig.debug                     |    8 ++++++++
 arch/arm/mach-msm/board-dt-8974.c          |    2 ++
 arch/arm/mach-msm/include/mach/msm_iomap.h |    4 ++++
 3 files changed, 14 insertions(+)

diff --git a/arch/arm/Kconfig.debug b/arch/arm/Kconfig.debug
index 583f4a0..4a8584f 100644
--- a/arch/arm/Kconfig.debug
+++ b/arch/arm/Kconfig.debug
@@ -323,6 +323,14 @@  choice
 		  Say Y here if you want the debug print routines to direct
 		  their output to the serial port on MSM 8960 devices.
 
+	config DEBUG_MSM8974_UART
+		bool "Kernel low-level debugging messages via MSM 8974 UART"
+		depends on ARCH_MSM8974
+		select MSM_HAS_DEBUG_UART_HS
+		help
+		  Say Y here if you want the debug print routines to direct
+		  their output to the serial port on MSM 8974 devices.
+
 	config DEBUG_MVEBU_UART
 		bool "Kernel low-level debugging messages via MVEBU UART (old bootloaders)"
 		depends on ARCH_MVEBU
diff --git a/arch/arm/mach-msm/board-dt-8974.c b/arch/arm/mach-msm/board-dt-8974.c
index 697623e..0ce016a 100644
--- a/arch/arm/mach-msm/board-dt-8974.c
+++ b/arch/arm/mach-msm/board-dt-8974.c
@@ -12,6 +12,7 @@ 
 
 #include <linux/of_platform.h>
 #include <asm/mach/arch.h>
+#include <asm/mach/map.h>
 
 static const char * const msm8974_dt_match[] __initconst = {
 	"qcom,msm8974-db",
@@ -20,4 +21,5 @@  static const char * const msm8974_dt_match[] __initconst = {
 
 DT_MACHINE_START(MSM8974_DT, "Qualcomm MSM (Flattened Device Tree)")
 	.dt_compat = msm8974_dt_match,
+	.map_io = debug_ll_io_init,
 MACHINE_END
diff --git a/arch/arm/mach-msm/include/mach/msm_iomap.h b/arch/arm/mach-msm/include/mach/msm_iomap.h
index c56e81f..7e08189 100644
--- a/arch/arm/mach-msm/include/mach/msm_iomap.h
+++ b/arch/arm/mach-msm/include/mach/msm_iomap.h
@@ -59,6 +59,10 @@ 
 #define MSM_DEBUG_UART_BASE	0xE1000000
 #define MSM_DEBUG_UART_PHYS	MSM_UART3_PHYS
 #endif
+#ifdef CONFIG_DEBUG_MSM8974_UART
+#define MSM_DEBUG_UART_BASE	0xfa71e000
+#define MSM_DEBUG_UART_PHYS	0xf991e000
+#endif
 
 /* Virtual addresses shared across all MSM targets. */
 #define MSM_CSR_BASE		IOMEM(0xE0001000)
-- 
1.7.9.5