Re: [PATCH] Remove myself as qcom maintainer

2019-06-12 Thread David Brown
I no longer regularly work on this platform, and only have a few
increasingly outdated boards.  Andy has primarily been doing the
maintenance.

Signed-off-by: David Brown 
---
Resending this, hopefully with text=flowed not set in the email
headers.

 MAINTAINERS | 1 -
 1 file changed, 1 deletion(-)

diff --git a/MAINTAINERS b/MAINTAINERS
index 57f496cff999..27df8f46a283 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -2050,7 +2050,6 @@ S:Maintained
 
 ARM/QUALCOMM SUPPORT
 M: Andy Gross 
-M: David Brown 
 L: linux-arm-...@vger.kernel.org
 S: Maintained
 F: Documentation/devicetree/bindings/soc/qcom/
-- 
2.21.0



[PATCH] Remove myself as qcom maintainer

2019-06-12 Thread David Brown

I no longer regularly work on this platform, and only have a few
increasingly outdated boards.  Andy has primarily been doing the
maintenance.

Signed-off-by: David Brown 
---
MAINTAINERS | 1 -
1 file changed, 1 deletion(-)

diff --git a/MAINTAINERS b/MAINTAINERS
index 57f496cff999..27df8f46a283 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -2050,7 +2050,6 @@ S:Maintained

ARM/QUALCOMM SUPPORT
M:  Andy Gross 
-M: David Brown 
L:  linux-arm-...@vger.kernel.org
S:  Maintained
F:  Documentation/devicetree/bindings/soc/qcom/
--
2.21.0



[PATCH] usb: storage: Remove outdated URL from MAINTAINERS

2019-01-07 Thread David Brown

This website hasn't worked for quite some time.

Signed-off-by: David Brown 
Cc: Matt Dharm 
---
MAINTAINERS | 1 -
1 file changed, 1 deletion(-)

diff --git a/MAINTAINERS b/MAINTAINERS
index 82ad0eabce4f..0dbba14128e4 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -14142,7 +14142,6 @@ M:  Alan Stern 
L:  linux-...@vger.kernel.org
L:  usb-stor...@lists.one-eyed-alien.net
S:  Maintained
-W: http://www.one-eyed-alien.net/~mdharm/linux-usb/
F:  drivers/usb/storage/

USB MIDI DRIVER
--
2.19.2


Re: [PATCH] x86/xen: Remove use of VLAs

2018-04-13 Thread David Brown

On Fri, Apr 13, 2018 at 03:11:46PM -0700, Laura Abbott wrote:


There's an ongoing effort to remove VLAs[1] from the kernel to eventually
turn on -Wvla. The few VLAs in use have an upper bound based on a size
of 64K. This doesn't produce an excessively large stack so just switch
the upper bound.

[1] https://lkml.org/lkml/2018/3/7/621


This comment is more in regards to many of these patches, and not as
much this one specifically.

How confident are we in the upper bounds we're setting, and how
obvious is it in the resulting code so that something does later
change to overflow these bounds.

The danger here is that we're converting something a little easier to
detect (a stack overflow), with something harder to detect
(overflowing an array on the stack).

I guess the question is twofold: how did you determine that 64K was
the largest 'size' value, and how should reviewers verify this as
well.  Perhaps this should at least be in the commit text so someone
tracking down something with this code can find it later.

David


Re: [PATCH] x86/xen: Remove use of VLAs

2018-04-13 Thread David Brown

On Fri, Apr 13, 2018 at 03:11:46PM -0700, Laura Abbott wrote:


There's an ongoing effort to remove VLAs[1] from the kernel to eventually
turn on -Wvla. The few VLAs in use have an upper bound based on a size
of 64K. This doesn't produce an excessively large stack so just switch
the upper bound.

[1] https://lkml.org/lkml/2018/3/7/621


This comment is more in regards to many of these patches, and not as
much this one specifically.

How confident are we in the upper bounds we're setting, and how
obvious is it in the resulting code so that something does later
change to overflow these bounds.

The danger here is that we're converting something a little easier to
detect (a stack overflow), with something harder to detect
(overflowing an array on the stack).

I guess the question is twofold: how did you determine that 64K was
the largest 'size' value, and how should reviewers verify this as
well.  Perhaps this should at least be in the commit text so someone
tracking down something with this code can find it later.

David


Re: [PATCH 6/6] MAINTAINERS: Update ARM/QUALCOMM SUPPORT patterns

2018-01-29 Thread David Brown

On Sun, Jan 28, 2018 at 05:56:29AM -0800, Joe Perches wrote:

commit 321737416c72d ("tty: serial: msm: Move header file into driver")
removed the .h file, update the patterns.

Signed-off-by: Joe Perches <j...@perches.com>
cc: Stephen Boyd <sb...@codeaurora.org>
cc: Andy Gross <andy.gr...@linaro.org>
cc: David Brown <david.br...@linaro.org>
---
MAINTAINERS | 1 -
1 file changed, 1 deletion(-)


Acked-by: David Brown <david.br...@linaro.org>


Re: [PATCH 6/6] MAINTAINERS: Update ARM/QUALCOMM SUPPORT patterns

2018-01-29 Thread David Brown

On Sun, Jan 28, 2018 at 05:56:29AM -0800, Joe Perches wrote:

commit 321737416c72d ("tty: serial: msm: Move header file into driver")
removed the .h file, update the patterns.

Signed-off-by: Joe Perches 
cc: Stephen Boyd 
cc: Andy Gross 
cc: David Brown 
---
MAINTAINERS | 1 -
1 file changed, 1 deletion(-)


Acked-by: David Brown 


Re: [kernel-hardening] Re: [PATCH v2 1/3] Add the latent_entropy gcc plugin

2016-06-06 Thread David Brown

On Fri, Jun 03, 2016 at 07:42:52PM +0200, Emese Revfy wrote:

On Wed, 1 Jun 2016 12:42:27 -0700
Andrew Morton  wrote:


On Tue, 31 May 2016 01:31:45 +0200 Emese Revfy  wrote:

> This plugin mitigates the problem of the kernel having too little entropy 
during
> and after boot for generating crypto keys.
>
> It creates a local variable in every marked function. The value of this 
variable is
> modified by randomly chosen operations (add, xor and rol) and
> random values (gcc generates them at compile time and the stack pointer at 
runtime).
> It depends on the control flow (e.g., loops, conditions).
>
> Before the function returns the plugin writes this local variable
> into the latent_entropy global variable. The value of this global variable is
> added to the kernel entropy pool in do_one_initcall() and _do_fork().

I don't think I'm really understanding.  Won't this produce the same
value on each and every boot?


No, because of interrupts and intentional data races.


Wouldn't that result in the value having one of a small number of
values, then?  Even if it was just one of thousands or millions of
values, it would make the search space quite small.

David


Re: [kernel-hardening] Re: [PATCH v2 1/3] Add the latent_entropy gcc plugin

2016-06-06 Thread David Brown

On Fri, Jun 03, 2016 at 07:42:52PM +0200, Emese Revfy wrote:

On Wed, 1 Jun 2016 12:42:27 -0700
Andrew Morton  wrote:


On Tue, 31 May 2016 01:31:45 +0200 Emese Revfy  wrote:

> This plugin mitigates the problem of the kernel having too little entropy 
during
> and after boot for generating crypto keys.
>
> It creates a local variable in every marked function. The value of this 
variable is
> modified by randomly chosen operations (add, xor and rol) and
> random values (gcc generates them at compile time and the stack pointer at 
runtime).
> It depends on the control flow (e.g., loops, conditions).
>
> Before the function returns the plugin writes this local variable
> into the latent_entropy global variable. The value of this global variable is
> added to the kernel entropy pool in do_one_initcall() and _do_fork().

I don't think I'm really understanding.  Won't this produce the same
value on each and every boot?


No, because of interrupts and intentional data races.


Wouldn't that result in the value having one of a small number of
values, then?  Even if it was just one of thousands or millions of
values, it would make the search space quite small.

David


Re: [PATCH v6 0/6] Introduce GCC plugin infrastructure

2016-04-12 Thread David Brown

On Tue, Apr 12, 2016 at 11:27:52AM -0700, Kees Cook wrote:


Awesome! Thanks for testing this. I still need to finish getting my
arm64 environment built...


I've been using:
 http://releases.linaro.org/components/toolchain/binaries/

for most stuff.


Do you happen to know if there's already a gcc bug open for the make
install problem?


Linaro toolchain bug:
 https://bugs.linaro.org/show_bug.cgi?id=2123

Patch to fix it
 https://gcc.gnu.org/ml/gcc-patches/2016-03/msg00522.html

It is supposed to be included in the linaro 5.3-2016.03 snapshot.
I've pinged Christophe to see if I can get any insight into when that
will be available.

It is kind of nice to see that when it fails, it prints a helpful
message, though:

 scripts/Makefile.gcc-plugins:22: *** error, your gcc installation does not 
support plugins, perhaps the necessary headers are missing?.  Stop.

I think it is OK to include this, even with the patches still bubbling
through gcc releases.  It prints a helpful message when it doesn't
work, and is only going to be selected if specifically requested.

David


Re: [PATCH v6 0/6] Introduce GCC plugin infrastructure

2016-04-12 Thread David Brown

On Tue, Apr 12, 2016 at 11:27:52AM -0700, Kees Cook wrote:


Awesome! Thanks for testing this. I still need to finish getting my
arm64 environment built...


I've been using:
 http://releases.linaro.org/components/toolchain/binaries/

for most stuff.


Do you happen to know if there's already a gcc bug open for the make
install problem?


Linaro toolchain bug:
 https://bugs.linaro.org/show_bug.cgi?id=2123

Patch to fix it
 https://gcc.gnu.org/ml/gcc-patches/2016-03/msg00522.html

It is supposed to be included in the linaro 5.3-2016.03 snapshot.
I've pinged Christophe to see if I can get any insight into when that
will be available.

It is kind of nice to see that when it fails, it prints a helpful
message, though:

 scripts/Makefile.gcc-plugins:22: *** error, your gcc installation does not 
support plugins, perhaps the necessary headers are missing?.  Stop.

I think it is OK to include this, even with the patches still bubbling
through gcc releases.  It prints a helpful message when it doesn't
work, and is only going to be selected if specifically requested.

David


Re: [PATCH v6 0/6] Introduce GCC plugin infrastructure

2016-04-12 Thread David Brown

On Thu, Apr 07, 2016 at 11:10:23PM +0200, Emese Revfy wrote:

This patch set introduce the GCC plugin infrastructure with examples for testing
and documentation.

GCC plugins are loadable modules that provide extra features to the compiler.
They are useful for runtime instrumentation and static analysis.

The infrastructure supports all gcc versions from 4.5 to 6.0, building
out-of-tree modules and building in a separate directory. Cross-compilation
is supported too but currently only the x86, arm and arm64 architectures 
enables plugins.

This infrastructure was ported from grsecurity/PaX. It is a CII project
supported by the Linux Foundation.

Emese Revfy (6):
Shared library support
GCC plugin infrastructure
The GCC plugin infrastructure supports the arm and arm64 architectures too
Add Cyclomatic complexity plugin
Documentations of the GCC plugin infrastructre
Add sancov plugin


I've tested the v6 patches on arm, and partially on arm64.  The arm64
gcc has a bug in make install that doesn't install all necessary
headers to build plugins.  I believe the patch will work once that
version gets out.  It does, however, print a helpful message now
explaining the likely cause of the failure.

Tested-by: David Brown <david.br...@linaro.org>


Re: [PATCH v6 0/6] Introduce GCC plugin infrastructure

2016-04-12 Thread David Brown

On Thu, Apr 07, 2016 at 11:10:23PM +0200, Emese Revfy wrote:

This patch set introduce the GCC plugin infrastructure with examples for testing
and documentation.

GCC plugins are loadable modules that provide extra features to the compiler.
They are useful for runtime instrumentation and static analysis.

The infrastructure supports all gcc versions from 4.5 to 6.0, building
out-of-tree modules and building in a separate directory. Cross-compilation
is supported too but currently only the x86, arm and arm64 architectures 
enables plugins.

This infrastructure was ported from grsecurity/PaX. It is a CII project
supported by the Linux Foundation.

Emese Revfy (6):
Shared library support
GCC plugin infrastructure
The GCC plugin infrastructure supports the arm and arm64 architectures too
Add Cyclomatic complexity plugin
Documentations of the GCC plugin infrastructre
Add sancov plugin


I've tested the v6 patches on arm, and partially on arm64.  The arm64
gcc has a bug in make install that doesn't install all necessary
headers to build plugins.  I believe the patch will work once that
version gets out.  It does, however, print a helpful message now
explaining the likely cause of the failure.

Tested-by: David Brown 


Re: [kernel-hardening] [PATCH v5 2/5] GCC plugin infrastructure

2016-03-09 Thread David Brown

On Mon, Mar 07, 2016 at 12:04:27AM +0100, Emese Revfy wrote:


This patch allows to build the whole kernel with GCC plugins. It was ported from
grsecurity/PaX. The infrastructure supports building out-of-tree modules and
building in a separate directory. Cross-compilation is supported too but
currently only the x86 architecture enables plugins.


I've tested this with both ARM and ARM64.  There are some missing
headers in the arm64 gcc, reported here:
https://bugs.linaro.org/show_bug.cgi?id=2123 (also upstream), but this
should work once that is fixed.

Feel free to fold these into your patch, or, if you prefer, I can send
out separate patches for them.

Signed-off-by: David Brown <david.br...@linaro.org>

diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 4f799e5..67ee8e3 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -54,6 +54,7 @@ config ARM
select HAVE_FUNCTION_GRAPH_TRACER if (!THUMB2_KERNEL)
select HAVE_FUNCTION_TRACER if (!XIP_KERNEL)
select HAVE_GENERIC_DMA_COHERENT
+   select HAVE_GCC_PLUGINS
select HAVE_HW_BREAKPOINT if (PERF_EVENTS && (CPU_V6 || CPU_V6K || 
CPU_V7))
select HAVE_IDE if PCI || ISA || PCMCIA
select HAVE_IRQ_TIME_ACCOUNTING
diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index 8cc6228..6d6e4f8 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -70,6 +70,7 @@ config ARM64
select HAVE_FTRACE_MCOUNT_RECORD
select HAVE_FUNCTION_TRACER
select HAVE_FUNCTION_GRAPH_TRACER
+   select HAVE_GCC_PLUGINS
select HAVE_GENERIC_DMA_COHERENT
select HAVE_HW_BREAKPOINT if PERF_EVENTS
select HAVE_IRQ_TIME_ACCOUNTING
--


Re: [kernel-hardening] [PATCH v5 2/5] GCC plugin infrastructure

2016-03-09 Thread David Brown

On Mon, Mar 07, 2016 at 12:04:27AM +0100, Emese Revfy wrote:


This patch allows to build the whole kernel with GCC plugins. It was ported from
grsecurity/PaX. The infrastructure supports building out-of-tree modules and
building in a separate directory. Cross-compilation is supported too but
currently only the x86 architecture enables plugins.


I've tested this with both ARM and ARM64.  There are some missing
headers in the arm64 gcc, reported here:
https://bugs.linaro.org/show_bug.cgi?id=2123 (also upstream), but this
should work once that is fixed.

Feel free to fold these into your patch, or, if you prefer, I can send
out separate patches for them.

Signed-off-by: David Brown 

diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 4f799e5..67ee8e3 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -54,6 +54,7 @@ config ARM
select HAVE_FUNCTION_GRAPH_TRACER if (!THUMB2_KERNEL)
select HAVE_FUNCTION_TRACER if (!XIP_KERNEL)
select HAVE_GENERIC_DMA_COHERENT
+   select HAVE_GCC_PLUGINS
select HAVE_HW_BREAKPOINT if (PERF_EVENTS && (CPU_V6 || CPU_V6K || 
CPU_V7))
select HAVE_IDE if PCI || ISA || PCMCIA
select HAVE_IRQ_TIME_ACCOUNTING
diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index 8cc6228..6d6e4f8 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -70,6 +70,7 @@ config ARM64
select HAVE_FTRACE_MCOUNT_RECORD
select HAVE_FUNCTION_TRACER
select HAVE_FUNCTION_GRAPH_TRACER
+   select HAVE_GCC_PLUGINS
select HAVE_GENERIC_DMA_COHERENT
select HAVE_HW_BREAKPOINT if PERF_EVENTS
select HAVE_IRQ_TIME_ACCOUNTING
--


Re: [kernel-hardening] Re: [PATCH] lkdtm: add test for executing .rodata

2016-02-23 Thread David Brown

On Mon, Feb 22, 2016 at 12:46:28PM -0800, Kees Cook wrote:

On Thu, Feb 18, 2016 at 1:27 PM, PaX Team  wrote:

On 18 Feb 2016 at 12:34, Ard Biesheuvel wrote:


However, that does not fix the issue Kees is trying to solve, where a
.rodata section is emitted with the "x" bit set, which causes the
linker to complain:

/tmp/cc50ffWw.s: Assembler messages:
/tmp/cc50ffWw.s:2: Warning: setting incorrect section attributes for
.rodata.text


in that case why not use a top-level asm statement to set the section
and its attributes (and compile the file with fno-toplevel-reorder)?


GCC really wants to declare the section. :(


Why not then just use its mechanism to set the section on the code?

static void do_nothing_rodata(void)
__attribute__((section(".rodata")))
{
return;
}

David


Re: [kernel-hardening] Re: [PATCH] lkdtm: add test for executing .rodata

2016-02-23 Thread David Brown

On Mon, Feb 22, 2016 at 12:46:28PM -0800, Kees Cook wrote:

On Thu, Feb 18, 2016 at 1:27 PM, PaX Team  wrote:

On 18 Feb 2016 at 12:34, Ard Biesheuvel wrote:


However, that does not fix the issue Kees is trying to solve, where a
.rodata section is emitted with the "x" bit set, which causes the
linker to complain:

/tmp/cc50ffWw.s: Assembler messages:
/tmp/cc50ffWw.s:2: Warning: setting incorrect section attributes for
.rodata.text


in that case why not use a top-level asm statement to set the section
and its attributes (and compile the file with fno-toplevel-reorder)?


GCC really wants to declare the section. :(


Why not then just use its mechanism to set the section on the code?

static void do_nothing_rodata(void)
__attribute__((section(".rodata")))
{
return;
}

David


[tip:mm/readonly] ARM/vdso: Mark the vDSO code read-only after init

2016-02-23 Thread tip-bot for David Brown
Commit-ID:  11bf9b865898961cee60a41c483c9f27ec76e12e
Gitweb: http://git.kernel.org/tip/11bf9b865898961cee60a41c483c9f27ec76e12e
Author: David Brown <david.br...@linaro.org>
AuthorDate: Wed, 17 Feb 2016 14:41:18 -0800
Committer:  Ingo Molnar <mi...@kernel.org>
CommitDate: Mon, 22 Feb 2016 08:51:39 +0100

ARM/vdso: Mark the vDSO code read-only after init

Although the ARM vDSO is cleanly separated by code/data with the code
being read-only in userspace mappings, the code page is still writable
from the kernel.

There have been exploits (such as http://itszn.com/blog/?p=21) that
take advantage of this on x86 to go from a bad kernel write to full
root.

Prevent this specific exploit class on ARM as well by putting the vDSO
code page in post-init read-only memory as well.

Before:
vdso: 1 text pages at base 80927000
root@Vexpress:/ cat /sys/kernel/debug/kernel_page_tables
---[ Modules ]---
---[ Kernel Mapping ]---
0x8000-0x8010   1M RW NX SHD
0x8010-0x8060   5M ro x  SHD
0x8060-0x8080   2M ro NX SHD
0x8080-0xbe00 984M RW NX SHD

After:
vdso: 1 text pages at base 8072b000
root@Vexpress:/ cat /sys/kernel/debug/kernel_page_tables
---[ Modules ]---
---[ Kernel Mapping ]---
0x8000-0x8010   1M RW NX SHD
0x8010-0x8060   5M ro x  SHD
0x8060-0x8080   2M ro NX SHD
0x8080-0xbe00 984M RW NX SHD

Inspired by https://lkml.org/lkml/2016/1/19/494 based on work by the
PaX Team, Brad Spengler, and Kees Cook.

Signed-off-by: David Brown <david.br...@linaro.org>
Signed-off-by: Kees Cook <keesc...@chromium.org>
Cc: Andy Lutomirski <l...@amacapital.net>
Cc: Arnd Bergmann <a...@arndb.de>
Cc: Borislav Petkov <b...@alien8.de>
Cc: Brad Spengler <spen...@grsecurity.net>
Cc: Brian Gerst <brge...@gmail.com>
Cc: Denys Vlasenko <dvlas...@redhat.com>
Cc: Emese Revfy <re.em...@gmail.com>
Cc: H. Peter Anvin <h...@zytor.com>
Cc: Linus Torvalds <torva...@linux-foundation.org>
Cc: Mathias Krause <mini...@googlemail.com>
Cc: Michael Ellerman <m...@ellerman.id.au>
Cc: Nathan Lynch <nathan_ly...@mentor.com>
Cc: PaX Team <pagee...@freemail.hu>
Cc: Peter Zijlstra <pet...@infradead.org>
Cc: Russell King <li...@arm.linux.org.uk>
Cc: Thomas Gleixner <t...@linutronix.de>
Cc: kernel-harden...@lists.openwall.com
Cc: linux-arch <linux-a...@vger.kernel.org>
Cc: linux-arm-ker...@lists.infradead.org
Cc: linux-kernel@vger.kernel.org
Link: 
http://lkml.kernel.org/r/1455748879-21872-8-git-send-email-keesc...@chromium.org
Signed-off-by: Ingo Molnar <mi...@kernel.org>
---
 arch/arm/vdso/vdso.S | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/arch/arm/vdso/vdso.S b/arch/arm/vdso/vdso.S
index b2b97e3..a62a7b6 100644
--- a/arch/arm/vdso/vdso.S
+++ b/arch/arm/vdso/vdso.S
@@ -23,9 +23,8 @@
 #include 
 #include 
 
-   __PAGE_ALIGNED_DATA
-
.globl vdso_start, vdso_end
+   .section .data..ro_after_init
.balign PAGE_SIZE
 vdso_start:
.incbin "arch/arm/vdso/vdso.so"


[tip:mm/readonly] ARM/vdso: Mark the vDSO code read-only after init

2016-02-23 Thread tip-bot for David Brown
Commit-ID:  11bf9b865898961cee60a41c483c9f27ec76e12e
Gitweb: http://git.kernel.org/tip/11bf9b865898961cee60a41c483c9f27ec76e12e
Author: David Brown 
AuthorDate: Wed, 17 Feb 2016 14:41:18 -0800
Committer:  Ingo Molnar 
CommitDate: Mon, 22 Feb 2016 08:51:39 +0100

ARM/vdso: Mark the vDSO code read-only after init

Although the ARM vDSO is cleanly separated by code/data with the code
being read-only in userspace mappings, the code page is still writable
from the kernel.

There have been exploits (such as http://itszn.com/blog/?p=21) that
take advantage of this on x86 to go from a bad kernel write to full
root.

Prevent this specific exploit class on ARM as well by putting the vDSO
code page in post-init read-only memory as well.

Before:
vdso: 1 text pages at base 80927000
root@Vexpress:/ cat /sys/kernel/debug/kernel_page_tables
---[ Modules ]---
---[ Kernel Mapping ]---
0x8000-0x8010   1M RW NX SHD
0x8010-0x8060   5M ro x  SHD
0x8060-0x8080   2M ro NX SHD
0x8080-0xbe00 984M RW NX SHD

After:
vdso: 1 text pages at base 8072b000
root@Vexpress:/ cat /sys/kernel/debug/kernel_page_tables
---[ Modules ]---
---[ Kernel Mapping ]---
0x8000-0x8010   1M RW NX SHD
0x8010-0x8060   5M ro x  SHD
0x8060-0x8080   2M ro NX SHD
0x8080-0xbe00 984M RW NX SHD

Inspired by https://lkml.org/lkml/2016/1/19/494 based on work by the
PaX Team, Brad Spengler, and Kees Cook.

Signed-off-by: David Brown 
Signed-off-by: Kees Cook 
Cc: Andy Lutomirski 
Cc: Arnd Bergmann 
Cc: Borislav Petkov 
Cc: Brad Spengler 
Cc: Brian Gerst 
Cc: Denys Vlasenko 
Cc: Emese Revfy 
Cc: H. Peter Anvin 
Cc: Linus Torvalds 
Cc: Mathias Krause 
Cc: Michael Ellerman 
Cc: Nathan Lynch 
Cc: PaX Team 
Cc: Peter Zijlstra 
Cc: Russell King 
Cc: Thomas Gleixner 
Cc: kernel-harden...@lists.openwall.com
Cc: linux-arch 
Cc: linux-arm-ker...@lists.infradead.org
Cc: linux-kernel@vger.kernel.org
Link: 
http://lkml.kernel.org/r/1455748879-21872-8-git-send-email-keesc...@chromium.org
Signed-off-by: Ingo Molnar 
---
 arch/arm/vdso/vdso.S | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/arch/arm/vdso/vdso.S b/arch/arm/vdso/vdso.S
index b2b97e3..a62a7b6 100644
--- a/arch/arm/vdso/vdso.S
+++ b/arch/arm/vdso/vdso.S
@@ -23,9 +23,8 @@
 #include 
 #include 
 
-   __PAGE_ALIGNED_DATA
-
.globl vdso_start, vdso_end
+   .section .data..ro_after_init
.balign PAGE_SIZE
 vdso_start:
.incbin "arch/arm/vdso/vdso.so"


Re: [PATCH] ARM: vdso: Mark vDSO code as read-only

2016-02-17 Thread David Brown

On Wed, Feb 17, 2016 at 03:00:52PM -0800, Kees Cook wrote:

On Tue, Feb 16, 2016 at 9:20 PM, David Brown <david.br...@linaro.org> wrote:

On Tue, Feb 16, 2016 at 01:52:33PM -0800, Kees Cook wrote:


On Tue, Feb 16, 2016 at 1:36 PM, David Brown <david.br...@linaro.org>
wrote:


Although the arm vDSO is cleanly separated by code/data with the code
being read-only in userspace mappings, the code page is still writable
from the kernel.  There have been exploits (such as
http://itszn.com/blog/?p=21) that take advantage of this on x86 to go
from a bad kernel write to full root.

Prevent this specific exploit on arm by putting the vDSO code page in
post-init read-only memory as well.



Is the vdso dynamically built at init time like on x86, or can this
just use .rodata directly?



On ARM, it is patched during init.  Arm64's is just plain read-only.


Okay, great. I've added this to my postinit-readonly series (which I
just refreshed and sent out again...)


However, this distinction between .rodata and .data..ro_after_init is
kind of fuzzy, anyway, since they both get made actually read-only at
the same time (post init).  The patch actually does work fine with the
vDSO page in .rodata, since the patching happens during init.

Is there a possible future consideration to perhaps make .rodata read
only much earlier?

David


Re: [PATCH] ARM: vdso: Mark vDSO code as read-only

2016-02-17 Thread David Brown

On Wed, Feb 17, 2016 at 03:00:52PM -0800, Kees Cook wrote:

On Tue, Feb 16, 2016 at 9:20 PM, David Brown  wrote:

On Tue, Feb 16, 2016 at 01:52:33PM -0800, Kees Cook wrote:


On Tue, Feb 16, 2016 at 1:36 PM, David Brown 
wrote:


Although the arm vDSO is cleanly separated by code/data with the code
being read-only in userspace mappings, the code page is still writable
from the kernel.  There have been exploits (such as
http://itszn.com/blog/?p=21) that take advantage of this on x86 to go
from a bad kernel write to full root.

Prevent this specific exploit on arm by putting the vDSO code page in
post-init read-only memory as well.



Is the vdso dynamically built at init time like on x86, or can this
just use .rodata directly?



On ARM, it is patched during init.  Arm64's is just plain read-only.


Okay, great. I've added this to my postinit-readonly series (which I
just refreshed and sent out again...)


However, this distinction between .rodata and .data..ro_after_init is
kind of fuzzy, anyway, since they both get made actually read-only at
the same time (post init).  The patch actually does work fine with the
vDSO page in .rodata, since the patching happens during init.

Is there a possible future consideration to perhaps make .rodata read
only much earlier?

David


Re: [PATCH] ARM: vdso: Mark vDSO code as read-only

2016-02-16 Thread David Brown

On Tue, Feb 16, 2016 at 01:52:33PM -0800, Kees Cook wrote:

On Tue, Feb 16, 2016 at 1:36 PM, David Brown <david.br...@linaro.org> wrote:

Although the arm vDSO is cleanly separated by code/data with the code
being read-only in userspace mappings, the code page is still writable
from the kernel.  There have been exploits (such as
http://itszn.com/blog/?p=21) that take advantage of this on x86 to go
from a bad kernel write to full root.

Prevent this specific exploit on arm by putting the vDSO code page in
post-init read-only memory as well.


Is the vdso dynamically built at init time like on x86, or can this
just use .rodata directly?


On ARM, it is patched during init.  Arm64's is just plain read-only.

David


Re: [PATCH] ARM: vdso: Mark vDSO code as read-only

2016-02-16 Thread David Brown

On Tue, Feb 16, 2016 at 01:52:33PM -0800, Kees Cook wrote:

On Tue, Feb 16, 2016 at 1:36 PM, David Brown  wrote:

Although the arm vDSO is cleanly separated by code/data with the code
being read-only in userspace mappings, the code page is still writable
from the kernel.  There have been exploits (such as
http://itszn.com/blog/?p=21) that take advantage of this on x86 to go
from a bad kernel write to full root.

Prevent this specific exploit on arm by putting the vDSO code page in
post-init read-only memory as well.


Is the vdso dynamically built at init time like on x86, or can this
just use .rodata directly?


On ARM, it is patched during init.  Arm64's is just plain read-only.

David


[PATCH] ARM: vdso: Mark vDSO code as read-only

2016-02-16 Thread David Brown

Although the arm vDSO is cleanly separated by code/data with the code
being read-only in userspace mappings, the code page is still writable
from the kernel.  There have been exploits (such as
http://itszn.com/blog/?p=21) that take advantage of this on x86 to go
from a bad kernel write to full root.

Prevent this specific exploit on arm by putting the vDSO code page in
post-init read-only memory as well.

Before:
vdso: 1 text pages at base 80927000
root@Vexpress:/ cat /sys/kernel/debug/kernel_page_tables
---[ Modules ]---
---[ Kernel Mapping ]---
0x8000-0x8010   1M RW NX SHD
0x8010-0x8060   5M ro x  SHD
0x8060-0x8080   2M ro NX SHD
0x8080-0xbe00 984M RW NX SHD

After:
vdso: 1 text pages at base 8072b000
root@Vexpress:/ cat /sys/kernel/debug/kernel_page_tables
---[ Modules ]---
---[ Kernel Mapping ]---
0x8000-0x8010   1M RW NX SHD
0x8010-0x8060   5M ro x  SHD
0x8060-0x8080   2M ro NX SHD
0x8080-0xbe00 984M RW NX SHD

Inspired by https://lkml.org/lkml/2016/1/19/494 based on work by the
PaX Team, Brad Spengler, and Kees Cook.

Signed-off-by: David Brown <david.br...@linaro.org>
---
This patch depends on Kees Cook's series
https://lkml.org/lkml/2016/1/19/497 which adds the ro_after_init
section.

arch/arm/vdso/vdso.S | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/arch/arm/vdso/vdso.S b/arch/arm/vdso/vdso.S
index b2b97e3..a62a7b6 100644
--- a/arch/arm/vdso/vdso.S
+++ b/arch/arm/vdso/vdso.S
@@ -23,9 +23,8 @@
#include 
#include 

-   __PAGE_ALIGNED_DATA
-
.globl vdso_start, vdso_end
+   .section .data..ro_after_init
.balign PAGE_SIZE
vdso_start:
.incbin "arch/arm/vdso/vdso.so"
--
2.7.1



[PATCH] ARM: vdso: Mark vDSO code as read-only

2016-02-16 Thread David Brown

Although the arm vDSO is cleanly separated by code/data with the code
being read-only in userspace mappings, the code page is still writable
from the kernel.  There have been exploits (such as
http://itszn.com/blog/?p=21) that take advantage of this on x86 to go
from a bad kernel write to full root.

Prevent this specific exploit on arm by putting the vDSO code page in
post-init read-only memory as well.

Before:
vdso: 1 text pages at base 80927000
root@Vexpress:/ cat /sys/kernel/debug/kernel_page_tables
---[ Modules ]---
---[ Kernel Mapping ]---
0x8000-0x8010   1M RW NX SHD
0x8010-0x8060   5M ro x  SHD
0x8060-0x8080   2M ro NX SHD
0x8080-0xbe00 984M RW NX SHD

After:
vdso: 1 text pages at base 8072b000
root@Vexpress:/ cat /sys/kernel/debug/kernel_page_tables
---[ Modules ]---
---[ Kernel Mapping ]---
0x8000-0x8010   1M RW NX SHD
0x8010-0x8060   5M ro x  SHD
0x8060-0x8080   2M ro NX SHD
0x8080-0xbe00 984M RW NX SHD

Inspired by https://lkml.org/lkml/2016/1/19/494 based on work by the
PaX Team, Brad Spengler, and Kees Cook.

Signed-off-by: David Brown 
---
This patch depends on Kees Cook's series
https://lkml.org/lkml/2016/1/19/497 which adds the ro_after_init
section.

arch/arm/vdso/vdso.S | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/arch/arm/vdso/vdso.S b/arch/arm/vdso/vdso.S
index b2b97e3..a62a7b6 100644
--- a/arch/arm/vdso/vdso.S
+++ b/arch/arm/vdso/vdso.S
@@ -23,9 +23,8 @@
#include 
#include 

-   __PAGE_ALIGNED_DATA
-
.globl vdso_start, vdso_end
+   .section .data..ro_after_init
.balign PAGE_SIZE
vdso_start:
.incbin "arch/arm/vdso/vdso.so"
--
2.7.1



Re: [kernel-hardening] [PATCH] arm64: vdso: Mark vDSO code as read-only

2016-02-12 Thread David Brown

On Thu, Feb 11, 2016 at 03:19:20PM +0100, Ard Biesheuvel wrote:


diff --git a/arch/arm64/kernel/vdso/vdso.S b/arch/arm64/kernel/vdso/vdso.S
index 60c1db5..db7c0f2 100644
--- a/arch/arm64/kernel/vdso/vdso.S
+++ b/arch/arm64/kernel/vdso/vdso.S
@@ -24,6 +24,7 @@
__PAGE_ALIGNED_DATA


^^ You can get rid of this now as well


Can we?  The page is getting mapped to userspace, and if we didn't
page align it, we could leak kernel read-only data to every userspace
process.

David


Re: [kernel-hardening] [PATCH] arm64: vdso: Mark vDSO code as read-only

2016-02-12 Thread David Brown

On Thu, Feb 11, 2016 at 03:19:20PM +0100, Ard Biesheuvel wrote:


diff --git a/arch/arm64/kernel/vdso/vdso.S b/arch/arm64/kernel/vdso/vdso.S
index 60c1db5..db7c0f2 100644
--- a/arch/arm64/kernel/vdso/vdso.S
+++ b/arch/arm64/kernel/vdso/vdso.S
@@ -24,6 +24,7 @@
__PAGE_ALIGNED_DATA


^^ You can get rid of this now as well


Can we?  The page is getting mapped to userspace, and if we didn't
page align it, we could leak kernel read-only data to every userspace
process.

David


[PATCH] arm64: vdso: Mark vDSO code as read-only

2016-02-10 Thread David Brown
Although the arm64 vDSO is cleanly separated by code/data with the
code being read-only in userspace mappings, the code page is still
writable from the kernel.  There have been exploits (such as
http://itszn.com/blog/?p=21) that take advantage of this on x86 to go
from a bad kernel write to full root.

Prevent this specific exploit on arm64 by putting the vDSO code page
in read-only memory as well.

Before the change:
[3.138366] vdso: 2 pages (1 code @ ffc000a71000, 1 data @ 
ffc000a7)
---[ Kernel Mapping ]---
0xffc0-0xffc82000 520K RW NX SHD AF
UXN MEM/NORMAL
0xffc82000-0xffc000201528K ro x  SHD AF
UXN MEM/NORMAL
0xffc00020-0xffc00080   6M ro x  SHD AFBLK 
UXN MEM/NORMAL
0xffc00080-0xffc0009b60001752K ro x  SHD AF
UXN MEM/NORMAL
0xffc0009b6000-0xffc000c02344K RW NX SHD AF
UXN MEM/NORMAL
0xffc000c0-0xffc00800 116M RW NX SHD AFBLK 
UXN MEM/NORMAL
0xffc00c00-0xffc07f001840M RW NX SHD AFBLK 
UXN MEM/NORMAL
0xffc8-0xffc84000   1G RW NX SHD AFBLK 
UXN MEM/NORMAL
0xffc84000-0xffc87ae0 942M RW NX SHD AFBLK 
UXN MEM/NORMAL
0xffc87ae0-0xffc87ae7 448K RW NX SHD AF
UXN MEM/NORMAL
0xffc87af8-0xffc87af8a000  40K RW NX SHD AF
UXN MEM/NORMAL
0xffc87af8b000-0xffc87b00 468K RW NX SHD AF
UXN MEM/NORMAL
0xffc87b00-0xffc87fe0  78M RW NX SHD AFBLK 
UXN MEM/NORMAL
0xffc87fe0-0xffc87ff51344K RW NX SHD AF
UXN MEM/NORMAL
0xffc87ff9-0xffc87ffa  64K RW NX SHD AF
UXN MEM/NORMAL
0xffc87fff-0xffc88000  64K RW NX SHD AF
UXN MEM/NORMAL

After:
[3.138368] vdso: 2 pages (1 code @ ffc0006de000, 1 data @ 
ffc000a74000)
---[ Kernel Mapping ]---
0xffc0-0xffc82000 520K RW NX SHD AF
UXN MEM/NORMAL
0xffc82000-0xffc000201528K ro x  SHD AF
UXN MEM/NORMAL
0xffc00020-0xffc00080   6M ro x  SHD AFBLK 
UXN MEM/NORMAL
0xffc00080-0xffc0009b80001760K ro x  SHD AF
UXN MEM/NORMAL
0xffc0009b8000-0xffc000c02336K RW NX SHD AF
UXN MEM/NORMAL
0xffc000c0-0xffc00800 116M RW NX SHD AFBLK 
UXN MEM/NORMAL
0xffc00c00-0xffc07f001840M RW NX SHD AFBLK 
UXN MEM/NORMAL
0xffc8-0xffc84000   1G RW NX SHD AFBLK 
UXN MEM/NORMAL
0xffc84000-0xffc87ae0 942M RW NX SHD AFBLK 
UXN MEM/NORMAL
0xffc87ae0-0xffc87ae7 448K RW NX SHD AF
UXN MEM/NORMAL
0xffc87af8-0xffc87af8a000  40K RW NX SHD AF
UXN MEM/NORMAL
0xffc87af8b000-0xffc87b00 468K RW NX SHD AF
UXN MEM/NORMAL
0xffc87b00-0xffc87fe0  78M RW NX SHD AFBLK 
UXN MEM/NORMAL
0xffc87fe0-0xffc87ff51344K RW NX SHD AF
UXN MEM/NORMAL
0xffc87ff9-0xffc87ffa  64K RW NX SHD AF
UXN MEM/NORMAL
0xffc87fff-0xffc88000  64K RW NX SHD AF
UXN MEM/NORMAL

Inspired by https://lkml.org/lkml/2016/1/19/494 based on work by the
PaX Team, Brad Spengler, and Kees Cook.

Signed-off-by: David Brown 
---
 arch/arm64/kernel/vdso/vdso.S | 1 +
 1 file changed, 1 insertion(+)

diff --git a/arch/arm64/kernel/vdso/vdso.S b/arch/arm64/kernel/vdso/vdso.S
index 60c1db5..db7c0f2 100644
--- a/arch/arm64/kernel/vdso/vdso.S
+++ b/arch/arm64/kernel/vdso/vdso.S
@@ -24,6 +24,7 @@
__PAGE_ALIGNED_DATA
 
.globl vdso_start, vdso_end
+   .section .rodata
.balign PAGE_SIZE
 vdso_start:
.incbin "arch/arm64/kernel/vdso/vdso.so"
-- 
2.7.1



[PATCH] arm64: vdso: Mark vDSO code as read-only

2016-02-10 Thread David Brown
Although the arm64 vDSO is cleanly separated by code/data with the
code being read-only in userspace mappings, the code page is still
writable from the kernel.  There have been exploits (such as
http://itszn.com/blog/?p=21) that take advantage of this on x86 to go
from a bad kernel write to full root.

Prevent this specific exploit on arm64 by putting the vDSO code page
in read-only memory as well.

Before the change:
[3.138366] vdso: 2 pages (1 code @ ffc000a71000, 1 data @ 
ffc000a7)
---[ Kernel Mapping ]---
0xffc0-0xffc82000 520K RW NX SHD AF
UXN MEM/NORMAL
0xffc82000-0xffc000201528K ro x  SHD AF
UXN MEM/NORMAL
0xffc00020-0xffc00080   6M ro x  SHD AFBLK 
UXN MEM/NORMAL
0xffc00080-0xffc0009b60001752K ro x  SHD AF
UXN MEM/NORMAL
0xffc0009b6000-0xffc000c02344K RW NX SHD AF
UXN MEM/NORMAL
0xffc000c0-0xffc00800 116M RW NX SHD AFBLK 
UXN MEM/NORMAL
0xffc00c00-0xffc07f001840M RW NX SHD AFBLK 
UXN MEM/NORMAL
0xffc8-0xffc84000   1G RW NX SHD AFBLK 
UXN MEM/NORMAL
0xffc84000-0xffc87ae0 942M RW NX SHD AFBLK 
UXN MEM/NORMAL
0xffc87ae0-0xffc87ae7 448K RW NX SHD AF
UXN MEM/NORMAL
0xffc87af8-0xffc87af8a000  40K RW NX SHD AF
UXN MEM/NORMAL
0xffc87af8b000-0xffc87b00 468K RW NX SHD AF
UXN MEM/NORMAL
0xffc87b00-0xffc87fe0  78M RW NX SHD AFBLK 
UXN MEM/NORMAL
0xffc87fe0-0xffc87ff51344K RW NX SHD AF
UXN MEM/NORMAL
0xffc87ff9-0xffc87ffa  64K RW NX SHD AF
UXN MEM/NORMAL
0xffc87fff-0xffc88000  64K RW NX SHD AF
UXN MEM/NORMAL

After:
[3.138368] vdso: 2 pages (1 code @ ffc0006de000, 1 data @ 
ffc000a74000)
---[ Kernel Mapping ]---
0xffc0-0xffc82000 520K RW NX SHD AF
UXN MEM/NORMAL
0xffc82000-0xffc000201528K ro x  SHD AF
UXN MEM/NORMAL
0xffc00020-0xffc00080   6M ro x  SHD AFBLK 
UXN MEM/NORMAL
0xffc00080-0xffc0009b80001760K ro x  SHD AF
UXN MEM/NORMAL
0xffc0009b8000-0xffc000c02336K RW NX SHD AF
UXN MEM/NORMAL
0xffc000c0-0xffc00800 116M RW NX SHD AFBLK 
UXN MEM/NORMAL
0xffc00c00-0xffc07f001840M RW NX SHD AFBLK 
UXN MEM/NORMAL
0xffc8-0xffc84000   1G RW NX SHD AFBLK 
UXN MEM/NORMAL
0xffc84000-0xffc87ae0 942M RW NX SHD AFBLK 
UXN MEM/NORMAL
0xffc87ae0-0xffc87ae7 448K RW NX SHD AF
UXN MEM/NORMAL
0xffc87af8-0xffc87af8a000  40K RW NX SHD AF
UXN MEM/NORMAL
0xffc87af8b000-0xffc87b00 468K RW NX SHD AF
UXN MEM/NORMAL
0xffc87b00-0xffc87fe0  78M RW NX SHD AFBLK 
UXN MEM/NORMAL
0xffc87fe0-0xffc87ff51344K RW NX SHD AF
UXN MEM/NORMAL
0xffc87ff9-0xffc87ffa  64K RW NX SHD AF
UXN MEM/NORMAL
0xffc87fff-0xffc88000  64K RW NX SHD AF
UXN MEM/NORMAL

Inspired by https://lkml.org/lkml/2016/1/19/494 based on work by the
PaX Team, Brad Spengler, and Kees Cook.

Signed-off-by: David Brown <david.br...@linaro.org>
---
 arch/arm64/kernel/vdso/vdso.S | 1 +
 1 file changed, 1 insertion(+)

diff --git a/arch/arm64/kernel/vdso/vdso.S b/arch/arm64/kernel/vdso/vdso.S
index 60c1db5..db7c0f2 100644
--- a/arch/arm64/kernel/vdso/vdso.S
+++ b/arch/arm64/kernel/vdso/vdso.S
@@ -24,6 +24,7 @@
__PAGE_ALIGNED_DATA
 
.globl vdso_start, vdso_end
+   .section .rodata
.balign PAGE_SIZE
 vdso_start:
.incbin "arch/arm64/kernel/vdso/vdso.so"
-- 
2.7.1



[PATCH] arm64: make CONFIG_DEBUG_RODATA non-optional

2016-01-27 Thread David Brown

From 2efef8aa0f8f7f6277ffebe4ea6744fc93d54644 Mon Sep 17 00:00:00 2001

From: David Brown 
Date: Wed, 27 Jan 2016 13:58:44 -0800

This removes the CONFIG_DEBUG_RODATA option and makes it always
enabled.

Signed-off-by: David Brown 
---
v1: This is in the same spirit as the x86 patch, removing allowing
this option to be config selected.  The associated patch series adds a
runtime option for the same thing.  However, it does affect the way
some things are mapped, and could possibly result in either increased
memory usage, or a performance hit (due to TLB misses from 4K pages).

I've tested this on a Hikey 96board (hi6220-hikey.dtb), both with and
without 'rodata=off' on the command line.

arch/arm64/Kconfig  |  3 +++
arch/arm64/Kconfig.debug| 10 --
arch/arm64/kernel/insn.c|  2 +-
arch/arm64/kernel/vmlinux.lds.S |  5 +
arch/arm64/mm/mmu.c | 12 
5 files changed, 5 insertions(+), 27 deletions(-)

diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index 8cc6228..ffa617a 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -201,6 +201,9 @@ config KERNEL_MODE_NEON
config FIX_EARLYCON_MEM
def_bool y

+config DEBUG_RODATA
+   def_bool y
+
config PGTABLE_LEVELS
int
default 2 if ARM64_16K_PAGES && ARM64_VA_BITS_36
diff --git a/arch/arm64/Kconfig.debug b/arch/arm64/Kconfig.debug
index e13c4bf..db994ec 100644
--- a/arch/arm64/Kconfig.debug
+++ b/arch/arm64/Kconfig.debug
@@ -48,16 +48,6 @@ config DEBUG_SET_MODULE_RONX
  against certain classes of kernel exploits.
  If in doubt, say "N".

-config DEBUG_RODATA
-   bool "Make kernel text and rodata read-only"
-   help
- If this is set, kernel text and rodata will be made read-only. This
- is to help catch accidental or malicious attempts to change the
- kernel's executable code. Additionally splits rodata from kernel
- text so it can be made explicitly non-executable.
-
-  If in doubt, say Y
-
config DEBUG_ALIGN_RODATA
depends on DEBUG_RODATA && ARM64_4K_PAGES
bool "Align linker sections up to SECTION_SIZE"
diff --git a/arch/arm64/kernel/insn.c b/arch/arm64/kernel/insn.c
index 7371455..a04bdef 100644
--- a/arch/arm64/kernel/insn.c
+++ b/arch/arm64/kernel/insn.c
@@ -95,7 +95,7 @@ static void __kprobes *patch_map(void *addr, int fixmap)

if (module && IS_ENABLED(CONFIG_DEBUG_SET_MODULE_RONX))
page = vmalloc_to_page(addr);
-   else if (!module && IS_ENABLED(CONFIG_DEBUG_RODATA))
+   else if (!module)
page = virt_to_page(addr);
else
return addr;
diff --git a/arch/arm64/kernel/vmlinux.lds.S b/arch/arm64/kernel/vmlinux.lds.S
index e3928f5..f80903c 100644
--- a/arch/arm64/kernel/vmlinux.lds.S
+++ b/arch/arm64/kernel/vmlinux.lds.S
@@ -65,12 +65,9 @@ PECOFF_FILE_ALIGNMENT = 0x200;
#if defined(CONFIG_DEBUG_ALIGN_RODATA)
#define ALIGN_DEBUG_RO  . = ALIGN(1<

Re: [kernel-hardening] [PATCH v4 3/8] param: convert some "on"/"off" users to strtobool

2016-01-27 Thread David Brown

On Tue, Jan 19, 2016 at 10:08:37AM -0800, Kees Cook wrote:


diff --git a/kernel/time/tick-sched.c b/kernel/time/tick-sched.c
index 9cc20af58c76..f5ea98490ffa 100644
--- a/kernel/time/tick-sched.c
+++ b/kernel/time/tick-sched.c
@@ -387,20 +388,14 @@ void __init tick_nohz_init(void)
/*
 * NO HZ enabled ?
 */
-static int tick_nohz_enabled __read_mostly  = 1;
+static bool tick_nohz_enabled __read_mostly  = true;
unsigned long tick_nohz_active  __read_mostly;
/*
 * Enable / Disable tickless mode
 */


Just discovered this conflicts with a recent patch with
CONFIG_NO_HZ_COMMON:

commit 46373a15f65fe862f31c19a484acdf551f2b442f
Author: Jean Delvare 
Date:   Mon Jan 11 17:40:31 2016 +0100

time: nohz: Expose tick_nohz_enabled

kernel/time/tick-sched.c:390:6: error: conflicting types for ‘tick_nohz_enabled’
bool tick_nohz_enabled __read_mostly = true;
 ^
In file included from kernel/time/tick-internal.h:5:0,
from kernel/time/tick-sched.c:30:
include/linux/tick.h:101:12: note: previous declaration of ‘tick_nohz_enabled’ 
was here
extern int tick_nohz_enabled;
   ^

Fixing the compilation error, it compiles and boots on arm64, however
it isn't detecting the write (with the lkdtm test).  I'll continue
looking into what's preventing this.

David


[PATCH] arm64: make CONFIG_DEBUG_RODATA non-optional

2016-01-27 Thread David Brown

From 2efef8aa0f8f7f6277ffebe4ea6744fc93d54644 Mon Sep 17 00:00:00 2001

From: David Brown <david.br...@linaro.org>
Date: Wed, 27 Jan 2016 13:58:44 -0800

This removes the CONFIG_DEBUG_RODATA option and makes it always
enabled.

Signed-off-by: David Brown <david.br...@linaro.org>
---
v1: This is in the same spirit as the x86 patch, removing allowing
this option to be config selected.  The associated patch series adds a
runtime option for the same thing.  However, it does affect the way
some things are mapped, and could possibly result in either increased
memory usage, or a performance hit (due to TLB misses from 4K pages).

I've tested this on a Hikey 96board (hi6220-hikey.dtb), both with and
without 'rodata=off' on the command line.

arch/arm64/Kconfig  |  3 +++
arch/arm64/Kconfig.debug| 10 --
arch/arm64/kernel/insn.c|  2 +-
arch/arm64/kernel/vmlinux.lds.S |  5 +
arch/arm64/mm/mmu.c | 12 
5 files changed, 5 insertions(+), 27 deletions(-)

diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index 8cc6228..ffa617a 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -201,6 +201,9 @@ config KERNEL_MODE_NEON
config FIX_EARLYCON_MEM
def_bool y

+config DEBUG_RODATA
+   def_bool y
+
config PGTABLE_LEVELS
int
default 2 if ARM64_16K_PAGES && ARM64_VA_BITS_36
diff --git a/arch/arm64/Kconfig.debug b/arch/arm64/Kconfig.debug
index e13c4bf..db994ec 100644
--- a/arch/arm64/Kconfig.debug
+++ b/arch/arm64/Kconfig.debug
@@ -48,16 +48,6 @@ config DEBUG_SET_MODULE_RONX
  against certain classes of kernel exploits.
  If in doubt, say "N".

-config DEBUG_RODATA
-   bool "Make kernel text and rodata read-only"
-   help
- If this is set, kernel text and rodata will be made read-only. This
- is to help catch accidental or malicious attempts to change the
- kernel's executable code. Additionally splits rodata from kernel
- text so it can be made explicitly non-executable.
-
-  If in doubt, say Y
-
config DEBUG_ALIGN_RODATA
depends on DEBUG_RODATA && ARM64_4K_PAGES
bool "Align linker sections up to SECTION_SIZE"
diff --git a/arch/arm64/kernel/insn.c b/arch/arm64/kernel/insn.c
index 7371455..a04bdef 100644
--- a/arch/arm64/kernel/insn.c
+++ b/arch/arm64/kernel/insn.c
@@ -95,7 +95,7 @@ static void __kprobes *patch_map(void *addr, int fixmap)

if (module && IS_ENABLED(CONFIG_DEBUG_SET_MODULE_RONX))
page = vmalloc_to_page(addr);
-   else if (!module && IS_ENABLED(CONFIG_DEBUG_RODATA))
+   else if (!module)
page = virt_to_page(addr);
else
return addr;
diff --git a/arch/arm64/kernel/vmlinux.lds.S b/arch/arm64/kernel/vmlinux.lds.S
index e3928f5..f80903c 100644
--- a/arch/arm64/kernel/vmlinux.lds.S
+++ b/arch/arm64/kernel/vmlinux.lds.S
@@ -65,12 +65,9 @@ PECOFF_FILE_ALIGNMENT = 0x200;
#if defined(CONFIG_DEBUG_ALIGN_RODATA)
#define ALIGN_DEBUG_RO  . = ALIGN(1<<SECTION_SHIFT);
#define ALIGN_DEBUG_RO_MIN(min) ALIGN_DEBUG_RO
-#elif defined(CONFIG_DEBUG_RODATA)
+#else
#define ALIGN_DEBUG_RO  . = ALIGN(1<<PAGE_SHIFT);
#define ALIGN_DEBUG_RO_MIN(min) ALIGN_DEBUG_RO
-#else
-#define ALIGN_DEBUG_RO
-#define ALIGN_DEBUG_RO_MIN(min). = ALIGN(min);
#endif

SECTIONS
diff --git a/arch/arm64/mm/mmu.c b/arch/arm64/mm/mmu.c
index 58faeaa..3b411b7 100644
--- a/arch/arm64/mm/mmu.c
+++ b/arch/arm64/mm/mmu.c
@@ -313,7 +313,6 @@ static void create_mapping_late(phys_addr_t phys, unsigned 
long virt,
phys, virt, size, prot, late_alloc);
}

-#ifdef CONFIG_DEBUG_RODATA
static void __init __map_memblock(phys_addr_t start, phys_addr_t end)
{
/*
@@ -347,13 +346,6 @@ static void __init __map_memblock(phys_addr_t start, 
phys_addr_t end)
}

}
-#else
-static void __init __map_memblock(phys_addr_t start, phys_addr_t end)
-{
-   create_mapping(start, __phys_to_virt(start), end - start,
-   PAGE_KERNEL_EXEC);
-}
-#endif

static void __init map_mem(void)
{
@@ -410,7 +402,6 @@ static void __init map_mem(void)

static void __init fixup_executable(void)
{
-#ifdef CONFIG_DEBUG_RODATA
/* now that we are actually fully mapped, make the start/end more fine 
grained */
if (!IS_ALIGNED((unsigned long)_stext, SWAPPER_BLOCK_SIZE)) {
unsigned long aligned_start = round_down(__pa(_stext),
@@ -428,10 +419,8 @@ static void __init fixup_executable(void)
aligned_end - __pa(__init_end),
PAGE_KERNEL);
}
-#endif
}

-#ifdef CONFIG_DEBUG_RODATA
void mark_rodata_ro(void)
{
create_mapping_late(__pa(_stext), (unsigned long)_stext,
@@ -439,7 +428,6 @@ void mark_rodata_ro(void)
PAGE_KERNEL_ROX);

}
-#endif

void fixup_init(void)
{
--
2.7.0



Re: [kernel-hardening] [PATCH v4 3/8] param: convert some "on"/"off" users to strtobool

2016-01-27 Thread David Brown

On Tue, Jan 19, 2016 at 10:08:37AM -0800, Kees Cook wrote:


diff --git a/kernel/time/tick-sched.c b/kernel/time/tick-sched.c
index 9cc20af58c76..f5ea98490ffa 100644
--- a/kernel/time/tick-sched.c
+++ b/kernel/time/tick-sched.c
@@ -387,20 +388,14 @@ void __init tick_nohz_init(void)
/*
 * NO HZ enabled ?
 */
-static int tick_nohz_enabled __read_mostly  = 1;
+static bool tick_nohz_enabled __read_mostly  = true;
unsigned long tick_nohz_active  __read_mostly;
/*
 * Enable / Disable tickless mode
 */


Just discovered this conflicts with a recent patch with
CONFIG_NO_HZ_COMMON:

commit 46373a15f65fe862f31c19a484acdf551f2b442f
Author: Jean Delvare 
Date:   Mon Jan 11 17:40:31 2016 +0100

time: nohz: Expose tick_nohz_enabled

kernel/time/tick-sched.c:390:6: error: conflicting types for ‘tick_nohz_enabled’
bool tick_nohz_enabled __read_mostly = true;
 ^
In file included from kernel/time/tick-internal.h:5:0,
from kernel/time/tick-sched.c:30:
include/linux/tick.h:101:12: note: previous declaration of ‘tick_nohz_enabled’ 
was here
extern int tick_nohz_enabled;
   ^

Fixing the compilation error, it compiles and boots on arm64, however
it isn't detecting the write (with the lkdtm test).  I'll continue
looking into what's preventing this.

David


Re: [kernel-hardening] [PATCH v4 0/8] introduce post-init read-only memory

2016-01-22 Thread David Brown

On Tue, Jan 19, 2016 at 10:08:34AM -0800, Kees Cook wrote:


This introduces __ro_after_init as a way to mark such memory, and uses
it on the x86 vDSO to kill an extant kernel exploitation method. Also
adds a new kernel parameter to help debug future use and adds an lkdtm
test to check the results.


I've tested these patches on 32-bit ARM using the provoke-crashes
test.  However, they do require CONFIG_ARM_KERNMEM_PERMS to be enabled
as well, which does incur additional memory usage.

Do we want to consider making CONFIG_ARM_KERNMEM_PERMS default y for
security reasons, and just document that memory-constrained systems
may want to turn it off?

I'll test the arm64 next.

David


Re: [kernel-hardening] [PATCH v4 0/8] introduce post-init read-only memory

2016-01-22 Thread David Brown

On Tue, Jan 19, 2016 at 10:08:34AM -0800, Kees Cook wrote:


This introduces __ro_after_init as a way to mark such memory, and uses
it on the x86 vDSO to kill an extant kernel exploitation method. Also
adds a new kernel parameter to help debug future use and adds an lkdtm
test to check the results.


I've tested these patches on 32-bit ARM using the provoke-crashes
test.  However, they do require CONFIG_ARM_KERNMEM_PERMS to be enabled
as well, which does incur additional memory usage.

Do we want to consider making CONFIG_ARM_KERNMEM_PERMS default y for
security reasons, and just document that memory-constrained systems
may want to turn it off?

I'll test the arm64 next.

David


Re: [PATCH] MAINTAINERS: Change QCOM entries

2015-12-12 Thread David Brown

On Fri, Dec 11, 2015 at 03:46:18PM -0600, Andy Gross wrote:

From: Andy Gross 

This patch changes the email address for Andy Gross and David Brown and drops
Kumar Gala.  In addition, it changes the location of the repository.

Signed-off-by: Andy Gross 
Signed-off-by: Andy Gross 


Acked-by: David Brown 
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH] MAINTAINERS: Change QCOM entries

2015-12-12 Thread David Brown

On Fri, Dec 11, 2015 at 03:46:18PM -0600, Andy Gross wrote:

From: Andy Gross <agr...@codeaurora.org>

This patch changes the email address for Andy Gross and David Brown and drops
Kumar Gala.  In addition, it changes the location of the repository.

Signed-off-by: Andy Gross <andy.gr...@linaro.org>
Signed-off-by: Andy Gross <agr...@codeaurora.org>


Acked-by: David Brown <david.br...@linaro.org>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH 3/3] ARM: config: Update msm_defconfig

2014-02-27 Thread David Brown

On Wed, Feb 26, 2014 at 06:16:34PM -0800, Stephen Boyd wrote:

Now that DT based platforms are split out of mach-msm into
mach-qcom, put back a non-DT based SoC into the msm_defconfig and
stop selecting unsupported drivers.

Signed-off-by: Stephen Boyd 
---
arch/arm/configs/msm_defconfig | 25 +++--
1 file changed, 3 insertions(+), 22 deletions(-)


Acked-by: David Brown 

Kumar, can you just pull this in with the other qcom changes from
Sephen?

Thanks,
David

--
sent by an employee of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH 3/3] ARM: config: Update msm_defconfig

2014-02-27 Thread David Brown

On Wed, Feb 26, 2014 at 06:16:34PM -0800, Stephen Boyd wrote:

Now that DT based platforms are split out of mach-msm into
mach-qcom, put back a non-DT based SoC into the msm_defconfig and
stop selecting unsupported drivers.

Signed-off-by: Stephen Boyd sb...@codeaurora.org
---
arch/arm/configs/msm_defconfig | 25 +++--
1 file changed, 3 insertions(+), 22 deletions(-)


Acked-by: David Brown dav...@codeaurora.org

Kumar, can you just pull this in with the other qcom changes from
Sephen?

Thanks,
David

--
sent by an employee of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH v4 00/15] usb: phy: msm: Fixes, cleanups and DT support

2013-12-20 Thread David Brown

On Thu, Dec 19, 2013 at 05:26:13PM -0600, Felipe Balbi wrote:


it's getting quite late for me. I still want to leave my stuff soaking
in linux-next for a while. I'll try my best, though, if you ack it ASAP


Thanks.  Patch 1 already has my Ack in it, and I've sent an ack for
number 6.

David

--
sent by an employee of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH 0/7] MSM patches for 3.14

2013-12-20 Thread David Brown
The following series contains a warning fix, a bit of cleanup, adds a
few more boards.  There are still numerous patches floating with
issues, but things seem to be moving in the right direction.

These have all been sent previously to the lists, and received reviews
and necessary acks.

Josh Cartwright (1):
  ARM: msm: trout: fix uninit var warning

Rohit Vaswani (2):
  ARM: msm: Add support for APQ8074 Dragonboard
  defconfig: msm_defconfig: Enable CONFIG_ARCH_MSM8974

Stephen Boyd (4):
  ARM: msm: Simplify ARCH_MSM_DT config
  ARM: dts: MSM8974: Add restart node
  ARM: dts: MSM8974: Add MMIO architected timer node
  ARM: msm_defconfig: Enable restart driver

 arch/arm/boot/dts/Makefile |  3 +-
 arch/arm/boot/dts/qcom-apq8074-dragonboard.dts |  6 ++
 arch/arm/boot/dts/qcom-msm8974.dtsi| 97 ++
 arch/arm/configs/msm_defconfig |  3 +
 arch/arm/mach-msm/Kconfig  | 15 +++-
 arch/arm/mach-msm/board-dt.c   |  9 +++
 arch/arm/mach-msm/board-trout.c| 12 ++--
 7 files changed, 136 insertions(+), 9 deletions(-)
 create mode 100644 arch/arm/boot/dts/qcom-apq8074-dragonboard.dts
 create mode 100644 arch/arm/boot/dts/qcom-msm8974.dtsi

-- 
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH 2/7] ARM: msm: Add support for APQ8074 Dragonboard

2013-12-20 Thread David Brown
From: Rohit Vaswani 

This patch adds basic board support for APQ8074 Dragonboard
which belongs to the Snapdragon 800 family.
For now, just support a basic machine with device tree.

Signed-off-by: Rohit Vaswani 
Acked-by: Kumar Gala 
Signed-off-by: David Brown 
---
 arch/arm/boot/dts/Makefile |  3 ++-
 arch/arm/boot/dts/qcom-apq8074-dragonboard.dts |  6 +
 arch/arm/boot/dts/qcom-msm8974.dtsi| 33 ++
 arch/arm/mach-msm/Kconfig  | 11 -
 arch/arm/mach-msm/board-dt.c   |  9 +++
 5 files changed, 60 insertions(+), 2 deletions(-)
 create mode 100644 arch/arm/boot/dts/qcom-apq8074-dragonboard.dts
 create mode 100644 arch/arm/boot/dts/qcom-msm8974.dtsi

diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
index d57c1a6..5b37694 100644
--- a/arch/arm/boot/dts/Makefile
+++ b/arch/arm/boot/dts/Makefile
@@ -105,7 +105,8 @@ dtb-$(CONFIG_ARCH_KIRKWOOD) += kirkwood-cloudbox.dtb \
kirkwood-ts219-6282.dtb
 dtb-$(CONFIG_ARCH_MARCO) += marco-evb.dtb
 dtb-$(CONFIG_ARCH_MSM) += qcom-msm8660-surf.dtb \
-   qcom-msm8960-cdp.dtb
+   qcom-msm8960-cdp.dtb \
+   qcom-apq8074-dragonboard.dtb
 dtb-$(CONFIG_ARCH_MVEBU) += armada-370-db.dtb \
armada-370-mirabox.dtb \
armada-370-netgear-rn102.dtb \
diff --git a/arch/arm/boot/dts/qcom-apq8074-dragonboard.dts 
b/arch/arm/boot/dts/qcom-apq8074-dragonboard.dts
new file mode 100644
index 000..13ac3e2
--- /dev/null
+++ b/arch/arm/boot/dts/qcom-apq8074-dragonboard.dts
@@ -0,0 +1,6 @@
+#include "qcom-msm8974.dtsi"
+
+/ {
+   model = "Qualcomm APQ8074 Dragonboard";
+   compatible = "qcom,apq8074-dragonboard", "qcom,apq8074";
+};
diff --git a/arch/arm/boot/dts/qcom-msm8974.dtsi 
b/arch/arm/boot/dts/qcom-msm8974.dtsi
new file mode 100644
index 000..2ebb4f0
--- /dev/null
+++ b/arch/arm/boot/dts/qcom-msm8974.dtsi
@@ -0,0 +1,33 @@
+/dts-v1/;
+
+#include "skeleton.dtsi"
+
+/ {
+   model = "Qualcomm MSM8974";
+   compatible = "qcom,msm8974";
+   interrupt-parent = <>;
+
+   soc: soc {
+   #address-cells = <1>;
+   #size-cells = <1>;
+   ranges;
+   compatible = "simple-bus";
+
+   intc: interrupt-controller@f900 {
+   compatible = "qcom,msm-qgic2";
+   interrupt-controller;
+   #interrupt-cells = <3>;
+   reg = <0xf900 0x1000>,
+ <0xf9002000 0x1000>;
+   };
+
+   timer {
+   compatible = "arm,armv7-timer";
+   interrupts = <1 2 0xf08>,
+<1 3 0xf08>,
+<1 4 0xf08>,
+<1 1 0xf08>;
+   clock-frequency = <1920>;
+   };
+   };
+};
diff --git a/arch/arm/mach-msm/Kconfig b/arch/arm/mach-msm/Kconfig
index 2586c28..5e5782d 100644
--- a/arch/arm/mach-msm/Kconfig
+++ b/arch/arm/mach-msm/Kconfig
@@ -58,9 +58,18 @@ config ARCH_MSM8960
select GPIO_MSM_V2
select MSM_SCM if SMP
 
+config ARCH_MSM8974
+   bool "MSM8974"
+   select ARM_GIC
+   select CPU_V7
+   select HAVE_ARM_ARCH_TIMER
+   select HAVE_SMP
+   select MSM_SCM if SMP
+   select USE_OF
+
 config ARCH_MSM_DT
def_bool y
-   depends on (ARCH_MSM8X60 || ARCH_MSM8960)
+   depends on (ARCH_MSM8X60 || ARCH_MSM8960 || ARCH_MSM8974)
select SPARSE_IRQ
select USE_OF
 
diff --git a/arch/arm/mach-msm/board-dt.c b/arch/arm/mach-msm/board-dt.c
index 16e6183..1f11d93 100644
--- a/arch/arm/mach-msm/board-dt.c
+++ b/arch/arm/mach-msm/board-dt.c
@@ -26,7 +26,16 @@ static const char * const msm_dt_match[] __initconst = {
NULL
 };
 
+static const char * const apq8074_dt_match[] __initconst = {
+   "qcom,apq8074-dragonboard",
+   NULL
+};
+
 DT_MACHINE_START(MSM_DT, "Qualcomm MSM (Flattened Device Tree)")
.smp = smp_ops(msm_smp_ops),
.dt_compat = msm_dt_match,
 MACHINE_END
+
+DT_MACHINE_START(APQ_DT, "Qualcomm MSM (Flattened Device Tree)")
+   .dt_compat = apq8074_dt_match,
+MACHINE_END
-- 
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH 3/7] defconfig: msm_defconfig: Enable CONFIG_ARCH_MSM8974

2013-12-20 Thread David Brown
From: Rohit Vaswani 

This patch enables MSM8974 build support.

Signed-off-by: Rohit Vaswani 
Signed-off-by: David Brown 
---
 arch/arm/configs/msm_defconfig | 1 +
 1 file changed, 1 insertion(+)

diff --git a/arch/arm/configs/msm_defconfig b/arch/arm/configs/msm_defconfig
index 690b5f9..0ed32e5 100644
--- a/arch/arm/configs/msm_defconfig
+++ b/arch/arm/configs/msm_defconfig
@@ -20,6 +20,7 @@ CONFIG_PARTITION_ADVANCED=y
 CONFIG_ARCH_MSM=y
 CONFIG_ARCH_MSM8X60=y
 CONFIG_ARCH_MSM8960=y
+CONFIG_ARCH_MSM8974=y
 CONFIG_SMP=y
 CONFIG_PREEMPT=y
 CONFIG_AEABI=y
-- 
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH 4/7] ARM: msm: Simplify ARCH_MSM_DT config

2013-12-20 Thread David Brown
From: Stephen Boyd 

This doesn't need to be a def_bool y. Instead we can have every
DT supported platform select ARCH_MSM_DT and we achieve the same
thing with less chance of conflicts.

Signed-off-by: Stephen Boyd 
Signed-off-by: David Brown 
---
 arch/arm/mach-msm/Kconfig | 6 --
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/arch/arm/mach-msm/Kconfig b/arch/arm/mach-msm/Kconfig
index 5e5782d..702553b 100644
--- a/arch/arm/mach-msm/Kconfig
+++ b/arch/arm/mach-msm/Kconfig
@@ -44,6 +44,7 @@ endchoice
 
 config ARCH_MSM8X60
bool "MSM8X60"
+   select ARCH_MSM_DT
select ARM_GIC
select CPU_V7
select GPIO_MSM_V2
@@ -52,6 +53,7 @@ config ARCH_MSM8X60
 
 config ARCH_MSM8960
bool "MSM8960"
+   select ARCH_MSM_DT
select ARM_GIC
select CPU_V7
select HAVE_SMP
@@ -60,6 +62,7 @@ config ARCH_MSM8960
 
 config ARCH_MSM8974
bool "MSM8974"
+   select ARCH_MSM_DT
select ARM_GIC
select CPU_V7
select HAVE_ARM_ARCH_TIMER
@@ -68,8 +71,7 @@ config ARCH_MSM8974
select USE_OF
 
 config ARCH_MSM_DT
-   def_bool y
-   depends on (ARCH_MSM8X60 || ARCH_MSM8960 || ARCH_MSM8974)
+   bool
select SPARSE_IRQ
select USE_OF
 
-- 
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH 5/7] ARM: dts: MSM8974: Add restart node

2013-12-20 Thread David Brown
From: Stephen Boyd 

Add the restart node so we can reboot the device.

Signed-off-by: Stephen Boyd 
Signed-off-by: David Brown 
---
 arch/arm/boot/dts/qcom-msm8974.dtsi | 5 +
 1 file changed, 5 insertions(+)

diff --git a/arch/arm/boot/dts/qcom-msm8974.dtsi 
b/arch/arm/boot/dts/qcom-msm8974.dtsi
index 2ebb4f0..df18637 100644
--- a/arch/arm/boot/dts/qcom-msm8974.dtsi
+++ b/arch/arm/boot/dts/qcom-msm8974.dtsi
@@ -29,5 +29,10 @@
 <1 1 0xf08>;
clock-frequency = <1920>;
};
+
+   restart@fc4ab000 {
+   compatible = "qcom,pshold";
+   reg = <0xfc4ab000 0x4>;
+   };
};
 };
-- 
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH 6/7] ARM: dts: MSM8974: Add MMIO architected timer node

2013-12-20 Thread David Brown
From: Stephen Boyd 

Add the mmio architected timer node.

Signed-off-by: Stephen Boyd 
Signed-off-by: David Brown 
---
 arch/arm/boot/dts/qcom-msm8974.dtsi | 59 +
 1 file changed, 59 insertions(+)

diff --git a/arch/arm/boot/dts/qcom-msm8974.dtsi 
b/arch/arm/boot/dts/qcom-msm8974.dtsi
index df18637..6ac9496 100644
--- a/arch/arm/boot/dts/qcom-msm8974.dtsi
+++ b/arch/arm/boot/dts/qcom-msm8974.dtsi
@@ -30,6 +30,65 @@
clock-frequency = <1920>;
};
 
+   timer@f902 {
+   #address-cells = <1>;
+   #size-cells = <1>;
+   ranges;
+   compatible = "arm,armv7-timer-mem";
+   reg = <0xf902 0x1000>;
+   clock-frequency = <1920>;
+
+   frame@f9021000 {
+   frame-number = <0>;
+   interrupts = <0 8 0x4>,
+<0 7 0x4>;
+   reg = <0xf9021000 0x1000>,
+ <0xf9022000 0x1000>;
+   };
+
+   frame@f9023000 {
+   frame-number = <1>;
+   interrupts = <0 9 0x4>;
+   reg = <0xf9023000 0x1000>;
+   status = "disabled";
+   };
+
+   frame@f9024000 {
+   frame-number = <2>;
+   interrupts = <0 10 0x4>;
+   reg = <0xf9024000 0x1000>;
+   status = "disabled";
+   };
+
+   frame@f9025000 {
+   frame-number = <3>;
+   interrupts = <0 11 0x4>;
+   reg = <0xf9025000 0x1000>;
+   status = "disabled";
+   };
+
+   frame@f9026000 {
+   frame-number = <4>;
+   interrupts = <0 12 0x4>;
+   reg = <0xf9026000 0x1000>;
+   status = "disabled";
+   };
+
+   frame@f9027000 {
+   frame-number = <5>;
+   interrupts = <0 13 0x4>;
+   reg = <0xf9027000 0x1000>;
+   status = "disabled";
+   };
+
+   frame@f9028000 {
+   frame-number = <6>;
+   interrupts = <0 14 0x4>;
+   reg = <0xf9028000 0x1000>;
+   status = "disabled";
+   };
+   };
+
restart@fc4ab000 {
compatible = "qcom,pshold";
reg = <0xfc4ab000 0x4>;
-- 
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH 7/7] ARM: msm_defconfig: Enable restart driver

2013-12-20 Thread David Brown
From: Stephen Boyd 

Signed-off-by: Stephen Boyd 
Signed-off-by: David Brown 
---
 arch/arm/configs/msm_defconfig | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/arch/arm/configs/msm_defconfig b/arch/arm/configs/msm_defconfig
index 0ed32e5..c5698b7 100644
--- a/arch/arm/configs/msm_defconfig
+++ b/arch/arm/configs/msm_defconfig
@@ -89,6 +89,8 @@ CONFIG_SSBI=y
 CONFIG_DEBUG_GPIO=y
 CONFIG_GPIO_SYSFS=y
 CONFIG_POWER_SUPPLY=y
+CONFIG_POWER_RESET=y
+CONFIG_POWER_RESET_MSM=y
 CONFIG_THERMAL=y
 CONFIG_REGULATOR=y
 CONFIG_MEDIA_SUPPORT=y
-- 
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH 1/7] ARM: msm: trout: fix uninit var warning

2013-12-20 Thread David Brown
From: Josh Cartwright 

Fix the following warning when !CONFIG_MMC:

arch/arm/mach-msm/board-trout.c: In function 'trout_init':
arch/arm/mach-msm/board-trout.c:67:6: warning: unused variable 'rc' 
[-Wunused-variable]
  int rc;
  ^

Also, while we're here, rework explicit printk(KERN_CRIT..) to use
pr_crit.

Signed-off-by: Josh Cartwright 
Signed-off-by: David Brown 
---
 arch/arm/mach-msm/board-trout.c | 12 ++--
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/arch/arm/mach-msm/board-trout.c b/arch/arm/mach-msm/board-trout.c
index ccf6621..015d544 100644
--- a/arch/arm/mach-msm/board-trout.c
+++ b/arch/arm/mach-msm/board-trout.c
@@ -13,6 +13,7 @@
  * GNU General Public License for more details.
  *
  */
+#define pr_fmt(fmt) "%s: " fmt, __func__
 
 #include 
 #include 
@@ -68,12 +69,11 @@ static void __init trout_init(void)
 
platform_add_devices(devices, ARRAY_SIZE(devices));
 
-#ifdef CONFIG_MMC
-rc = trout_init_mmc(system_rev);
-if (rc)
-printk(KERN_CRIT "%s: MMC init failure (%d)\n", __func__, rc);
-#endif
-
+   if (IS_ENABLED(CONFIG_MMC)) {
+   rc = trout_init_mmc(system_rev);
+   if (rc)
+   pr_crit("MMC init failure (%d)\n", rc);
+   }
 }
 
 static struct map_desc trout_io_desc[] __initdata = {
-- 
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH 1/7] ARM: msm: trout: fix uninit var warning

2013-12-20 Thread David Brown
From: Josh Cartwright jo...@codeaurora.org

Fix the following warning when !CONFIG_MMC:

arch/arm/mach-msm/board-trout.c: In function 'trout_init':
arch/arm/mach-msm/board-trout.c:67:6: warning: unused variable 'rc' 
[-Wunused-variable]
  int rc;
  ^

Also, while we're here, rework explicit printk(KERN_CRIT..) to use
pr_crit.

Signed-off-by: Josh Cartwright jo...@codeaurora.org
Signed-off-by: David Brown dav...@codeaurora.org
---
 arch/arm/mach-msm/board-trout.c | 12 ++--
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/arch/arm/mach-msm/board-trout.c b/arch/arm/mach-msm/board-trout.c
index ccf6621..015d544 100644
--- a/arch/arm/mach-msm/board-trout.c
+++ b/arch/arm/mach-msm/board-trout.c
@@ -13,6 +13,7 @@
  * GNU General Public License for more details.
  *
  */
+#define pr_fmt(fmt) %s:  fmt, __func__
 
 #include linux/kernel.h
 #include linux/init.h
@@ -68,12 +69,11 @@ static void __init trout_init(void)
 
platform_add_devices(devices, ARRAY_SIZE(devices));
 
-#ifdef CONFIG_MMC
-rc = trout_init_mmc(system_rev);
-if (rc)
-printk(KERN_CRIT %s: MMC init failure (%d)\n, __func__, rc);
-#endif
-
+   if (IS_ENABLED(CONFIG_MMC)) {
+   rc = trout_init_mmc(system_rev);
+   if (rc)
+   pr_crit(MMC init failure (%d)\n, rc);
+   }
 }
 
 static struct map_desc trout_io_desc[] __initdata = {
-- 
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation

--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH 7/7] ARM: msm_defconfig: Enable restart driver

2013-12-20 Thread David Brown
From: Stephen Boyd sb...@codeaurora.org

Signed-off-by: Stephen Boyd sb...@codeaurora.org
Signed-off-by: David Brown dav...@codeaurora.org
---
 arch/arm/configs/msm_defconfig | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/arch/arm/configs/msm_defconfig b/arch/arm/configs/msm_defconfig
index 0ed32e5..c5698b7 100644
--- a/arch/arm/configs/msm_defconfig
+++ b/arch/arm/configs/msm_defconfig
@@ -89,6 +89,8 @@ CONFIG_SSBI=y
 CONFIG_DEBUG_GPIO=y
 CONFIG_GPIO_SYSFS=y
 CONFIG_POWER_SUPPLY=y
+CONFIG_POWER_RESET=y
+CONFIG_POWER_RESET_MSM=y
 CONFIG_THERMAL=y
 CONFIG_REGULATOR=y
 CONFIG_MEDIA_SUPPORT=y
-- 
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation

--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH 6/7] ARM: dts: MSM8974: Add MMIO architected timer node

2013-12-20 Thread David Brown
From: Stephen Boyd sb...@codeaurora.org

Add the mmio architected timer node.

Signed-off-by: Stephen Boyd sb...@codeaurora.org
Signed-off-by: David Brown dav...@codeaurora.org
---
 arch/arm/boot/dts/qcom-msm8974.dtsi | 59 +
 1 file changed, 59 insertions(+)

diff --git a/arch/arm/boot/dts/qcom-msm8974.dtsi 
b/arch/arm/boot/dts/qcom-msm8974.dtsi
index df18637..6ac9496 100644
--- a/arch/arm/boot/dts/qcom-msm8974.dtsi
+++ b/arch/arm/boot/dts/qcom-msm8974.dtsi
@@ -30,6 +30,65 @@
clock-frequency = 1920;
};
 
+   timer@f902 {
+   #address-cells = 1;
+   #size-cells = 1;
+   ranges;
+   compatible = arm,armv7-timer-mem;
+   reg = 0xf902 0x1000;
+   clock-frequency = 1920;
+
+   frame@f9021000 {
+   frame-number = 0;
+   interrupts = 0 8 0x4,
+0 7 0x4;
+   reg = 0xf9021000 0x1000,
+ 0xf9022000 0x1000;
+   };
+
+   frame@f9023000 {
+   frame-number = 1;
+   interrupts = 0 9 0x4;
+   reg = 0xf9023000 0x1000;
+   status = disabled;
+   };
+
+   frame@f9024000 {
+   frame-number = 2;
+   interrupts = 0 10 0x4;
+   reg = 0xf9024000 0x1000;
+   status = disabled;
+   };
+
+   frame@f9025000 {
+   frame-number = 3;
+   interrupts = 0 11 0x4;
+   reg = 0xf9025000 0x1000;
+   status = disabled;
+   };
+
+   frame@f9026000 {
+   frame-number = 4;
+   interrupts = 0 12 0x4;
+   reg = 0xf9026000 0x1000;
+   status = disabled;
+   };
+
+   frame@f9027000 {
+   frame-number = 5;
+   interrupts = 0 13 0x4;
+   reg = 0xf9027000 0x1000;
+   status = disabled;
+   };
+
+   frame@f9028000 {
+   frame-number = 6;
+   interrupts = 0 14 0x4;
+   reg = 0xf9028000 0x1000;
+   status = disabled;
+   };
+   };
+
restart@fc4ab000 {
compatible = qcom,pshold;
reg = 0xfc4ab000 0x4;
-- 
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation

--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH 4/7] ARM: msm: Simplify ARCH_MSM_DT config

2013-12-20 Thread David Brown
From: Stephen Boyd sb...@codeaurora.org

This doesn't need to be a def_bool y. Instead we can have every
DT supported platform select ARCH_MSM_DT and we achieve the same
thing with less chance of conflicts.

Signed-off-by: Stephen Boyd sb...@codeaurora.org
Signed-off-by: David Brown dav...@codeaurora.org
---
 arch/arm/mach-msm/Kconfig | 6 --
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/arch/arm/mach-msm/Kconfig b/arch/arm/mach-msm/Kconfig
index 5e5782d..702553b 100644
--- a/arch/arm/mach-msm/Kconfig
+++ b/arch/arm/mach-msm/Kconfig
@@ -44,6 +44,7 @@ endchoice
 
 config ARCH_MSM8X60
bool MSM8X60
+   select ARCH_MSM_DT
select ARM_GIC
select CPU_V7
select GPIO_MSM_V2
@@ -52,6 +53,7 @@ config ARCH_MSM8X60
 
 config ARCH_MSM8960
bool MSM8960
+   select ARCH_MSM_DT
select ARM_GIC
select CPU_V7
select HAVE_SMP
@@ -60,6 +62,7 @@ config ARCH_MSM8960
 
 config ARCH_MSM8974
bool MSM8974
+   select ARCH_MSM_DT
select ARM_GIC
select CPU_V7
select HAVE_ARM_ARCH_TIMER
@@ -68,8 +71,7 @@ config ARCH_MSM8974
select USE_OF
 
 config ARCH_MSM_DT
-   def_bool y
-   depends on (ARCH_MSM8X60 || ARCH_MSM8960 || ARCH_MSM8974)
+   bool
select SPARSE_IRQ
select USE_OF
 
-- 
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation

--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH 5/7] ARM: dts: MSM8974: Add restart node

2013-12-20 Thread David Brown
From: Stephen Boyd sb...@codeaurora.org

Add the restart node so we can reboot the device.

Signed-off-by: Stephen Boyd sb...@codeaurora.org
Signed-off-by: David Brown dav...@codeaurora.org
---
 arch/arm/boot/dts/qcom-msm8974.dtsi | 5 +
 1 file changed, 5 insertions(+)

diff --git a/arch/arm/boot/dts/qcom-msm8974.dtsi 
b/arch/arm/boot/dts/qcom-msm8974.dtsi
index 2ebb4f0..df18637 100644
--- a/arch/arm/boot/dts/qcom-msm8974.dtsi
+++ b/arch/arm/boot/dts/qcom-msm8974.dtsi
@@ -29,5 +29,10 @@
 1 1 0xf08;
clock-frequency = 1920;
};
+
+   restart@fc4ab000 {
+   compatible = qcom,pshold;
+   reg = 0xfc4ab000 0x4;
+   };
};
 };
-- 
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation

--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH 3/7] defconfig: msm_defconfig: Enable CONFIG_ARCH_MSM8974

2013-12-20 Thread David Brown
From: Rohit Vaswani rvasw...@codeaurora.org

This patch enables MSM8974 build support.

Signed-off-by: Rohit Vaswani rvasw...@codeaurora.org
Signed-off-by: David Brown dav...@codeaurora.org
---
 arch/arm/configs/msm_defconfig | 1 +
 1 file changed, 1 insertion(+)

diff --git a/arch/arm/configs/msm_defconfig b/arch/arm/configs/msm_defconfig
index 690b5f9..0ed32e5 100644
--- a/arch/arm/configs/msm_defconfig
+++ b/arch/arm/configs/msm_defconfig
@@ -20,6 +20,7 @@ CONFIG_PARTITION_ADVANCED=y
 CONFIG_ARCH_MSM=y
 CONFIG_ARCH_MSM8X60=y
 CONFIG_ARCH_MSM8960=y
+CONFIG_ARCH_MSM8974=y
 CONFIG_SMP=y
 CONFIG_PREEMPT=y
 CONFIG_AEABI=y
-- 
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation

--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH 2/7] ARM: msm: Add support for APQ8074 Dragonboard

2013-12-20 Thread David Brown
From: Rohit Vaswani rvasw...@codeaurora.org

This patch adds basic board support for APQ8074 Dragonboard
which belongs to the Snapdragon 800 family.
For now, just support a basic machine with device tree.

Signed-off-by: Rohit Vaswani rvasw...@codeaurora.org
Acked-by: Kumar Gala ga...@codeaurora.org
Signed-off-by: David Brown dav...@codeaurora.org
---
 arch/arm/boot/dts/Makefile |  3 ++-
 arch/arm/boot/dts/qcom-apq8074-dragonboard.dts |  6 +
 arch/arm/boot/dts/qcom-msm8974.dtsi| 33 ++
 arch/arm/mach-msm/Kconfig  | 11 -
 arch/arm/mach-msm/board-dt.c   |  9 +++
 5 files changed, 60 insertions(+), 2 deletions(-)
 create mode 100644 arch/arm/boot/dts/qcom-apq8074-dragonboard.dts
 create mode 100644 arch/arm/boot/dts/qcom-msm8974.dtsi

diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
index d57c1a6..5b37694 100644
--- a/arch/arm/boot/dts/Makefile
+++ b/arch/arm/boot/dts/Makefile
@@ -105,7 +105,8 @@ dtb-$(CONFIG_ARCH_KIRKWOOD) += kirkwood-cloudbox.dtb \
kirkwood-ts219-6282.dtb
 dtb-$(CONFIG_ARCH_MARCO) += marco-evb.dtb
 dtb-$(CONFIG_ARCH_MSM) += qcom-msm8660-surf.dtb \
-   qcom-msm8960-cdp.dtb
+   qcom-msm8960-cdp.dtb \
+   qcom-apq8074-dragonboard.dtb
 dtb-$(CONFIG_ARCH_MVEBU) += armada-370-db.dtb \
armada-370-mirabox.dtb \
armada-370-netgear-rn102.dtb \
diff --git a/arch/arm/boot/dts/qcom-apq8074-dragonboard.dts 
b/arch/arm/boot/dts/qcom-apq8074-dragonboard.dts
new file mode 100644
index 000..13ac3e2
--- /dev/null
+++ b/arch/arm/boot/dts/qcom-apq8074-dragonboard.dts
@@ -0,0 +1,6 @@
+#include qcom-msm8974.dtsi
+
+/ {
+   model = Qualcomm APQ8074 Dragonboard;
+   compatible = qcom,apq8074-dragonboard, qcom,apq8074;
+};
diff --git a/arch/arm/boot/dts/qcom-msm8974.dtsi 
b/arch/arm/boot/dts/qcom-msm8974.dtsi
new file mode 100644
index 000..2ebb4f0
--- /dev/null
+++ b/arch/arm/boot/dts/qcom-msm8974.dtsi
@@ -0,0 +1,33 @@
+/dts-v1/;
+
+#include skeleton.dtsi
+
+/ {
+   model = Qualcomm MSM8974;
+   compatible = qcom,msm8974;
+   interrupt-parent = intc;
+
+   soc: soc {
+   #address-cells = 1;
+   #size-cells = 1;
+   ranges;
+   compatible = simple-bus;
+
+   intc: interrupt-controller@f900 {
+   compatible = qcom,msm-qgic2;
+   interrupt-controller;
+   #interrupt-cells = 3;
+   reg = 0xf900 0x1000,
+ 0xf9002000 0x1000;
+   };
+
+   timer {
+   compatible = arm,armv7-timer;
+   interrupts = 1 2 0xf08,
+1 3 0xf08,
+1 4 0xf08,
+1 1 0xf08;
+   clock-frequency = 1920;
+   };
+   };
+};
diff --git a/arch/arm/mach-msm/Kconfig b/arch/arm/mach-msm/Kconfig
index 2586c28..5e5782d 100644
--- a/arch/arm/mach-msm/Kconfig
+++ b/arch/arm/mach-msm/Kconfig
@@ -58,9 +58,18 @@ config ARCH_MSM8960
select GPIO_MSM_V2
select MSM_SCM if SMP
 
+config ARCH_MSM8974
+   bool MSM8974
+   select ARM_GIC
+   select CPU_V7
+   select HAVE_ARM_ARCH_TIMER
+   select HAVE_SMP
+   select MSM_SCM if SMP
+   select USE_OF
+
 config ARCH_MSM_DT
def_bool y
-   depends on (ARCH_MSM8X60 || ARCH_MSM8960)
+   depends on (ARCH_MSM8X60 || ARCH_MSM8960 || ARCH_MSM8974)
select SPARSE_IRQ
select USE_OF
 
diff --git a/arch/arm/mach-msm/board-dt.c b/arch/arm/mach-msm/board-dt.c
index 16e6183..1f11d93 100644
--- a/arch/arm/mach-msm/board-dt.c
+++ b/arch/arm/mach-msm/board-dt.c
@@ -26,7 +26,16 @@ static const char * const msm_dt_match[] __initconst = {
NULL
 };
 
+static const char * const apq8074_dt_match[] __initconst = {
+   qcom,apq8074-dragonboard,
+   NULL
+};
+
 DT_MACHINE_START(MSM_DT, Qualcomm MSM (Flattened Device Tree))
.smp = smp_ops(msm_smp_ops),
.dt_compat = msm_dt_match,
 MACHINE_END
+
+DT_MACHINE_START(APQ_DT, Qualcomm MSM (Flattened Device Tree))
+   .dt_compat = apq8074_dt_match,
+MACHINE_END
-- 
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation

--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH 0/7] MSM patches for 3.14

2013-12-20 Thread David Brown
The following series contains a warning fix, a bit of cleanup, adds a
few more boards.  There are still numerous patches floating with
issues, but things seem to be moving in the right direction.

These have all been sent previously to the lists, and received reviews
and necessary acks.

Josh Cartwright (1):
  ARM: msm: trout: fix uninit var warning

Rohit Vaswani (2):
  ARM: msm: Add support for APQ8074 Dragonboard
  defconfig: msm_defconfig: Enable CONFIG_ARCH_MSM8974

Stephen Boyd (4):
  ARM: msm: Simplify ARCH_MSM_DT config
  ARM: dts: MSM8974: Add restart node
  ARM: dts: MSM8974: Add MMIO architected timer node
  ARM: msm_defconfig: Enable restart driver

 arch/arm/boot/dts/Makefile |  3 +-
 arch/arm/boot/dts/qcom-apq8074-dragonboard.dts |  6 ++
 arch/arm/boot/dts/qcom-msm8974.dtsi| 97 ++
 arch/arm/configs/msm_defconfig |  3 +
 arch/arm/mach-msm/Kconfig  | 15 +++-
 arch/arm/mach-msm/board-dt.c   |  9 +++
 arch/arm/mach-msm/board-trout.c| 12 ++--
 7 files changed, 136 insertions(+), 9 deletions(-)
 create mode 100644 arch/arm/boot/dts/qcom-apq8074-dragonboard.dts
 create mode 100644 arch/arm/boot/dts/qcom-msm8974.dtsi

-- 
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation

--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH v4 00/15] usb: phy: msm: Fixes, cleanups and DT support

2013-12-20 Thread David Brown

On Thu, Dec 19, 2013 at 05:26:13PM -0600, Felipe Balbi wrote:


it's getting quite late for me. I still want to leave my stuff soaking
in linux-next for a while. I'll try my best, though, if you ack it ASAP


Thanks.  Patch 1 already has my Ack in it, and I've sent an ack for
number 6.

David

--
sent by an employee of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH v4 06/15] usb: phy: msm: Replace custom enum usb_mode_type with enum usb_dr_mode

2013-12-19 Thread David Brown

On Tue, Nov 12, 2013 at 04:51:41PM +0200, Ivan T. Ivanov wrote:

From: "Ivan T. Ivanov" 

Use enum usb_dr_mode and drop default usb_dr_mode from platform data.

USB DT bindings states: dr_mode: "...In case this attribute isn't
passed via DT, USB DRD controllers should default to OTG...",
so remove redundand field.

Signed-off-by: Ivan T. Ivanov 
---
arch/arm/mach-msm/board-msm7x30.c |2 +-
arch/arm/mach-msm/board-qsd8x50.c |    2 +-


Acked-by: David Brown 

--
sent by an employee of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH v4 00/15] usb: phy: msm: Fixes, cleanups and DT support

2013-12-19 Thread David Brown

On Tue, Nov 26, 2013 at 10:38:46AM -0600, Felipe Balbi wrote:

Hi,

On Tue, Nov 12, 2013 at 04:51:35PM +0200, Ivan T. Ivanov wrote:

From: "Ivan T. Ivanov" 

Hi,

Patches have been tested on top of Stephen's clock controller
patches[1] and recent fixes for chipidea msm glue layer driver
posted here[2]. Hardware platform AP8074 DragonBoard. Only gadget
mode utilized for now.

CV Test Suite engine "Chapter 9 tests" are passing except
"Halt Endpoint Test".

usbtest driver report following failure:
test 13 --> 32 (Broken pipe) ep 81 couldn't set halt, -32

This will be investigated further.
Patches could be applied cleanly on top of the usb-3.13-rc1.

Regards,
Ivan

[1] http://comments.gmane.org/gmane.linux.ports.arm.msm/5375
[2] https://lkml.org/lkml/2013/11/11/310


I wonder how will this be taken upstream provided there are
interdependencies between arch/ and drivers/ patches.

I can Ack patches but I'd really like to avoid merging of topic branches
all over the place :-s


Ivan's patches are the only ones in this window that touch these board
files in MSM.  It's probably easiest if I ack them, and you can bring
the whole series through your tree.

David

--
sent by an employee of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH v4 00/15] usb: phy: msm: Fixes, cleanups and DT support

2013-12-19 Thread David Brown

On Tue, Nov 26, 2013 at 10:38:46AM -0600, Felipe Balbi wrote:

Hi,

On Tue, Nov 12, 2013 at 04:51:35PM +0200, Ivan T. Ivanov wrote:

From: Ivan T. Ivanov iiva...@mm-sol.com

Hi,

Patches have been tested on top of Stephen's clock controller
patches[1] and recent fixes for chipidea msm glue layer driver
posted here[2]. Hardware platform AP8074 DragonBoard. Only gadget
mode utilized for now.

CV Test Suite engine Chapter 9 tests are passing except
Halt Endpoint Test.

usbtest driver report following failure:
test 13 -- 32 (Broken pipe) ep 81 couldn't set halt, -32

This will be investigated further.
Patches could be applied cleanly on top of the usb-3.13-rc1.

Regards,
Ivan

[1] http://comments.gmane.org/gmane.linux.ports.arm.msm/5375
[2] https://lkml.org/lkml/2013/11/11/310


I wonder how will this be taken upstream provided there are
interdependencies between arch/ and drivers/ patches.

I can Ack patches but I'd really like to avoid merging of topic branches
all over the place :-s


Ivan's patches are the only ones in this window that touch these board
files in MSM.  It's probably easiest if I ack them, and you can bring
the whole series through your tree.

David

--
sent by an employee of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH v4 06/15] usb: phy: msm: Replace custom enum usb_mode_type with enum usb_dr_mode

2013-12-19 Thread David Brown

On Tue, Nov 12, 2013 at 04:51:41PM +0200, Ivan T. Ivanov wrote:

From: Ivan T. Ivanov iiva...@mm-sol.com

Use enum usb_dr_mode and drop default usb_dr_mode from platform data.

USB DT bindings states: dr_mode: ...In case this attribute isn't
passed via DT, USB DRD controllers should default to OTG...,
so remove redundand field.

Signed-off-by: Ivan T. Ivanov iiva...@mm-sol.com
---
arch/arm/mach-msm/board-msm7x30.c |2 +-
arch/arm/mach-msm/board-qsd8x50.c |2 +-


Acked-by: David Brown dav...@codeaurora.org

--
sent by an employee of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH] gpio: Add support for SX151x SPI GPIO Expanders

2013-11-12 Thread David Brown

On Tue, Nov 12, 2013 at 08:32:20PM +0100, Linus Walleij wrote:

Gregory,

this is your driver, can you take a look at this patch?


I don't think Gregory has this email address any more, and I don't
know another address for him.

David


Yours,
Linus Walleij


On Thu, Oct 24, 2013 at 11:51 AM, Viktar Palstsiuk
 wrote:


Isolated i2c specific parts and
added spi bindings for the sx151x devices.

Signed-off-by: Viktar Palstsiuk 
---
 drivers/gpio/Kconfig   |  10 +-
 drivers/gpio/gpio-sx150x.c | 267 +++--
 2 files changed, 239 insertions(+), 38 deletions(-)

diff --git a/drivers/gpio/Kconfig b/drivers/gpio/Kconfig
index b6ed304..4d296ab 100644
--- a/drivers/gpio/Kconfig
+++ b/drivers/gpio/Kconfig
@@ -465,15 +465,15 @@ config GPIO_RC5T583
  of RC5T583 device through standard gpio library.

 config GPIO_SX150X
-   bool "Semtech SX150x I2C GPIO expander"
-   depends on I2C=y
+   bool "Semtech SX15xx I2C/SPI GPIO expander"
+   depends on SPI_MASTER || I2C
default n
help
- Say yes here to provide support for Semtech SX150-series I2C
+ Say yes here to provide support for Semtech SX15xx-series I2C/SPI
  GPIO expanders. Compatible models include:

- 8 bits:  sx1508q
- 16 bits: sx1509q
+ 8 bits:  sx1508q, sx1511
+ 16 bits: sx1509q, sx1512

 config GPIO_STMPE
bool "STMPE GPIOs"
diff --git a/drivers/gpio/gpio-sx150x.c b/drivers/gpio/gpio-sx150x.c
index d2983e9..bee1661 100644
--- a/drivers/gpio/gpio-sx150x.c
+++ b/drivers/gpio/gpio-sx150x.c
@@ -22,9 +22,16 @@
 #include 
 #include 
 #include 
+#include 
 #include 
 #include 

+/**
+ * SX15xx types supported by driver
+ */
+#define SX15_TYPE_8_GPIOS  0
+#define SX15_TYPE_16_GPIOS 1
+
 #define NO_UPDATE_PENDING  -1

 struct sx150x_device_data {
@@ -43,9 +50,17 @@ struct sx150x_device_data {
u8 ngpios;
 };

+struct sx150x_chip;
+
+struct sx15xx_ops {
+   s32 (*read)(struct device *dev, u8 reg, u8 *val);
+   s32 (*write)(struct device *dev, u8 reg, u8 val);
+};
+
 struct sx150x_chip {
struct gpio_chip gpio_chip;
-   struct i2c_client   *client;
+   struct device   *dev;
+   const struct sx15xx_ops *ops;
const struct sx150x_device_data *dev_cfg;
int  irq_summary;
int  irq_base;
@@ -59,7 +74,7 @@ struct sx150x_chip {
 };

 static const struct sx150x_device_data sx150x_devices[] = {
-   [0] = { /* sx1508q */
+   [SX15_TYPE_8_GPIOS] = { /* sx1508q */
.reg_pullup   = 0x03,
.reg_pulldn   = 0x04,
.reg_drain= 0x05,
@@ -74,7 +89,7 @@ static const struct sx150x_device_data sx150x_devices[] = {
.reg_reset= 0x7d,
.ngpios   = 8
},
-   [1] = { /* sx1509q */
+   [SX15_TYPE_16_GPIOS] = { /* sx1509q */
.reg_pullup   = 0x07,
.reg_pulldn   = 0x09,
.reg_drain= 0x0b,
@@ -91,37 +106,86 @@ static const struct sx150x_device_data sx150x_devices[] = {
},
 };

-static const struct i2c_device_id sx150x_id[] = {
-   {"sx1508q", 0},
-   {"sx1509q", 1},
-   {}
-};
-MODULE_DEVICE_TABLE(i2c, sx150x_id);
+#ifdef CONFIG_I2C

-static s32 sx150x_i2c_write(struct i2c_client *client, u8 reg, u8 val)
+static s32 sx150x_i2c_write(struct device *dev, u8 reg, u8 val)
 {
+   struct i2c_client *client = to_i2c_client(dev);
s32 err = i2c_smbus_write_byte_data(client, reg, val);

if (err < 0)
-   dev_warn(>dev,
+   dev_warn(dev,
"i2c write fail: can't write %02x to %02x: %d\n",
val, reg, err);
return err;
 }

-static s32 sx150x_i2c_read(struct i2c_client *client, u8 reg, u8 *val)
+static s32 sx150x_i2c_read(struct device *dev, u8 reg, u8 *val)
 {
+   struct i2c_client *client = to_i2c_client(dev);
s32 err = i2c_smbus_read_byte_data(client, reg);

if (err >= 0)
*val = err;
else
-   dev_warn(>dev,
+   dev_warn(dev,
"i2c read fail: can't read from %02x: %d\n",
reg, err);
return err;
 }

+static const struct sx15xx_ops sx150x_ops = {
+   .read   = sx150x_i2c_read,
+   .write  = sx150x_i2c_write,
+};
+
+#endif /* CONFIG_I2C */
+
+#ifdef CONFIG_SPI_MASTER
+
+static s32 sx151x_spi_write(struct device *dev, u8 reg, u8 val)
+{
+   struct spi_device *spi = to_spi_device(dev);
+   u8 tx[2];
+   s32 err;
+
+   tx[0] = reg;
+   tx[1] = val;
+
+   err = spi_write(spi, tx, sizeof tx);
+
+   if (err < 0)
+   dev_warn(dev,
+   "spi write fail: can't write %02x to %02x: %d\n",
+   val, reg, err);
+

Re: [PATCH] gpio: Add support for SX151x SPI GPIO Expanders

2013-11-12 Thread David Brown

On Tue, Nov 12, 2013 at 08:32:20PM +0100, Linus Walleij wrote:

Gregory,

this is your driver, can you take a look at this patch?


I don't think Gregory has this email address any more, and I don't
know another address for him.

David


Yours,
Linus Walleij


On Thu, Oct 24, 2013 at 11:51 AM, Viktar Palstsiuk
viktar.palsts...@promwad.com wrote:


Isolated i2c specific parts and
added spi bindings for the sx151x devices.

Signed-off-by: Viktar Palstsiuk viktar.palsts...@promwad.com
---
 drivers/gpio/Kconfig   |  10 +-
 drivers/gpio/gpio-sx150x.c | 267 +++--
 2 files changed, 239 insertions(+), 38 deletions(-)

diff --git a/drivers/gpio/Kconfig b/drivers/gpio/Kconfig
index b6ed304..4d296ab 100644
--- a/drivers/gpio/Kconfig
+++ b/drivers/gpio/Kconfig
@@ -465,15 +465,15 @@ config GPIO_RC5T583
  of RC5T583 device through standard gpio library.

 config GPIO_SX150X
-   bool Semtech SX150x I2C GPIO expander
-   depends on I2C=y
+   bool Semtech SX15xx I2C/SPI GPIO expander
+   depends on SPI_MASTER || I2C
default n
help
- Say yes here to provide support for Semtech SX150-series I2C
+ Say yes here to provide support for Semtech SX15xx-series I2C/SPI
  GPIO expanders. Compatible models include:

- 8 bits:  sx1508q
- 16 bits: sx1509q
+ 8 bits:  sx1508q, sx1511
+ 16 bits: sx1509q, sx1512

 config GPIO_STMPE
bool STMPE GPIOs
diff --git a/drivers/gpio/gpio-sx150x.c b/drivers/gpio/gpio-sx150x.c
index d2983e9..bee1661 100644
--- a/drivers/gpio/gpio-sx150x.c
+++ b/drivers/gpio/gpio-sx150x.c
@@ -22,9 +22,16 @@
 #include linux/module.h
 #include linux/mutex.h
 #include linux/slab.h
+#include linux/spi/spi.h
 #include linux/workqueue.h
 #include linux/i2c/sx150x.h

+/**
+ * SX15xx types supported by driver
+ */
+#define SX15_TYPE_8_GPIOS  0
+#define SX15_TYPE_16_GPIOS 1
+
 #define NO_UPDATE_PENDING  -1

 struct sx150x_device_data {
@@ -43,9 +50,17 @@ struct sx150x_device_data {
u8 ngpios;
 };

+struct sx150x_chip;
+
+struct sx15xx_ops {
+   s32 (*read)(struct device *dev, u8 reg, u8 *val);
+   s32 (*write)(struct device *dev, u8 reg, u8 val);
+};
+
 struct sx150x_chip {
struct gpio_chip gpio_chip;
-   struct i2c_client   *client;
+   struct device   *dev;
+   const struct sx15xx_ops *ops;
const struct sx150x_device_data *dev_cfg;
int  irq_summary;
int  irq_base;
@@ -59,7 +74,7 @@ struct sx150x_chip {
 };

 static const struct sx150x_device_data sx150x_devices[] = {
-   [0] = { /* sx1508q */
+   [SX15_TYPE_8_GPIOS] = { /* sx1508q */
.reg_pullup   = 0x03,
.reg_pulldn   = 0x04,
.reg_drain= 0x05,
@@ -74,7 +89,7 @@ static const struct sx150x_device_data sx150x_devices[] = {
.reg_reset= 0x7d,
.ngpios   = 8
},
-   [1] = { /* sx1509q */
+   [SX15_TYPE_16_GPIOS] = { /* sx1509q */
.reg_pullup   = 0x07,
.reg_pulldn   = 0x09,
.reg_drain= 0x0b,
@@ -91,37 +106,86 @@ static const struct sx150x_device_data sx150x_devices[] = {
},
 };

-static const struct i2c_device_id sx150x_id[] = {
-   {sx1508q, 0},
-   {sx1509q, 1},
-   {}
-};
-MODULE_DEVICE_TABLE(i2c, sx150x_id);
+#ifdef CONFIG_I2C

-static s32 sx150x_i2c_write(struct i2c_client *client, u8 reg, u8 val)
+static s32 sx150x_i2c_write(struct device *dev, u8 reg, u8 val)
 {
+   struct i2c_client *client = to_i2c_client(dev);
s32 err = i2c_smbus_write_byte_data(client, reg, val);

if (err  0)
-   dev_warn(client-dev,
+   dev_warn(dev,
i2c write fail: can't write %02x to %02x: %d\n,
val, reg, err);
return err;
 }

-static s32 sx150x_i2c_read(struct i2c_client *client, u8 reg, u8 *val)
+static s32 sx150x_i2c_read(struct device *dev, u8 reg, u8 *val)
 {
+   struct i2c_client *client = to_i2c_client(dev);
s32 err = i2c_smbus_read_byte_data(client, reg);

if (err = 0)
*val = err;
else
-   dev_warn(client-dev,
+   dev_warn(dev,
i2c read fail: can't read from %02x: %d\n,
reg, err);
return err;
 }

+static const struct sx15xx_ops sx150x_ops = {
+   .read   = sx150x_i2c_read,
+   .write  = sx150x_i2c_write,
+};
+
+#endif /* CONFIG_I2C */
+
+#ifdef CONFIG_SPI_MASTER
+
+static s32 sx151x_spi_write(struct device *dev, u8 reg, u8 val)
+{
+   struct spi_device *spi = to_spi_device(dev);
+   u8 tx[2];
+   s32 err;
+
+   tx[0] = reg;
+   tx[1] = val;
+
+   err = spi_write(spi, tx, sizeof tx);
+
+   if (err  0)
+

Re: [PATCH v2 6/6] ARM: dts: msm: Add Krait CPU/L2 nodes

2013-10-30 Thread David Brown

On Wed, Oct 30, 2013 at 01:25:36PM -0700, Stephen Boyd wrote:

This allows us to probe the krait-edac driver.

Cc: David Brown 
Signed-off-by: Stephen Boyd 
---
arch/arm/boot/dts/qcom-msm8974.dtsi | 37 +
1 file changed, 37 insertions(+)


Acked-by: David Brown 

--
sent by an employee of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH v2 6/6] ARM: dts: msm: Add Krait CPU/L2 nodes

2013-10-30 Thread David Brown

On Wed, Oct 30, 2013 at 01:25:36PM -0700, Stephen Boyd wrote:

This allows us to probe the krait-edac driver.

Cc: David Brown dav...@codeaurora.org
Signed-off-by: Stephen Boyd sb...@codeaurora.org
---
arch/arm/boot/dts/qcom-msm8974.dtsi | 37 +
1 file changed, 37 insertions(+)


Acked-by: David Brown dav...@codeaurora.org

--
sent by an employee of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH 4/4] ARM: msm: Remove 8x50 support

2013-10-28 Thread David Brown
The MSM8x50 SoC support was added in 2010 based on code from Google's
Android kernels.  Platform support is fairly minimal, and the only
changes that have been made have been trivial and cleanup changes.

This code has not been converted to device tree, and is hindering
support for the multi-platform kernel on ARM.  If someone wishes to
continue support for this target, patches that provide devicetree and
multi-platform support can start by re-adding these files.

Signed-off-by: David Brown 
---
Note that this patch was made with -D.  I can send the full patch on
request, and have also made the tree available at: 

  git://git.kernel.org/pub/scm/linux/kernel/git/davidb/linux-msm.git 
for-3.14/big-cleanup

 arch/arm/mach-msm/Kconfig   |   57 --
 arch/arm/mach-msm/Makefile  |   14 -
 arch/arm/mach-msm/board-qsd8x50.c   |  213 -
 arch/arm/mach-msm/clock-pcom.c  |  177 
 arch/arm/mach-msm/clock-pcom.h  |  145 
 arch/arm/mach-msm/devices-qsd8x50.c |  388 -
 arch/arm/mach-msm/devices.h |   53 --
 arch/arm/mach-msm/dma.c |  295 ---
 arch/arm/mach-msm/gpiomux-8x50.c|   51 --
 arch/arm/mach-msm/gpiomux-v1.h  |   67 --
 arch/arm/mach-msm/gpiomux.c |  111 ---
 arch/arm/mach-msm/gpiomux.h |   84 --
 arch/arm/mach-msm/include/mach/entry-macro.S|   36 -
 arch/arm/mach-msm/include/mach/hardware.h   |   18 -
 arch/arm/mach-msm/include/mach/irqs-8x50.h  |   88 --
 arch/arm/mach-msm/include/mach/irqs.h   |   37 -
 arch/arm/mach-msm/include/mach/msm_gpiomux.h|   38 -
 arch/arm/mach-msm/include/mach/msm_iomap-8x50.h |  125 ---
 arch/arm/mach-msm/include/mach/msm_iomap.h  |   53 --
 arch/arm/mach-msm/include/mach/msm_smd.h|  109 ---
 arch/arm/mach-msm/include/mach/sirc.h   |   98 ---
 arch/arm/mach-msm/include/mach/vreg.h   |   29 -
 arch/arm/mach-msm/io.c  |  161 
 arch/arm/mach-msm/irq-vic.c |  363 
 arch/arm/mach-msm/last_radio_log.c  |   71 --
 arch/arm/mach-msm/proc_comm.c   |  129 ---
 arch/arm/mach-msm/proc_comm.h   |  258 --
 arch/arm/mach-msm/sirc.c|  172 
 arch/arm/mach-msm/smd.c | 1035 ---
 arch/arm/mach-msm/smd_debug.c   |  311 ---
 arch/arm/mach-msm/smd_private.h |  403 -
 arch/arm/mach-msm/vreg.c|  220 -
 32 files changed, 5409 deletions(-)
 delete mode 100644 arch/arm/mach-msm/board-qsd8x50.c
 delete mode 100644 arch/arm/mach-msm/clock-pcom.c
 delete mode 100644 arch/arm/mach-msm/clock-pcom.h
 delete mode 100644 arch/arm/mach-msm/devices-qsd8x50.c
 delete mode 100644 arch/arm/mach-msm/devices.h
 delete mode 100644 arch/arm/mach-msm/dma.c
 delete mode 100644 arch/arm/mach-msm/gpiomux-8x50.c
 delete mode 100644 arch/arm/mach-msm/gpiomux-v1.h
 delete mode 100644 arch/arm/mach-msm/gpiomux.c
 delete mode 100644 arch/arm/mach-msm/gpiomux.h
 delete mode 100644 arch/arm/mach-msm/include/mach/entry-macro.S
 delete mode 100644 arch/arm/mach-msm/include/mach/hardware.h
 delete mode 100644 arch/arm/mach-msm/include/mach/irqs-8x50.h
 delete mode 100644 arch/arm/mach-msm/include/mach/irqs.h
 delete mode 100644 arch/arm/mach-msm/include/mach/msm_gpiomux.h
 delete mode 100644 arch/arm/mach-msm/include/mach/msm_iomap-8x50.h
 delete mode 100644 arch/arm/mach-msm/include/mach/msm_iomap.h
 delete mode 100644 arch/arm/mach-msm/include/mach/msm_smd.h
 delete mode 100644 arch/arm/mach-msm/include/mach/sirc.h
 delete mode 100644 arch/arm/mach-msm/include/mach/vreg.h
 delete mode 100644 arch/arm/mach-msm/io.c
 delete mode 100644 arch/arm/mach-msm/irq-vic.c
 delete mode 100644 arch/arm/mach-msm/last_radio_log.c
 delete mode 100644 arch/arm/mach-msm/proc_comm.c
 delete mode 100644 arch/arm/mach-msm/proc_comm.h
 delete mode 100644 arch/arm/mach-msm/sirc.c
 delete mode 100644 arch/arm/mach-msm/smd.c
 delete mode 100644 arch/arm/mach-msm/smd_debug.c
 delete mode 100644 arch/arm/mach-msm/smd_private.h
 delete mode 100644 arch/arm/mach-msm/vreg.c

diff --git a/arch/arm/mach-msm/Kconfig b/arch/arm/mach-msm/Kconfig
index c9c113d..cb239ca 100644
--- a/arch/arm/mach-msm/Kconfig
+++ b/arch/arm/mach-msm/Kconfig
@@ -3,24 +3,6 @@ if ARCH_MSM
 comment "Qualcomm MSM SoC Type"
depends on ARCH_MSM_DT
 
-choice
-   prompt "Qualcomm MSM SoC Type"
-   default ARCH_QSD8X50
-   depends on !ARCH_MSM_DT
-
-config ARCH_QSD8X50
-   bool "QSD8X50"
-   select ARCH_MSM_SCORPION
-   select CPU_V7
-   select GPIO_MSM_V1
-   select MACH_QSD8X50_SURF if !MACH_QSD8X50A_ST1_5
-   select MSM_GPIOMUX
-   select MSM_PROC_COMM
-   select MSM_SMD
-   select 

[PATCH 1/4] ARM: msm: Remove unused board files

2013-10-28 Thread David Brown
These board files were added in 2010, and have never been compiled in
the tree.  If these targets were to be included, at this point, they
would need to be done using device tree, so there is no reason to keep
these files around.

Signed-off-by: David Brown 
---
Note that this patch was made with -D.  I can send the full patch on
request, and have also made the tree available at: 

  git://git.kernel.org/pub/scm/linux/kernel/git/davidb/linux-msm.git 
for-3.14/big-cleanup

 arch/arm/mach-msm/board-mahimahi.c |  88 
 arch/arm/mach-msm/board-sapphire.c | 117 -
 2 files changed, 205 deletions(-)
 delete mode 100644 arch/arm/mach-msm/board-mahimahi.c
 delete mode 100644 arch/arm/mach-msm/board-sapphire.c

diff --git a/arch/arm/mach-msm/board-mahimahi.c 
b/arch/arm/mach-msm/board-mahimahi.c
deleted file mode 100644
index 7d9981c..000
diff --git a/arch/arm/mach-msm/board-sapphire.c 
b/arch/arm/mach-msm/board-sapphire.c
deleted file mode 100644
index 3276051..000
-- 
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH 3/4] ARM: msm: Remove 7x30 support

2013-10-28 Thread David Brown
The MSM7x30 SoC support was added in 2009 based on code from Google's
Android kernels.  Platform support is fairly minimal, and the only
changes that have been made have been trivial and cleanup changes.

This code has not been converted to device tree, and is hindering
supporting multiple-platform on ARM.  If someone wishes to continue
support for this target, patches that provide devicetree and
multi-platform support can start by re-adding these files.

Signed-off-by: David Brown 
---
Note that this patch was made with -D.  I can send the full patch on
request, and have also made the tree available at: 

  git://git.kernel.org/pub/scm/linux/kernel/git/davidb/linux-msm.git 
for-3.14/big-cleanup

 arch/arm/mach-msm/Kconfig   |  19 +-
 arch/arm/mach-msm/Makefile  |   2 -
 arch/arm/mach-msm/board-msm7x30.c   | 157 ---
 arch/arm/mach-msm/devices-msm7x30.c | 246 
 arch/arm/mach-msm/include/mach/irqs-7x30.h  | 153 ---
 arch/arm/mach-msm/include/mach/msm_iomap-7x30.h | 103 --
 6 files changed, 1 insertion(+), 679 deletions(-)
 delete mode 100644 arch/arm/mach-msm/board-msm7x30.c
 delete mode 100644 arch/arm/mach-msm/devices-msm7x30.c
 delete mode 100644 arch/arm/mach-msm/include/mach/irqs-7x30.h
 delete mode 100644 arch/arm/mach-msm/include/mach/msm_iomap-7x30.h

diff --git a/arch/arm/mach-msm/Kconfig b/arch/arm/mach-msm/Kconfig
index d43d20c..c9c113d 100644
--- a/arch/arm/mach-msm/Kconfig
+++ b/arch/arm/mach-msm/Kconfig
@@ -5,20 +5,9 @@ comment "Qualcomm MSM SoC Type"
 
 choice
prompt "Qualcomm MSM SoC Type"
-   default ARCH_MSM7X30
+   default ARCH_QSD8X50
depends on !ARCH_MSM_DT
 
-config ARCH_MSM7X30
-   bool "MSM7x30"
-   select ARCH_MSM_SCORPION
-   select CPU_V7
-   select GPIO_MSM_V1
-   select MACH_MSM7X30_SURF # if !
-   select MSM_GPIOMUX
-   select MSM_PROC_COMM
-   select MSM_SMD
-   select MSM_VIC
-
 config ARCH_QSD8X50
bool "QSD8X50"
select ARCH_MSM_SCORPION
@@ -69,12 +58,6 @@ config  MSM_VIC
 menu "Qualcomm MSM Board Type"
depends on !ARCH_MSM_DT
 
-config MACH_MSM7X30_SURF
-   depends on ARCH_MSM7X30
-   bool "MSM7x30 SURF"
-   help
- Support for the Qualcomm MSM7x30 SURF eval board.
-
 config MACH_QSD8X50_SURF
depends on ARCH_QSD8X50
bool "QSD8x50 SURF"
diff --git a/arch/arm/mach-msm/Makefile b/arch/arm/mach-msm/Makefile
index c7a5b53..4bc7ee4 100644
--- a/arch/arm/mach-msm/Makefile
+++ b/arch/arm/mach-msm/Makefile
@@ -8,7 +8,6 @@ obj-$(CONFIG_ARCH_QSD8X50) += sirc.o
 obj-$(CONFIG_MSM_PROC_COMM) += proc_comm.o clock-pcom.o vreg.o
 
 obj-$(CONFIG_ARCH_MSM7X00A) += dma.o io.o
-obj-$(CONFIG_ARCH_MSM7X30) += dma.o io.o
 obj-$(CONFIG_ARCH_QSD8X50) += dma.o io.o
 
 obj-$(CONFIG_MSM_SMD) += smd.o smd_debug.o
@@ -20,7 +19,6 @@ CFLAGS_scm.o :=$(call as-instr,.arch_extension 
sec,-DREQUIRES_SEC=1)
 obj-$(CONFIG_HOTPLUG_CPU) += hotplug.o
 obj-$(CONFIG_SMP) += headsmp.o platsmp.o
 
-obj-$(CONFIG_ARCH_MSM7X30) += board-msm7x30.o devices-msm7x30.o
 obj-$(CONFIG_ARCH_QSD8X50) += board-qsd8x50.o devices-qsd8x50.o
 obj-$(CONFIG_ARCH_MSM_DT) += board-dt.o
 obj-$(CONFIG_MSM_GPIOMUX) += gpiomux.o
diff --git a/arch/arm/mach-msm/board-msm7x30.c 
b/arch/arm/mach-msm/board-msm7x30.c
deleted file mode 100644
index f9af5a4..000
diff --git a/arch/arm/mach-msm/devices-msm7x30.c 
b/arch/arm/mach-msm/devices-msm7x30.c
deleted file mode 100644
index c15ea8a..000
diff --git a/arch/arm/mach-msm/include/mach/irqs-7x30.h 
b/arch/arm/mach-msm/include/mach/irqs-7x30.h
deleted file mode 100644
index 1f15902..000
diff --git a/arch/arm/mach-msm/include/mach/msm_iomap-7x30.h 
b/arch/arm/mach-msm/include/mach/msm_iomap-7x30.h
deleted file mode 100644
index 198202c..000
-- 
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH 0/4] Remove older ARM msm SoC support

2013-10-28 Thread David Brown
Over the past few years, the ARM msm SoC tree has picked up support
for a handfull of SoCs.  Each of these targets had a brief period of
activity, and has since only received trivial fixes.  Support has only
been minimal, generally serial console, and possibly storage.  None of
these saw conversion to device tree, and they contain a lot of headers
and other aspects that prevent use in the ARM multi-platform kernel.

Current activity on MSM seems to be focused on newer SoCs.  These
devices have the advantage of having dev-boards available, so
hopefully there will be more community activity.  There also seems to
be effort into better DT and multi-platform support on these targets,
but not the older ones.

This patch series removes support for the three older Qualcomm SoC
families: 7x00, 7x30, and 8x50.

If there is a serious desire to support any of these SoCs, patches
that make them properly support DT, and multi-platform can begin by
adding the necessary files back.

Note that because these patches remove a lot of lines of code, and the
lengths exceed the size typically allowed on the mailing lists, I've
generated the patches with the '-D' option to format-patch.  I can
send full patches on request, and I've also made the patches available
at:

  git://git.kernel.org/pub/scm/linux/kernel/git/davidb/linux-msm.git 
for-3.14/big-cleanup

David Brown (4):
  ARM: msm: Remove unused board files
  ARM: msm: Remove 7x00 support
  ARM: msm: Remove 7x30 support
  ARM: msm: Remove 8x50 support

 arch/arm/mach-msm/Kconfig   |  104 ---
 arch/arm/mach-msm/Makefile  |   20 -
 arch/arm/mach-msm/board-halibut.c   |  110 ---
 arch/arm/mach-msm/board-mahimahi.c  |   88 --
 arch/arm/mach-msm/board-msm7x30.c   |  157 
 arch/arm/mach-msm/board-qsd8x50.c   |  213 -
 arch/arm/mach-msm/board-sapphire.c  |  117 ---
 arch/arm/mach-msm/board-trout-gpio.c|  233 -
 arch/arm/mach-msm/board-trout-mmc.c |  185 
 arch/arm/mach-msm/board-trout-panel.c   |  292 ---
 arch/arm/mach-msm/board-trout.c |  113 ---
 arch/arm/mach-msm/board-trout.h |  162 
 arch/arm/mach-msm/clock-pcom.c  |  177 
 arch/arm/mach-msm/clock-pcom.h  |  145 
 arch/arm/mach-msm/devices-msm7x00.c |  480 ---
 arch/arm/mach-msm/devices-msm7x30.c |  246 --
 arch/arm/mach-msm/devices-qsd8x50.c |  388 -
 arch/arm/mach-msm/devices.h |   53 --
 arch/arm/mach-msm/dma.c |  295 ---
 arch/arm/mach-msm/gpiomux-8x50.c|   51 --
 arch/arm/mach-msm/gpiomux-v1.h  |   67 --
 arch/arm/mach-msm/gpiomux.c |  111 ---
 arch/arm/mach-msm/gpiomux.h |   84 --
 arch/arm/mach-msm/include/mach/entry-macro.S|   36 -
 arch/arm/mach-msm/include/mach/hardware.h   |   18 -
 arch/arm/mach-msm/include/mach/irqs-7x00.h  |   75 --
 arch/arm/mach-msm/include/mach/irqs-7x30.h  |  153 
 arch/arm/mach-msm/include/mach/irqs-8x50.h  |   88 --
 arch/arm/mach-msm/include/mach/irqs.h   |   37 -
 arch/arm/mach-msm/include/mach/msm_gpiomux.h|   38 -
 arch/arm/mach-msm/include/mach/msm_iomap-7x00.h |  108 ---
 arch/arm/mach-msm/include/mach/msm_iomap-7x30.h |  103 ---
 arch/arm/mach-msm/include/mach/msm_iomap-8x50.h |  125 ---
 arch/arm/mach-msm/include/mach/msm_iomap.h  |   53 --
 arch/arm/mach-msm/include/mach/msm_smd.h|  109 ---
 arch/arm/mach-msm/include/mach/sirc.h   |   98 ---
 arch/arm/mach-msm/include/mach/vreg.h   |   29 -
 arch/arm/mach-msm/io.c  |  161 
 arch/arm/mach-msm/irq-vic.c |  363 
 arch/arm/mach-msm/irq.c |  151 
 arch/arm/mach-msm/last_radio_log.c  |   71 --
 arch/arm/mach-msm/proc_comm.c   |  129 ---
 arch/arm/mach-msm/proc_comm.h   |  258 --
 arch/arm/mach-msm/sirc.c|  172 
 arch/arm/mach-msm/smd.c | 1035 ---
 arch/arm/mach-msm/smd_debug.c   |  311 ---
 arch/arm/mach-msm/smd_private.h |  403 -
 arch/arm/mach-msm/vreg.c|  220 -
 48 files changed, 8235 deletions(-)
 delete mode 100644 arch/arm/mach-msm/board-halibut.c
 delete mode 100644 arch/arm/mach-msm/board-mahimahi.c
 delete mode 100644 arch/arm/mach-msm/board-msm7x30.c
 delete mode 100644 arch/arm/mach-msm/board-qsd8x50.c
 delete mode 100644 arch/arm/mach-msm/board-sapphire.c
 delete mode 100644 arch/arm/mach-msm/board-trout-gpio.c
 delete mode 100644 arch/arm/mach-msm/board-trout-mmc.c
 delete mode 100644 arch/arm/mach-msm/board-trout-panel.c
 delete mode 100644 arch/arm/mach-msm/board-trout.c
 delete mode 100644

[PATCH 2/4] ARM: msm: Remove 7x00 support

2013-10-28 Thread David Brown
Support for the MSM7x00 SoCs was added starting in 2008 based on code
from Google's Android kernels.  Platform support is fairly minimal,
and there have primarily been trivial and cleanup changes to this
code.

This code has not been converted to device tree, and is hindering
supporting multi-platform on ARM.  If someone wishes to continue
support for this target, patches that provide devicetree and
multi-platform support can start by re-adding these files.

Signed-off-by: David Brown 
---
Note that this patch was made with -D.  I can send the full patch on
request, and have also made the tree available at: 

  git://git.kernel.org/pub/scm/linux/kernel/git/davidb/linux-msm.git 
for-3.14/big-cleanup

 arch/arm/mach-msm/Kconfig   |  32 +-
 arch/arm/mach-msm/Makefile  |   4 -
 arch/arm/mach-msm/board-halibut.c   | 110 --
 arch/arm/mach-msm/board-trout-gpio.c| 233 
 arch/arm/mach-msm/board-trout-mmc.c | 185 -
 arch/arm/mach-msm/board-trout-panel.c   | 292 --
 arch/arm/mach-msm/board-trout.c | 113 --
 arch/arm/mach-msm/board-trout.h | 162 
 arch/arm/mach-msm/devices-msm7x00.c | 480 
 arch/arm/mach-msm/include/mach/irqs-7x00.h  |  75 
 arch/arm/mach-msm/include/mach/msm_iomap-7x00.h | 108 --
 arch/arm/mach-msm/irq.c | 151 
 12 files changed, 1 insertion(+), 1944 deletions(-)
 delete mode 100644 arch/arm/mach-msm/board-halibut.c
 delete mode 100644 arch/arm/mach-msm/board-trout-gpio.c
 delete mode 100644 arch/arm/mach-msm/board-trout-mmc.c
 delete mode 100644 arch/arm/mach-msm/board-trout-panel.c
 delete mode 100644 arch/arm/mach-msm/board-trout.c
 delete mode 100644 arch/arm/mach-msm/board-trout.h
 delete mode 100644 arch/arm/mach-msm/devices-msm7x00.c
 delete mode 100644 arch/arm/mach-msm/include/mach/irqs-7x00.h
 delete mode 100644 arch/arm/mach-msm/include/mach/msm_iomap-7x00.h
 delete mode 100644 arch/arm/mach-msm/irq.c

diff --git a/arch/arm/mach-msm/Kconfig b/arch/arm/mach-msm/Kconfig
index 2586c28..d43d20c 100644
--- a/arch/arm/mach-msm/Kconfig
+++ b/arch/arm/mach-msm/Kconfig
@@ -5,19 +5,9 @@ comment "Qualcomm MSM SoC Type"
 
 choice
prompt "Qualcomm MSM SoC Type"
-   default ARCH_MSM7X00A
+   default ARCH_MSM7X30
depends on !ARCH_MSM_DT
 
-config ARCH_MSM7X00A
-   bool "MSM7x00A / MSM7x01A"
-   select ARCH_MSM_ARM11
-   select CPU_V6
-   select GPIO_MSM_V1
-   select MACH_TROUT if !MACH_HALIBUT
-   select MSM_PROC_COMM
-   select MSM_SMD
-   select MSM_SMD_PKG3
-
 config ARCH_MSM7X30
bool "MSM7x30"
select ARCH_MSM_SCORPION
@@ -70,9 +60,6 @@ config MSM_HAS_DEBUG_UART_HS
 config MSM_SOC_REV_A
bool
 
-config  ARCH_MSM_ARM11
-   bool
-
 config  ARCH_MSM_SCORPION
bool
 
@@ -82,20 +69,6 @@ config  MSM_VIC
 menu "Qualcomm MSM Board Type"
depends on !ARCH_MSM_DT
 
-config MACH_HALIBUT
-   depends on ARCH_MSM
-   depends on ARCH_MSM7X00A
-   bool "Halibut Board (QCT SURF7201A)"
-   help
- Support for the Qualcomm SURF7201A eval board.
-
-config MACH_TROUT
-   depends on ARCH_MSM
-   depends on ARCH_MSM7X00A
-   bool "HTC Dream (aka trout)"
-   help
- Support for the HTC Dream, T-Mobile G1, Android ADP1 devices.
-
 config MACH_MSM7X30_SURF
depends on ARCH_MSM7X30
bool "MSM7x30 SURF"
@@ -117,9 +90,6 @@ config MACH_QSD8X50A_ST1_5
 
 endmenu
 
-config MSM_SMD_PKG3
-   bool
-
 config MSM_PROC_COMM
bool
 
diff --git a/arch/arm/mach-msm/Makefile b/arch/arm/mach-msm/Makefile
index 7ed4c1b..c7a5b53 100644
--- a/arch/arm/mach-msm/Makefile
+++ b/arch/arm/mach-msm/Makefile
@@ -3,7 +3,6 @@ obj-y += clock.o
 
 obj-$(CONFIG_MSM_VIC) += irq-vic.o
 
-obj-$(CONFIG_ARCH_MSM7X00A) += irq.o
 obj-$(CONFIG_ARCH_QSD8X50) += sirc.o
 
 obj-$(CONFIG_MSM_PROC_COMM) += proc_comm.o clock-pcom.o vreg.o
@@ -21,9 +20,6 @@ CFLAGS_scm.o :=$(call as-instr,.arch_extension 
sec,-DREQUIRES_SEC=1)
 obj-$(CONFIG_HOTPLUG_CPU) += hotplug.o
 obj-$(CONFIG_SMP) += headsmp.o platsmp.o
 
-obj-$(CONFIG_MACH_TROUT) += board-trout.o board-trout-gpio.o board-trout-mmc.o 
devices-msm7x00.o
-obj-$(CONFIG_MACH_TROUT) += board-trout.o board-trout-gpio.o board-trout-mmc.o 
board-trout-panel.o devices-msm7x00.o
-obj-$(CONFIG_MACH_HALIBUT) += board-halibut.o devices-msm7x00.o
 obj-$(CONFIG_ARCH_MSM7X30) += board-msm7x30.o devices-msm7x30.o
 obj-$(CONFIG_ARCH_QSD8X50) += board-qsd8x50.o devices-qsd8x50.o
 obj-$(CONFIG_ARCH_MSM_DT) += board-dt.o
diff --git a/arch/arm/mach-msm/board-halibut.c 
b/arch/arm/mach-msm/board-halibut.c
deleted file mode 100644
index a775298..000
diff --git a/arch/arm/mach-msm/board-trout-gpio.c 
b/arch/arm/mach-msm/board-trout-gpio.c
deleted file mod

[PATCH 0/4] Remove older ARM msm SoC support

2013-10-28 Thread David Brown
Over the past few years, the ARM msm SoC tree has picked up support
for a handfull of SoCs.  Each of these targets had a brief period of
activity, and has since only received trivial fixes.  Support has only
been minimal, generally serial console, and possibly storage.  None of
these saw conversion to device tree, and they contain a lot of headers
and other aspects that prevent use in the ARM multi-platform kernel.

Current activity on MSM seems to be focused on newer SoCs.  These
devices have the advantage of having dev-boards available, so
hopefully there will be more community activity.  There also seems to
be effort into better DT and multi-platform support on these targets,
but not the older ones.

This patch series removes support for the three older Qualcomm SoC
families: 7x00, 7x30, and 8x50.

If there is a serious desire to support any of these SoCs, patches
that make them properly support DT, and multi-platform can begin by
adding the necessary files back.

Note that because these patches remove a lot of lines of code, and the
lengths exceed the size typically allowed on the mailing lists, I've
generated the patches with the '-D' option to format-patch.  I can
send full patches on request, and I've also made the patches available
at:

  git://git.kernel.org/pub/scm/linux/kernel/git/davidb/linux-msm.git 
for-3.14/big-cleanup

David Brown (4):
  ARM: msm: Remove unused board files
  ARM: msm: Remove 7x00 support
  ARM: msm: Remove 7x30 support
  ARM: msm: Remove 8x50 support

 arch/arm/mach-msm/Kconfig   |  104 ---
 arch/arm/mach-msm/Makefile  |   20 -
 arch/arm/mach-msm/board-halibut.c   |  110 ---
 arch/arm/mach-msm/board-mahimahi.c  |   88 --
 arch/arm/mach-msm/board-msm7x30.c   |  157 
 arch/arm/mach-msm/board-qsd8x50.c   |  213 -
 arch/arm/mach-msm/board-sapphire.c  |  117 ---
 arch/arm/mach-msm/board-trout-gpio.c|  233 -
 arch/arm/mach-msm/board-trout-mmc.c |  185 
 arch/arm/mach-msm/board-trout-panel.c   |  292 ---
 arch/arm/mach-msm/board-trout.c |  113 ---
 arch/arm/mach-msm/board-trout.h |  162 
 arch/arm/mach-msm/clock-pcom.c  |  177 
 arch/arm/mach-msm/clock-pcom.h  |  145 
 arch/arm/mach-msm/devices-msm7x00.c |  480 ---
 arch/arm/mach-msm/devices-msm7x30.c |  246 --
 arch/arm/mach-msm/devices-qsd8x50.c |  388 -
 arch/arm/mach-msm/devices.h |   53 --
 arch/arm/mach-msm/dma.c |  295 ---
 arch/arm/mach-msm/gpiomux-8x50.c|   51 --
 arch/arm/mach-msm/gpiomux-v1.h  |   67 --
 arch/arm/mach-msm/gpiomux.c |  111 ---
 arch/arm/mach-msm/gpiomux.h |   84 --
 arch/arm/mach-msm/include/mach/entry-macro.S|   36 -
 arch/arm/mach-msm/include/mach/hardware.h   |   18 -
 arch/arm/mach-msm/include/mach/irqs-7x00.h  |   75 --
 arch/arm/mach-msm/include/mach/irqs-7x30.h  |  153 
 arch/arm/mach-msm/include/mach/irqs-8x50.h  |   88 --
 arch/arm/mach-msm/include/mach/irqs.h   |   37 -
 arch/arm/mach-msm/include/mach/msm_gpiomux.h|   38 -
 arch/arm/mach-msm/include/mach/msm_iomap-7x00.h |  108 ---
 arch/arm/mach-msm/include/mach/msm_iomap-7x30.h |  103 ---
 arch/arm/mach-msm/include/mach/msm_iomap-8x50.h |  125 ---
 arch/arm/mach-msm/include/mach/msm_iomap.h  |   53 --
 arch/arm/mach-msm/include/mach/msm_smd.h|  109 ---
 arch/arm/mach-msm/include/mach/sirc.h   |   98 ---
 arch/arm/mach-msm/include/mach/vreg.h   |   29 -
 arch/arm/mach-msm/io.c  |  161 
 arch/arm/mach-msm/irq-vic.c |  363 
 arch/arm/mach-msm/irq.c |  151 
 arch/arm/mach-msm/last_radio_log.c  |   71 --
 arch/arm/mach-msm/proc_comm.c   |  129 ---
 arch/arm/mach-msm/proc_comm.h   |  258 --
 arch/arm/mach-msm/sirc.c|  172 
 arch/arm/mach-msm/smd.c | 1035 ---
 arch/arm/mach-msm/smd_debug.c   |  311 ---
 arch/arm/mach-msm/smd_private.h |  403 -
 arch/arm/mach-msm/vreg.c|  220 -
 48 files changed, 8235 deletions(-)
 delete mode 100644 arch/arm/mach-msm/board-halibut.c
 delete mode 100644 arch/arm/mach-msm/board-mahimahi.c
 delete mode 100644 arch/arm/mach-msm/board-msm7x30.c
 delete mode 100644 arch/arm/mach-msm/board-qsd8x50.c
 delete mode 100644 arch/arm/mach-msm/board-sapphire.c
 delete mode 100644 arch/arm/mach-msm/board-trout-gpio.c
 delete mode 100644 arch/arm/mach-msm/board-trout-mmc.c
 delete mode 100644 arch/arm/mach-msm/board-trout-panel.c
 delete mode 100644 arch/arm/mach-msm/board-trout.c
 delete mode 100644

[PATCH 2/4] ARM: msm: Remove 7x00 support

2013-10-28 Thread David Brown
Support for the MSM7x00 SoCs was added starting in 2008 based on code
from Google's Android kernels.  Platform support is fairly minimal,
and there have primarily been trivial and cleanup changes to this
code.

This code has not been converted to device tree, and is hindering
supporting multi-platform on ARM.  If someone wishes to continue
support for this target, patches that provide devicetree and
multi-platform support can start by re-adding these files.

Signed-off-by: David Brown dav...@codeaurora.org
---
Note that this patch was made with -D.  I can send the full patch on
request, and have also made the tree available at: 

  git://git.kernel.org/pub/scm/linux/kernel/git/davidb/linux-msm.git 
for-3.14/big-cleanup

 arch/arm/mach-msm/Kconfig   |  32 +-
 arch/arm/mach-msm/Makefile  |   4 -
 arch/arm/mach-msm/board-halibut.c   | 110 --
 arch/arm/mach-msm/board-trout-gpio.c| 233 
 arch/arm/mach-msm/board-trout-mmc.c | 185 -
 arch/arm/mach-msm/board-trout-panel.c   | 292 --
 arch/arm/mach-msm/board-trout.c | 113 --
 arch/arm/mach-msm/board-trout.h | 162 
 arch/arm/mach-msm/devices-msm7x00.c | 480 
 arch/arm/mach-msm/include/mach/irqs-7x00.h  |  75 
 arch/arm/mach-msm/include/mach/msm_iomap-7x00.h | 108 --
 arch/arm/mach-msm/irq.c | 151 
 12 files changed, 1 insertion(+), 1944 deletions(-)
 delete mode 100644 arch/arm/mach-msm/board-halibut.c
 delete mode 100644 arch/arm/mach-msm/board-trout-gpio.c
 delete mode 100644 arch/arm/mach-msm/board-trout-mmc.c
 delete mode 100644 arch/arm/mach-msm/board-trout-panel.c
 delete mode 100644 arch/arm/mach-msm/board-trout.c
 delete mode 100644 arch/arm/mach-msm/board-trout.h
 delete mode 100644 arch/arm/mach-msm/devices-msm7x00.c
 delete mode 100644 arch/arm/mach-msm/include/mach/irqs-7x00.h
 delete mode 100644 arch/arm/mach-msm/include/mach/msm_iomap-7x00.h
 delete mode 100644 arch/arm/mach-msm/irq.c

diff --git a/arch/arm/mach-msm/Kconfig b/arch/arm/mach-msm/Kconfig
index 2586c28..d43d20c 100644
--- a/arch/arm/mach-msm/Kconfig
+++ b/arch/arm/mach-msm/Kconfig
@@ -5,19 +5,9 @@ comment Qualcomm MSM SoC Type
 
 choice
prompt Qualcomm MSM SoC Type
-   default ARCH_MSM7X00A
+   default ARCH_MSM7X30
depends on !ARCH_MSM_DT
 
-config ARCH_MSM7X00A
-   bool MSM7x00A / MSM7x01A
-   select ARCH_MSM_ARM11
-   select CPU_V6
-   select GPIO_MSM_V1
-   select MACH_TROUT if !MACH_HALIBUT
-   select MSM_PROC_COMM
-   select MSM_SMD
-   select MSM_SMD_PKG3
-
 config ARCH_MSM7X30
bool MSM7x30
select ARCH_MSM_SCORPION
@@ -70,9 +60,6 @@ config MSM_HAS_DEBUG_UART_HS
 config MSM_SOC_REV_A
bool
 
-config  ARCH_MSM_ARM11
-   bool
-
 config  ARCH_MSM_SCORPION
bool
 
@@ -82,20 +69,6 @@ config  MSM_VIC
 menu Qualcomm MSM Board Type
depends on !ARCH_MSM_DT
 
-config MACH_HALIBUT
-   depends on ARCH_MSM
-   depends on ARCH_MSM7X00A
-   bool Halibut Board (QCT SURF7201A)
-   help
- Support for the Qualcomm SURF7201A eval board.
-
-config MACH_TROUT
-   depends on ARCH_MSM
-   depends on ARCH_MSM7X00A
-   bool HTC Dream (aka trout)
-   help
- Support for the HTC Dream, T-Mobile G1, Android ADP1 devices.
-
 config MACH_MSM7X30_SURF
depends on ARCH_MSM7X30
bool MSM7x30 SURF
@@ -117,9 +90,6 @@ config MACH_QSD8X50A_ST1_5
 
 endmenu
 
-config MSM_SMD_PKG3
-   bool
-
 config MSM_PROC_COMM
bool
 
diff --git a/arch/arm/mach-msm/Makefile b/arch/arm/mach-msm/Makefile
index 7ed4c1b..c7a5b53 100644
--- a/arch/arm/mach-msm/Makefile
+++ b/arch/arm/mach-msm/Makefile
@@ -3,7 +3,6 @@ obj-y += clock.o
 
 obj-$(CONFIG_MSM_VIC) += irq-vic.o
 
-obj-$(CONFIG_ARCH_MSM7X00A) += irq.o
 obj-$(CONFIG_ARCH_QSD8X50) += sirc.o
 
 obj-$(CONFIG_MSM_PROC_COMM) += proc_comm.o clock-pcom.o vreg.o
@@ -21,9 +20,6 @@ CFLAGS_scm.o :=$(call as-instr,.arch_extension 
sec,-DREQUIRES_SEC=1)
 obj-$(CONFIG_HOTPLUG_CPU) += hotplug.o
 obj-$(CONFIG_SMP) += headsmp.o platsmp.o
 
-obj-$(CONFIG_MACH_TROUT) += board-trout.o board-trout-gpio.o board-trout-mmc.o 
devices-msm7x00.o
-obj-$(CONFIG_MACH_TROUT) += board-trout.o board-trout-gpio.o board-trout-mmc.o 
board-trout-panel.o devices-msm7x00.o
-obj-$(CONFIG_MACH_HALIBUT) += board-halibut.o devices-msm7x00.o
 obj-$(CONFIG_ARCH_MSM7X30) += board-msm7x30.o devices-msm7x30.o
 obj-$(CONFIG_ARCH_QSD8X50) += board-qsd8x50.o devices-qsd8x50.o
 obj-$(CONFIG_ARCH_MSM_DT) += board-dt.o
diff --git a/arch/arm/mach-msm/board-halibut.c 
b/arch/arm/mach-msm/board-halibut.c
deleted file mode 100644
index a775298..000
diff --git a/arch/arm/mach-msm/board-trout-gpio.c 
b/arch/arm/mach-msm/board-trout-gpio.c
deleted file mode 100644
index 87e1d01..000
diff --git a/arch/arm/mach-msm/board-trout

[PATCH 3/4] ARM: msm: Remove 7x30 support

2013-10-28 Thread David Brown
The MSM7x30 SoC support was added in 2009 based on code from Google's
Android kernels.  Platform support is fairly minimal, and the only
changes that have been made have been trivial and cleanup changes.

This code has not been converted to device tree, and is hindering
supporting multiple-platform on ARM.  If someone wishes to continue
support for this target, patches that provide devicetree and
multi-platform support can start by re-adding these files.

Signed-off-by: David Brown dav...@codeaurora.org
---
Note that this patch was made with -D.  I can send the full patch on
request, and have also made the tree available at: 

  git://git.kernel.org/pub/scm/linux/kernel/git/davidb/linux-msm.git 
for-3.14/big-cleanup

 arch/arm/mach-msm/Kconfig   |  19 +-
 arch/arm/mach-msm/Makefile  |   2 -
 arch/arm/mach-msm/board-msm7x30.c   | 157 ---
 arch/arm/mach-msm/devices-msm7x30.c | 246 
 arch/arm/mach-msm/include/mach/irqs-7x30.h  | 153 ---
 arch/arm/mach-msm/include/mach/msm_iomap-7x30.h | 103 --
 6 files changed, 1 insertion(+), 679 deletions(-)
 delete mode 100644 arch/arm/mach-msm/board-msm7x30.c
 delete mode 100644 arch/arm/mach-msm/devices-msm7x30.c
 delete mode 100644 arch/arm/mach-msm/include/mach/irqs-7x30.h
 delete mode 100644 arch/arm/mach-msm/include/mach/msm_iomap-7x30.h

diff --git a/arch/arm/mach-msm/Kconfig b/arch/arm/mach-msm/Kconfig
index d43d20c..c9c113d 100644
--- a/arch/arm/mach-msm/Kconfig
+++ b/arch/arm/mach-msm/Kconfig
@@ -5,20 +5,9 @@ comment Qualcomm MSM SoC Type
 
 choice
prompt Qualcomm MSM SoC Type
-   default ARCH_MSM7X30
+   default ARCH_QSD8X50
depends on !ARCH_MSM_DT
 
-config ARCH_MSM7X30
-   bool MSM7x30
-   select ARCH_MSM_SCORPION
-   select CPU_V7
-   select GPIO_MSM_V1
-   select MACH_MSM7X30_SURF # if !
-   select MSM_GPIOMUX
-   select MSM_PROC_COMM
-   select MSM_SMD
-   select MSM_VIC
-
 config ARCH_QSD8X50
bool QSD8X50
select ARCH_MSM_SCORPION
@@ -69,12 +58,6 @@ config  MSM_VIC
 menu Qualcomm MSM Board Type
depends on !ARCH_MSM_DT
 
-config MACH_MSM7X30_SURF
-   depends on ARCH_MSM7X30
-   bool MSM7x30 SURF
-   help
- Support for the Qualcomm MSM7x30 SURF eval board.
-
 config MACH_QSD8X50_SURF
depends on ARCH_QSD8X50
bool QSD8x50 SURF
diff --git a/arch/arm/mach-msm/Makefile b/arch/arm/mach-msm/Makefile
index c7a5b53..4bc7ee4 100644
--- a/arch/arm/mach-msm/Makefile
+++ b/arch/arm/mach-msm/Makefile
@@ -8,7 +8,6 @@ obj-$(CONFIG_ARCH_QSD8X50) += sirc.o
 obj-$(CONFIG_MSM_PROC_COMM) += proc_comm.o clock-pcom.o vreg.o
 
 obj-$(CONFIG_ARCH_MSM7X00A) += dma.o io.o
-obj-$(CONFIG_ARCH_MSM7X30) += dma.o io.o
 obj-$(CONFIG_ARCH_QSD8X50) += dma.o io.o
 
 obj-$(CONFIG_MSM_SMD) += smd.o smd_debug.o
@@ -20,7 +19,6 @@ CFLAGS_scm.o :=$(call as-instr,.arch_extension 
sec,-DREQUIRES_SEC=1)
 obj-$(CONFIG_HOTPLUG_CPU) += hotplug.o
 obj-$(CONFIG_SMP) += headsmp.o platsmp.o
 
-obj-$(CONFIG_ARCH_MSM7X30) += board-msm7x30.o devices-msm7x30.o
 obj-$(CONFIG_ARCH_QSD8X50) += board-qsd8x50.o devices-qsd8x50.o
 obj-$(CONFIG_ARCH_MSM_DT) += board-dt.o
 obj-$(CONFIG_MSM_GPIOMUX) += gpiomux.o
diff --git a/arch/arm/mach-msm/board-msm7x30.c 
b/arch/arm/mach-msm/board-msm7x30.c
deleted file mode 100644
index f9af5a4..000
diff --git a/arch/arm/mach-msm/devices-msm7x30.c 
b/arch/arm/mach-msm/devices-msm7x30.c
deleted file mode 100644
index c15ea8a..000
diff --git a/arch/arm/mach-msm/include/mach/irqs-7x30.h 
b/arch/arm/mach-msm/include/mach/irqs-7x30.h
deleted file mode 100644
index 1f15902..000
diff --git a/arch/arm/mach-msm/include/mach/msm_iomap-7x30.h 
b/arch/arm/mach-msm/include/mach/msm_iomap-7x30.h
deleted file mode 100644
index 198202c..000
-- 
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation

--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH 4/4] ARM: msm: Remove 8x50 support

2013-10-28 Thread David Brown
The MSM8x50 SoC support was added in 2010 based on code from Google's
Android kernels.  Platform support is fairly minimal, and the only
changes that have been made have been trivial and cleanup changes.

This code has not been converted to device tree, and is hindering
support for the multi-platform kernel on ARM.  If someone wishes to
continue support for this target, patches that provide devicetree and
multi-platform support can start by re-adding these files.

Signed-off-by: David Brown dav...@codeaurora.org
---
Note that this patch was made with -D.  I can send the full patch on
request, and have also made the tree available at: 

  git://git.kernel.org/pub/scm/linux/kernel/git/davidb/linux-msm.git 
for-3.14/big-cleanup

 arch/arm/mach-msm/Kconfig   |   57 --
 arch/arm/mach-msm/Makefile  |   14 -
 arch/arm/mach-msm/board-qsd8x50.c   |  213 -
 arch/arm/mach-msm/clock-pcom.c  |  177 
 arch/arm/mach-msm/clock-pcom.h  |  145 
 arch/arm/mach-msm/devices-qsd8x50.c |  388 -
 arch/arm/mach-msm/devices.h |   53 --
 arch/arm/mach-msm/dma.c |  295 ---
 arch/arm/mach-msm/gpiomux-8x50.c|   51 --
 arch/arm/mach-msm/gpiomux-v1.h  |   67 --
 arch/arm/mach-msm/gpiomux.c |  111 ---
 arch/arm/mach-msm/gpiomux.h |   84 --
 arch/arm/mach-msm/include/mach/entry-macro.S|   36 -
 arch/arm/mach-msm/include/mach/hardware.h   |   18 -
 arch/arm/mach-msm/include/mach/irqs-8x50.h  |   88 --
 arch/arm/mach-msm/include/mach/irqs.h   |   37 -
 arch/arm/mach-msm/include/mach/msm_gpiomux.h|   38 -
 arch/arm/mach-msm/include/mach/msm_iomap-8x50.h |  125 ---
 arch/arm/mach-msm/include/mach/msm_iomap.h  |   53 --
 arch/arm/mach-msm/include/mach/msm_smd.h|  109 ---
 arch/arm/mach-msm/include/mach/sirc.h   |   98 ---
 arch/arm/mach-msm/include/mach/vreg.h   |   29 -
 arch/arm/mach-msm/io.c  |  161 
 arch/arm/mach-msm/irq-vic.c |  363 
 arch/arm/mach-msm/last_radio_log.c  |   71 --
 arch/arm/mach-msm/proc_comm.c   |  129 ---
 arch/arm/mach-msm/proc_comm.h   |  258 --
 arch/arm/mach-msm/sirc.c|  172 
 arch/arm/mach-msm/smd.c | 1035 ---
 arch/arm/mach-msm/smd_debug.c   |  311 ---
 arch/arm/mach-msm/smd_private.h |  403 -
 arch/arm/mach-msm/vreg.c|  220 -
 32 files changed, 5409 deletions(-)
 delete mode 100644 arch/arm/mach-msm/board-qsd8x50.c
 delete mode 100644 arch/arm/mach-msm/clock-pcom.c
 delete mode 100644 arch/arm/mach-msm/clock-pcom.h
 delete mode 100644 arch/arm/mach-msm/devices-qsd8x50.c
 delete mode 100644 arch/arm/mach-msm/devices.h
 delete mode 100644 arch/arm/mach-msm/dma.c
 delete mode 100644 arch/arm/mach-msm/gpiomux-8x50.c
 delete mode 100644 arch/arm/mach-msm/gpiomux-v1.h
 delete mode 100644 arch/arm/mach-msm/gpiomux.c
 delete mode 100644 arch/arm/mach-msm/gpiomux.h
 delete mode 100644 arch/arm/mach-msm/include/mach/entry-macro.S
 delete mode 100644 arch/arm/mach-msm/include/mach/hardware.h
 delete mode 100644 arch/arm/mach-msm/include/mach/irqs-8x50.h
 delete mode 100644 arch/arm/mach-msm/include/mach/irqs.h
 delete mode 100644 arch/arm/mach-msm/include/mach/msm_gpiomux.h
 delete mode 100644 arch/arm/mach-msm/include/mach/msm_iomap-8x50.h
 delete mode 100644 arch/arm/mach-msm/include/mach/msm_iomap.h
 delete mode 100644 arch/arm/mach-msm/include/mach/msm_smd.h
 delete mode 100644 arch/arm/mach-msm/include/mach/sirc.h
 delete mode 100644 arch/arm/mach-msm/include/mach/vreg.h
 delete mode 100644 arch/arm/mach-msm/io.c
 delete mode 100644 arch/arm/mach-msm/irq-vic.c
 delete mode 100644 arch/arm/mach-msm/last_radio_log.c
 delete mode 100644 arch/arm/mach-msm/proc_comm.c
 delete mode 100644 arch/arm/mach-msm/proc_comm.h
 delete mode 100644 arch/arm/mach-msm/sirc.c
 delete mode 100644 arch/arm/mach-msm/smd.c
 delete mode 100644 arch/arm/mach-msm/smd_debug.c
 delete mode 100644 arch/arm/mach-msm/smd_private.h
 delete mode 100644 arch/arm/mach-msm/vreg.c

diff --git a/arch/arm/mach-msm/Kconfig b/arch/arm/mach-msm/Kconfig
index c9c113d..cb239ca 100644
--- a/arch/arm/mach-msm/Kconfig
+++ b/arch/arm/mach-msm/Kconfig
@@ -3,24 +3,6 @@ if ARCH_MSM
 comment Qualcomm MSM SoC Type
depends on ARCH_MSM_DT
 
-choice
-   prompt Qualcomm MSM SoC Type
-   default ARCH_QSD8X50
-   depends on !ARCH_MSM_DT
-
-config ARCH_QSD8X50
-   bool QSD8X50
-   select ARCH_MSM_SCORPION
-   select CPU_V7
-   select GPIO_MSM_V1
-   select MACH_QSD8X50_SURF if !MACH_QSD8X50A_ST1_5
-   select MSM_GPIOMUX
-   select MSM_PROC_COMM
-   select MSM_SMD
-   select MSM_VIC
-
-endchoice

[PATCH 1/4] ARM: msm: Remove unused board files

2013-10-28 Thread David Brown
These board files were added in 2010, and have never been compiled in
the tree.  If these targets were to be included, at this point, they
would need to be done using device tree, so there is no reason to keep
these files around.

Signed-off-by: David Brown dav...@codeaurora.org
---
Note that this patch was made with -D.  I can send the full patch on
request, and have also made the tree available at: 

  git://git.kernel.org/pub/scm/linux/kernel/git/davidb/linux-msm.git 
for-3.14/big-cleanup

 arch/arm/mach-msm/board-mahimahi.c |  88 
 arch/arm/mach-msm/board-sapphire.c | 117 -
 2 files changed, 205 deletions(-)
 delete mode 100644 arch/arm/mach-msm/board-mahimahi.c
 delete mode 100644 arch/arm/mach-msm/board-sapphire.c

diff --git a/arch/arm/mach-msm/board-mahimahi.c 
b/arch/arm/mach-msm/board-mahimahi.c
deleted file mode 100644
index 7d9981c..000
diff --git a/arch/arm/mach-msm/board-sapphire.c 
b/arch/arm/mach-msm/board-sapphire.c
deleted file mode 100644
index 3276051..000
-- 
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation

--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCHv6 2/4] ARM: msm: Add support for APQ8074 Dragonboard

2013-10-17 Thread David Brown

On Thu, Oct 17, 2013 at 11:25:10AM -0700, Rohit Vaswani wrote:

This patch adds basic board support for APQ8074 Dragonboard
which belongs to the Snapdragon 800 family.
For now, just support a basic machine with device tree.

Signed-off-by: Rohit Vaswani 
---


Do you mind putting some history in the commentary part of your
patches, especially, like this one, when you make it to v6.  Just a
brief description of what you've changed makes it a lot easier for
reviewers to determine if their concern has been addressed, and what
else might have changed.

This missed yesterday's pull request, so I'll probably make another
one to include this.

David

--
sent by an employee of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCHv6 2/4] ARM: msm: Add support for APQ8074 Dragonboard

2013-10-17 Thread David Brown

On Thu, Oct 17, 2013 at 11:25:10AM -0700, Rohit Vaswani wrote:

This patch adds basic board support for APQ8074 Dragonboard
which belongs to the Snapdragon 800 family.
For now, just support a basic machine with device tree.

Signed-off-by: Rohit Vaswani rvasw...@codeaurora.org
---


Do you mind putting some history in the commentary part of your
patches, especially, like this one, when you make it to v6.  Just a
brief description of what you've changed makes it a lot easier for
reviewers to determine if their concern has been addressed, and what
else might have changed.

This missed yesterday's pull request, so I'll probably make another
one to include this.

David

--
sent by an employee of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH 1/4] ARM: debug: Create CONFIG_DEBUG_MSM_UART and re-organize the selects for MSM

2013-10-16 Thread David Brown

On Thu, Oct 03, 2013 at 04:05:54PM -0700, Rohit Vaswani wrote:

Create the hidden config DEBUG_MSM_UART and clean-up the default selection
for CONFIG_DEBUG_LL_INCLUDE.

Signed-off-by: Rohit Vaswani 


Acked-by: David Brown 

--
sent by an employee of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[GIT PULL] msm cleanups for v3.13

2013-10-16 Thread David Brown
The following changes since commit 4a10c2ac2f368583138b774ca41fac4207911983:

  Linux 3.12-rc2 (2013-09-23 15:41:09 -0700)

are available in the git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/davidb/linux-msm.git 
tags/msm-cleanup-for-3.13

for you to fetch changes up to 81cf1e061d001fab44dbaa85fc4fbfb6da6713a1:

  ARM: msm: Rename msm devicetrees to have standard 'qcom' prefix (2013-09-25 
13:02:56 -0700)


General cleanups for MSM for 3.13

Some small cleanups for MSM.  Removes extraneous irq definitions that
aren't used on DT targets, moves the single existing board file to
board-dt.c in antipication of additional targets, and renames the
existing DT files to have a common 'qcom' prefix.


Kumar Gala (1):
  ARM: msm: Rename msm devicetrees to have standard 'qcom' prefix

Rohit Vaswani (1):
  ARM: msm: Create a common board-dt and config ARCH_MSM_DT

Stephen Boyd (1):
  ARM: msm: Remove irqs-*.h files for DT based targets

 arch/arm/boot/dts/Makefile |   4 +-
 .../{msm8660-surf.dts => qcom-msm8660-surf.dts}|   0
 .../dts/{msm8960-cdp.dts => qcom-msm8960-cdp.dts}  |   0
 arch/arm/mach-msm/Kconfig  |  13 +-
 arch/arm/mach-msm/Makefile |   3 +-
 arch/arm/mach-msm/board-dt-8660.c  |  48 
 arch/arm/mach-msm/{board-dt-8960.c => board-dt.c}  |  17 +-
 arch/arm/mach-msm/include/mach/irqs-8960.h | 277 -
 arch/arm/mach-msm/include/mach/irqs-8x60.h | 258 ---
 arch/arm/mach-msm/include/mach/irqs.h  |   5 -
 10 files changed, 20 insertions(+), 605 deletions(-)
 rename arch/arm/boot/dts/{msm8660-surf.dts => qcom-msm8660-surf.dts} (100%)
 rename arch/arm/boot/dts/{msm8960-cdp.dts => qcom-msm8960-cdp.dts} (100%)
 delete mode 100644 arch/arm/mach-msm/board-dt-8660.c
 rename arch/arm/mach-msm/{board-dt-8960.c => board-dt.c} (64%)
 delete mode 100644 arch/arm/mach-msm/include/mach/irqs-8960.h
 delete mode 100644 arch/arm/mach-msm/include/mach/irqs-8x60.h
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH 3/4] ARM: debug: msm: Add DEBUG_LL support for ARCH_MSM8974

2013-10-16 Thread David Brown

On Thu, Oct 03, 2013 at 04:05:56PM -0700, Rohit Vaswani wrote:

Add debug uart support for MSM8974. This patch adds a Kconfig
entry and the base address for the debug uart.

Signed-off-by: Rohit Vaswani 
---
arch/arm/Kconfig.debug   | 9 +
arch/arm/include/debug/msm.S | 5 +
2 files changed, 14 insertions(+)


Acked-by: David Brown 

--
sent by an employee of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH 3/4] ARM: debug: msm: Add DEBUG_LL support for ARCH_MSM8974

2013-10-16 Thread David Brown

On Thu, Oct 03, 2013 at 04:05:56PM -0700, Rohit Vaswani wrote:

Add debug uart support for MSM8974. This patch adds a Kconfig
entry and the base address for the debug uart.

Signed-off-by: Rohit Vaswani rvasw...@codeaurora.org
---
arch/arm/Kconfig.debug   | 9 +
arch/arm/include/debug/msm.S | 5 +
2 files changed, 14 insertions(+)


Acked-by: David Brown dav...@codeaurora.org

--
sent by an employee of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[GIT PULL] msm cleanups for v3.13

2013-10-16 Thread David Brown
The following changes since commit 4a10c2ac2f368583138b774ca41fac4207911983:

  Linux 3.12-rc2 (2013-09-23 15:41:09 -0700)

are available in the git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/davidb/linux-msm.git 
tags/msm-cleanup-for-3.13

for you to fetch changes up to 81cf1e061d001fab44dbaa85fc4fbfb6da6713a1:

  ARM: msm: Rename msm devicetrees to have standard 'qcom' prefix (2013-09-25 
13:02:56 -0700)


General cleanups for MSM for 3.13

Some small cleanups for MSM.  Removes extraneous irq definitions that
aren't used on DT targets, moves the single existing board file to
board-dt.c in antipication of additional targets, and renames the
existing DT files to have a common 'qcom' prefix.


Kumar Gala (1):
  ARM: msm: Rename msm devicetrees to have standard 'qcom' prefix

Rohit Vaswani (1):
  ARM: msm: Create a common board-dt and config ARCH_MSM_DT

Stephen Boyd (1):
  ARM: msm: Remove irqs-*.h files for DT based targets

 arch/arm/boot/dts/Makefile |   4 +-
 .../{msm8660-surf.dts = qcom-msm8660-surf.dts}|   0
 .../dts/{msm8960-cdp.dts = qcom-msm8960-cdp.dts}  |   0
 arch/arm/mach-msm/Kconfig  |  13 +-
 arch/arm/mach-msm/Makefile |   3 +-
 arch/arm/mach-msm/board-dt-8660.c  |  48 
 arch/arm/mach-msm/{board-dt-8960.c = board-dt.c}  |  17 +-
 arch/arm/mach-msm/include/mach/irqs-8960.h | 277 -
 arch/arm/mach-msm/include/mach/irqs-8x60.h | 258 ---
 arch/arm/mach-msm/include/mach/irqs.h  |   5 -
 10 files changed, 20 insertions(+), 605 deletions(-)
 rename arch/arm/boot/dts/{msm8660-surf.dts = qcom-msm8660-surf.dts} (100%)
 rename arch/arm/boot/dts/{msm8960-cdp.dts = qcom-msm8960-cdp.dts} (100%)
 delete mode 100644 arch/arm/mach-msm/board-dt-8660.c
 rename arch/arm/mach-msm/{board-dt-8960.c = board-dt.c} (64%)
 delete mode 100644 arch/arm/mach-msm/include/mach/irqs-8960.h
 delete mode 100644 arch/arm/mach-msm/include/mach/irqs-8x60.h
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH 1/4] ARM: debug: Create CONFIG_DEBUG_MSM_UART and re-organize the selects for MSM

2013-10-16 Thread David Brown

On Thu, Oct 03, 2013 at 04:05:54PM -0700, Rohit Vaswani wrote:

Create the hidden config DEBUG_MSM_UART and clean-up the default selection
for CONFIG_DEBUG_LL_INCLUDE.

Signed-off-by: Rohit Vaswani rvasw...@codeaurora.org


Acked-by: David Brown dav...@codeaurora.org

--
sent by an employee of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH 2/2] USB: ehci-msm: Add device tree support and binding information

2013-10-11 Thread David Brown

On Fri, Oct 11, 2013 at 02:46:10PM +0300, Ivan T. Ivanov wrote:

From: "Ivan T. Ivanov" 

Allows MSM EHCI controller to be specified via device tree.

Signed-off-by: Ivan T. Ivanov 
---
.../devicetree/bindings/usb/msm-hsusb.txt  |   17 +
drivers/usb/host/ehci-msm.c|   15 +--


Acked-by: David Brown 

--
sent by an employee of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH 1/2] ehci-msm: Remove global struct usb_phy variable

2013-10-11 Thread David Brown

On Fri, Oct 11, 2013 at 02:46:09PM +0300, Ivan T. Ivanov wrote:

From: "Ivan T. Ivanov" 

Use struct usb_hcd::phy to hold USB PHY instance.

Signed-off-by: Ivan T. Ivanov 
---
drivers/usb/host/ehci-msm.c |5 +++--


Acked-by: David Brown 

--
sent by an employee of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH 2/2] USB: ehci-msm: Add device tree support and binding information

2013-10-11 Thread David Brown

On Fri, Oct 11, 2013 at 02:46:10PM +0300, Ivan T. Ivanov wrote:

From: Ivan T. Ivanov iiva...@mm-sol.com

Allows MSM EHCI controller to be specified via device tree.

Signed-off-by: Ivan T. Ivanov iiva...@mm-sol.com
---
.../devicetree/bindings/usb/msm-hsusb.txt  |   17 +
drivers/usb/host/ehci-msm.c|   15 +--


Acked-by: David Brown dav...@codeaurora.org

--
sent by an employee of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH 1/2] ehci-msm: Remove global struct usb_phy variable

2013-10-11 Thread David Brown

On Fri, Oct 11, 2013 at 02:46:09PM +0300, Ivan T. Ivanov wrote:

From: Ivan T. Ivanov iiva...@mm-sol.com

Use struct usb_hcd::phy to hold USB PHY instance.

Signed-off-by: Ivan T. Ivanov iiva...@mm-sol.com
---
drivers/usb/host/ehci-msm.c |5 +++--


Acked-by: David Brown dav...@codeaurora.org

--
sent by an employee of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH 08/27] mmc: msm_sdcc: Move away from using deprecated APIs

2013-09-26 Thread David Brown

On Thu, Sep 26, 2013 at 04:54:33PM +0200, Ulf Hansson wrote:

Suspend and resume of cards are being handled from the protocol layer
and consequently the mmc_suspend|resume_host APIs are deprecated.

This means we can simplify the suspend|resume callbacks by removing the
use of the deprecated APIs.

Additionally, remove dead code which also used the deprecated APIs.

Cc: David Brown 
Cc: Daniel Walker 
Cc: Bryan Huntsman 
Cc: linux-arm-...@vger.kernel.org
Signed-off-by: Ulf Hansson 
---
drivers/mmc/host/msm_sdcc.c |   27 ++-
1 file changed, 2 insertions(+), 25 deletions(-)


Acked-by: David Brown 

--
sent by an employee of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCHv4 2/3] ARM: msm: Add support for APQ8074 Dragonboard

2013-09-26 Thread David Brown

On Thu, Sep 26, 2013 at 02:33:53PM -0500, Kumar Gala wrote:


"ePAPR 1.1 section 2.2.1.1 "Node Name Requirements" specifies that any
node that has a reg property must include a unit address in its name
with value matching the first entry in its reg property. Conversely, if
a node does not have a reg property, the node name must not include a
unit address."

The soc node we have does not have a reg property ?


Not 100% sure what people will decide on this.  There are a number of
examples on the PPC side (arch/powerpc/boot/dts) that are soc@ADDR,
but they don't typically have "reg" properties at the soc level.

Let's go ahead w/o the unit address (as you have it) for now.


What is the address even supposed to mean?  Are we expecting multiple
'soc' nodes?

David
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCHv4 2/3] ARM: msm: Add support for APQ8074 Dragonboard

2013-09-26 Thread David Brown

On Thu, Sep 26, 2013 at 02:33:53PM -0500, Kumar Gala wrote:


ePAPR 1.1 section 2.2.1.1 Node Name Requirements specifies that any
node that has a reg property must include a unit address in its name
with value matching the first entry in its reg property. Conversely, if
a node does not have a reg property, the node name must not include a
unit address.

The soc node we have does not have a reg property ?


Not 100% sure what people will decide on this.  There are a number of
examples on the PPC side (arch/powerpc/boot/dts) that are soc@ADDR,
but they don't typically have reg properties at the soc level.

Let's go ahead w/o the unit address (as you have it) for now.


What is the address even supposed to mean?  Are we expecting multiple
'soc' nodes?

David
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH 08/27] mmc: msm_sdcc: Move away from using deprecated APIs

2013-09-26 Thread David Brown

On Thu, Sep 26, 2013 at 04:54:33PM +0200, Ulf Hansson wrote:

Suspend and resume of cards are being handled from the protocol layer
and consequently the mmc_suspend|resume_host APIs are deprecated.

This means we can simplify the suspend|resume callbacks by removing the
use of the deprecated APIs.

Additionally, remove dead code which also used the deprecated APIs.

Cc: David Brown dav...@codeaurora.org
Cc: Daniel Walker dwal...@fifo99.com
Cc: Bryan Huntsman bry...@codeaurora.org
Cc: linux-arm-...@vger.kernel.org
Signed-off-by: Ulf Hansson ulf.hans...@linaro.org
---
drivers/mmc/host/msm_sdcc.c |   27 ++-
1 file changed, 2 insertions(+), 25 deletions(-)


Acked-by: David Brown dav...@codeaurora.org

--
sent by an employee of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH] iommu: remove unnecessary platform_set_drvdata()

2013-09-24 Thread David Brown

On Thu, Aug 22, 2013 at 10:53:01AM +0900, Jingoo Han wrote:

The driver core clears the driver data to NULL after device_release
or on probe failure. Thus, it is not needed to manually clear the
device driver data to NULL.

Signed-off-by: Jingoo Han 
---
drivers/iommu/msm_iommu_dev.c |2 --


With the splitting:

Acked-by: David Brown 

--
sent by an employee of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH] iommu: remove unnecessary platform_set_drvdata()

2013-09-24 Thread David Brown

On Thu, Aug 22, 2013 at 10:53:01AM +0900, Jingoo Han wrote:

The driver core clears the driver data to NULL after device_release
or on probe failure. Thus, it is not needed to manually clear the
device driver data to NULL.

Signed-off-by: Jingoo Han jg1@samsung.com
---
drivers/iommu/msm_iommu_dev.c |2 --


With the splitting:

Acked-by: David Brown dav...@codeaurora.org

--
sent by an employee of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH] ARM: msm: Move msm devicetrees under a Qualcomm dir

2013-09-12 Thread David Brown

On Thu, Sep 12, 2013 at 12:55:36PM -0500, Kumar Gala wrote:


On Sep 12, 2013, at 12:06 PM, Olof Johansson wrote:



My original request to please use a common prefix for your product
families stands. Please prefix with msm-*, or if you have to, qcom-*
instead, since you guys can't seem to make your mind up on standard
prefixes (msm, apq, etc).


This is silly, I dont see the reason to go with
qcom-apq-.dts and than in the future drop qcom- when we
mostly likely shift to a dir structure.  As engineers we are all too
aware of the lack of sanity in marketing names, but its what we have
so we have to live with it.


At least what we'd decided a year or two ago was to call _everything_
with an msm* prefix.  If marketing comes up with cute prefixes for
things, we would basically ignore them.  So, under that, it should be
an msm8074-dragonboard.  Admittedly, it might be a little confusing
with the name of the product having the apq in it, but as others have
pointed out, I think there is less confusing than not having a common
prefix on our MSM products.

At least so far, there are no chips where apq vs msm actually
distinguishes anything.  In fact, a simple "decoder ring" would point
out that the 'apq' usually corresponds with the second digit being a
zero.  It doesn't help that we've added an 'mpq' prefix as well.

I don't really see how to satisfy all of this other than qcom-apq*, or
just continue to use msm*.

David

--
sent by an employee of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH] ARM: msm: Move msm devicetrees under a Qualcomm dir

2013-09-12 Thread David Brown

On Thu, Sep 12, 2013 at 12:55:36PM -0500, Kumar Gala wrote:


On Sep 12, 2013, at 12:06 PM, Olof Johansson wrote:



My original request to please use a common prefix for your product
families stands. Please prefix with msm-*, or if you have to, qcom-*
instead, since you guys can't seem to make your mind up on standard
prefixes (msm, apq, etc).


This is silly, I dont see the reason to go with
qcom-apqSOC-BOARD.dts and than in the future drop qcom- when we
mostly likely shift to a dir structure.  As engineers we are all too
aware of the lack of sanity in marketing names, but its what we have
so we have to live with it.


At least what we'd decided a year or two ago was to call _everything_
with an msm* prefix.  If marketing comes up with cute prefixes for
things, we would basically ignore them.  So, under that, it should be
an msm8074-dragonboard.  Admittedly, it might be a little confusing
with the name of the product having the apq in it, but as others have
pointed out, I think there is less confusing than not having a common
prefix on our MSM products.

At least so far, there are no chips where apq vs msm actually
distinguishes anything.  In fact, a simple decoder ring would point
out that the 'apq' usually corresponds with the second digit being a
zero.  It doesn't help that we've added an 'mpq' prefix as well.

I don't really see how to satisfy all of this other than qcom-apq*, or
just continue to use msm*.

David

--
sent by an employee of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


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

2013-09-11 Thread David Brown

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 @ 0x200 (1067699), tags/device tree @ 
0x1e0
Uncompressing Linux... done, booting the kernel.
[0.00] Booting Linux on physical CPU 0x0
[0.00] Linux version 3.11.0-rc4-3-g7c8394e (iivanov@dev) (gcc 
version 4.6.3 (GCC) ) #502 SMP PREEMPT Tue Aug 6 12:09:07 EEST3
[0.00] CPU: ARMv7 Processor [512f06f0] revision 0 (ARMv7), cr=10c5387d
[0.00] CPU: PIPT / VIPT nonaliasing data cache, PIPT instruction cache
[0.00] 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

--
sent by an employee of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


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

2013-09-11 Thread David Brown

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 @ 0x200 (1067699), tags/device tree @ 
0x1e0
Uncompressing Linux... done, booting the kernel.
[0.00] Booting Linux on physical CPU 0x0
[0.00] Linux version 3.11.0-rc4-3-g7c8394e (iivanov@dev) (gcc 
version 4.6.3 (GCC) ) #502 SMP PREEMPT Tue Aug 6 12:09:07 EEST3
[0.00] CPU: ARMv7 Processor [512f06f0] revision 0 (ARMv7), cr=10c5387d
[0.00] CPU: PIPT / VIPT nonaliasing data cache, PIPT instruction cache
[0.00] 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

--
sent by an employee of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH 1/3] mfd: pm8921: include missing linux/module.h

2013-08-20 Thread David Brown

On Tue, Aug 20, 2013 at 04:01:26PM +0900, Jingoo Han wrote:

Include  in order to fix the following errors.

drivers/mfd/pm8921-core.c:209:16: error: expected declaration specifiers or 
'...' before string constant
drivers/mfd/pm8921-core.c:210:20: error: expected declaration specifiers or 
'...' before string constant
drivers/mfd/pm8921-core.c:211:16: error: expected declaration specifiers or 
'...' before string constant
drivers/mfd/pm8921-core.c:212:14: error: expected declaration specifiers or 
'...' before string constant

Signed-off-by: Jingoo Han 
---
drivers/mfd/pm8921-core.c |1 +
1 file changed, 1 insertion(+)


Acked-by: David Brown 

--
sent by an employee of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH 1/3] mfd: pm8921: include missing linux/module.h

2013-08-20 Thread David Brown

On Tue, Aug 20, 2013 at 04:01:26PM +0900, Jingoo Han wrote:

Include linux/module.h in order to fix the following errors.

drivers/mfd/pm8921-core.c:209:16: error: expected declaration specifiers or 
'...' before string constant
drivers/mfd/pm8921-core.c:210:20: error: expected declaration specifiers or 
'...' before string constant
drivers/mfd/pm8921-core.c:211:16: error: expected declaration specifiers or 
'...' before string constant
drivers/mfd/pm8921-core.c:212:14: error: expected declaration specifiers or 
'...' before string constant

Signed-off-by: Jingoo Han jg1@samsung.com
---
drivers/mfd/pm8921-core.c |1 +
1 file changed, 1 insertion(+)


Acked-by: David Brown dav...@codeaurora.org

--
sent by an employee of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH v2] backlight: Convert from Legacy pm ops to dev_pm_ops

2013-08-09 Thread David Brown

On Wed, Nov 14, 2040 at 04:27:17AM -0700, Shuah Khan wrote:

...


The clock on your computer might be running just a wee bit ahead.

Either that, or we're getting patches from the future.

David

--
sent by an employee of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


  1   2   3   4   5   >