Thread (28 messages) flat view 28 messages, 6 authors, 2012-09-05
STALE5082d

[PATCH 1/6] ARM: move ARCH config definitions into mach dirs

From: Domenico Andreoli <hidden>
Date: 2012-08-31 11:05:12

On Thu, Aug 30, 2012 at 08:28:31PM +0100, Russell King - ARM Linux wrote:
I think what we need is arch/arm/include/debug, move the platform specific
debug-macros headers into there, named using platform specific file names.
Then we have the config system define a string-based config:

config DEBUG_LL_INCLUDE
	string
	default "<debug/icedcc.S>" if DEBUG_ICEDCC
	default "<debug/msm.S>" if DEBUG_MSM_UART1 || DEBUG_MSM_UART2 || DEBUG_MSM_UART3
... etc ...
	default "mach/debug-macros.S"

And then we can have the various assembly codes do:

#include CONFIG_DEBUG_LL_INCLUDE

Not only does this give a migration path, but it also gives folk a reason
to move to the 'new way' if they want to be part of a multi-platform
kernel - and it's a trivial thing to do.  Just move the include file,
add an entry to the DEBUG_LL_INCLUDE entry and the "Kernel low-level
debugging port" choice statement, and job done for both non-multi-platform
and multi-platform kernels.

What's even nicer about this approach is it doesn't require everyone to
change simultaneously - it can be done progressively as required.
This means that:

  1) DEBUG_LL console is specified statically (it's a debug option so you
     are supposed to be already building the kernel, right?)

  2) It's not portable across incompatible SoCs so it must really stay
     disabled on production multi-platform kernels.

Regards,
Domenico
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help