linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
From: daniel.thompson@linaro.org (Daniel Thompson)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v7 0/4] arm: Fix DEBUG_LL for multi-platform kernels (without PL01X)
Date: Mon, 14 Jul 2014 11:39:54 +0100	[thread overview]
Message-ID: <53C3B37A.8030506@linaro.org> (raw)
In-Reply-To: <53C39D5F.6050901@linaro.org>

On 14/07/14 10:05, Daniel Thompson wrote:
> On 12/07/14 12:10, Russell King - ARM Linux wrote:
>> On Sat, Jul 12, 2014 at 11:16:02AM +0100, Russell King - ARM Linux wrote:
>>> On Mon, Jun 30, 2014 at 12:30:51PM +0100, Daniel Thompson wrote:
>>>> This patchset removes some single-platform compatibility tricks related
>>>> to DEBUG_LL and, as a result, allows multi_v7_defconfig derived builds
>>>> to enable DEBUG_LL. Currently the user selected kbuild setting is
>>>> ignored and the PL01X's DEBUG_LL stub is silently selected instead. This
>>>> is a pain if your hardware doesn't have this cell, not least because it
>>>> takes a little time to figure out that kbuild built the wrong code.
>>>
>>> I don't think this is quite right, because I'm now seeing randconfig
>>> finding build errors with this.  We can end up with this configuration:
>>>
>>> CONFIG_DEBUG_LL=y
>>> CONFIG_DEBUG_LL_UART_NONE=y
>>> # CONFIG_DEBUG_ICEDCC is not set
>>> # CONFIG_DEBUG_SEMIHOSTING is not set
>>> # CONFIG_DEBUG_LL_UART_8250 is not set
>>> # CONFIG_DEBUG_LL_UART_PL01X is not set
>>> CONFIG_DEBUG_LL_INCLUDE="mach/debug-macro.S"
>>> # CONFIG_DEBUG_UART_8250 is not set
>>>
>>> which results in:
>>>
>>> arch/arm/kernel/debug.S:24:33: fatal error: mach/debug-macro.S: No such file or directory
>>> make[2]: *** [arch/arm/kernel/debug.o] Error 1
>>> arch/arm/kernel/head.S:27:33: fatal error: mach/debug-macro.S: No such file or directory
>>> make[2]: *** [arch/arm/kernel/head.o] Error 1
>>> Full config file:
>>> http://www.arm.linux.org.uk/developer/build/file.php?lid=11023
> 
> Thanks. I will look at this.
> 
> Problem is that by making the build system honour the user choice we end
> up breaking the build when the user makes a bad choice (albeit a bad
> choice that they should not have been given in the first place).
> 
> I guess the best fix is to get rid of CONFIG_DEBUG_LL_UART_NONE altogether.
> 
> 
>> Note that this also breaks building versatile as an oldconfig.  I'll drop
>> the patch series from my tree for the time being.
> 
> There is a difficult problem with oldconfig.
> 
> Today DEBUG_LL only works on versatile defconfigs (and oldconfig
> upgrades from there) because although CONFIG_DEBUG_LL_UART_NONE is
> selected the build system does not honour this and behaves as though the
> use selected CONFIG_DEBUG_LL_UART_PL01X instead.
> 
> Unfortunately if we fix this and remove CONFIG_DEBUG_LL_UART_NONE as
> proposed above then the oldconfig will silently select
> CONFIG_DEBUG_SEMIHOSTING.
> 
> In other words I will be able to offer a patch so that oldconfig
> *compiles* but I don't know how to get it to preserve behaviour (or
> whether this matters).
> 
> Hints about what to do would be very welcome.

Russell,

Out of interest, would you accept the much less ambitious older version
of this patch for the upcoming merge window:
http://thread.gmane.org/gmane.linux.kernel/1678055

The version linked above solves the problems for multi-platform kernel
users (which were caused by SPEARr being enabled in the default
multi-platform builds) but doesn't seek to fix things like ICEDCC and
semihosting for the remaining single platform kernels.


Daniel.

  reply	other threads:[~2014-07-14 10:39 UTC|newest]

Thread overview: 78+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-04-04 11:17 [PATCH] arm: Fix DEBUG_LL for multi-platform kernels (without PL01X) Daniel Thompson
2014-04-04 11:39 ` Arnd Bergmann
2014-04-04 14:02   ` Daniel Thompson
2014-04-04 14:14   ` Paul Bolle
2014-04-04 14:52     ` Paul Bolle
2014-04-04 14:41 ` Russell King - ARM Linux
2014-04-04 15:18   ` Daniel Thompson
2014-04-04 14:47 ` [PATCH v2] " Daniel Thompson
2014-04-04 15:41   ` [PATCH v3] " Daniel Thompson
2014-04-07 12:48     ` Daniel Thompson
2014-04-07 15:54     ` [PATCH v4 0/5] " Daniel Thompson
2014-04-07 15:54       ` [PATCH v4 1/5] ARM: versatile: Enable DEBUG_LL_UART_PL01X Daniel Thompson
2014-04-07 15:54       ` [PATCH v4 2/5] ARM: ep93xx: " Daniel Thompson
2014-04-07 15:54       ` [PATCH v4 3/5] ARM: Conceal DEBUG_LL_UART_NONE from unsupported platforms Daniel Thompson
2014-04-07 15:54       ` [PATCH v4 4/5] arm: Seperate DEBUG_UART_PHYS from DEBUG_LL on EP93XX Daniel Thompson
2014-04-07 15:54       ` [PATCH v4 5/5] arm: Fix DEBUG_LL for multi-platform kernels (without PL01X) Daniel Thompson
2014-04-24 16:00       ` [RESEND PATCH v5 0/5] " Daniel Thompson
2014-04-24 16:00         ` [RESEND PATCH v5 1/5] ARM: versatile: Enable DEBUG_LL_UART_PL01X Daniel Thompson
2014-04-24 16:00         ` [RESEND PATCH v5 2/5] ARM: ep93xx: " Daniel Thompson
2014-04-24 16:00         ` [RESEND PATCH v5 3/5] ARM: Conceal DEBUG_LL_UART_NONE from unsupported platforms Daniel Thompson
2014-04-24 16:00         ` [RESEND PATCH v5 4/5] arm: Seperate DEBUG_UART_PHYS from DEBUG_LL on EP93XX Daniel Thompson
2014-04-24 16:00         ` [RESEND PATCH v5 5/5] arm: Fix DEBUG_LL for multi-platform kernels (without PL01X) Daniel Thompson
2014-05-23 15:10         ` [RESEND PATCH v5 0/5] " Daniel Thompson
2014-05-23 15:10           ` [RESEND PATCH v5 1/5] ARM: versatile: Enable DEBUG_LL_UART_PL01X Daniel Thompson
2014-05-23 15:10           ` [RESEND PATCH v5 2/5] ARM: ep93xx: " Daniel Thompson
2014-05-23 15:10           ` [RESEND PATCH v5 3/5] ARM: Conceal DEBUG_LL_UART_NONE from unsupported platforms Daniel Thompson
2014-05-23 15:35             ` Arnd Bergmann
2014-05-26 13:39               ` Arnd Bergmann
2014-05-27 13:13                 ` Daniel Thompson
2014-05-27 13:37                   ` Arnd Bergmann
2014-05-27 13:52                     ` Daniel Thompson
2014-05-23 15:10           ` [RESEND PATCH v5 4/5] arm: Seperate DEBUG_UART_PHYS from DEBUG_LL on EP93XX Daniel Thompson
2014-05-23 15:10           ` [RESEND PATCH v5 5/5] arm: Fix DEBUG_LL for multi-platform kernels (without PL01X) Daniel Thompson
2014-05-27 16:00           ` [PATCH v6 0/5] " Daniel Thompson
2014-05-27 16:00             ` [PATCH v6 1/5] ARM: versatile: Enable DEBUG_LL_UART_PL01X Daniel Thompson
2014-05-27 16:00             ` [PATCH v6 2/5] ARM: ep93xx: " Daniel Thompson
2014-05-27 16:00             ` [PATCH v6 3/5] ARM: Hide DEBUG_LL_UART_NONE from unsupported platforms Daniel Thompson
2014-05-27 16:00             ` [PATCH v6 4/5] arm: Seperate DEBUG_UART_PHYS from DEBUG_LL on EP93XX Daniel Thompson
2014-05-27 16:00             ` [PATCH v6 5/5] arm: Fix DEBUG_LL for multi-platform kernels (without PL01X) Daniel Thompson
2014-06-30 11:30             ` [PATCH v7 0/4] " Daniel Thompson
2014-06-30 11:30               ` [PATCH v7 1/4] ARM: versatile: Enable DEBUG_LL_UART_PL01X Daniel Thompson
2014-06-30 11:30               ` [PATCH v7 2/4] ARM: ep93xx: " Daniel Thompson
2014-06-30 11:30               ` [PATCH v7 3/4] arm: Seperate DEBUG_UART_PHYS from DEBUG_LL on EP93XX Daniel Thompson
2014-06-30 11:30               ` [PATCH v7 4/4] arm: Fix DEBUG_LL for multi-platform kernels (without PL01X) Daniel Thompson
2014-06-30 13:20               ` [PATCH v7 0/4] " Arnd Bergmann
2014-07-12 10:16               ` Russell King - ARM Linux
2014-07-12 11:10                 ` Russell King - ARM Linux
2014-07-14  9:05                   ` Daniel Thompson
2014-07-14 10:39                     ` Daniel Thompson [this message]
2014-07-14 15:27                     ` Arnd Bergmann
2014-07-15 10:32                       ` Arnd Bergmann
2014-07-15 10:54                         ` Daniel Thompson
2014-08-19 14:48               ` [PATCH v8 0/9] " Daniel Thompson
2014-08-19 14:48                 ` [PATCH v8 1/9] arm: versatile: Enable DEBUG_LL_UART_PL01X Daniel Thompson
2014-08-19 14:48                 ` [PATCH v8 2/9] arm: ep93xx: " Daniel Thompson
2014-08-19 14:48                 ` [PATCH v8 3/9] arm: Remove DEBUG_LL_UART_NONE Daniel Thompson
2014-08-19 14:48                 ` [PATCH v8 4/9] arm: ks8695: Migrate debug_ll macros to shared directory Daniel Thompson
2014-08-19 14:48                 ` [PATCH v8 5/9] arm: omap1: Migrate debug_ll macros to use 8250.S Daniel Thompson
2014-08-19 14:48                 ` [PATCH v8 6/9] arm: netx: Migrate DEBUG_LL macros to shared directory Daniel Thompson
2014-09-15 16:34                   ` Paul Bolle
2014-09-15 21:47                     ` Daniel Thompson
2014-09-16 22:37                       ` Daniel Thompson
2014-08-19 14:48                 ` [PATCH v8 7/9] arm: sa1100: " Daniel Thompson
2014-08-19 14:48                 ` [PATCH v8 8/9] arm: Seperate DEBUG_UART_PHYS from DEBUG_LL on EP93XX Daniel Thompson
2014-08-19 14:48                 ` [PATCH v8 9/9] arm: Fix DEBUG_LL for multi-platform kernels (without PL01X) Daniel Thompson
2014-08-19 15:16                 ` [PATCH v9 0/9] " Daniel Thompson
2014-08-19 15:16                   ` [PATCH v9 1/9] arm: versatile: Enable DEBUG_LL_UART_PL01X Daniel Thompson
2014-08-19 15:16                   ` [PATCH v9 2/9] arm: ep93xx: " Daniel Thompson
2014-08-19 15:16                   ` [PATCH v9 3/9] arm: Remove DEBUG_LL_UART_NONE Daniel Thompson
2014-08-19 15:16                   ` [PATCH v9 4/9] arm: ks8695: Migrate debug_ll macros to shared directory Daniel Thompson
2014-08-21 11:46                     ` Greg Ungerer
2014-09-01  9:04                       ` Daniel Thompson
2014-08-19 15:16                   ` [PATCH v9 5/9] arm: omap1: Migrate debug_ll macros to use 8250.S Daniel Thompson
2014-09-08 23:04                     ` Tony Lindgren
2014-08-19 15:16                   ` [PATCH v9 6/9] arm: netx: Migrate DEBUG_LL macros to shared directory Daniel Thompson
2014-08-19 15:16                   ` [PATCH v9 7/9] arm: sa1100: " Daniel Thompson
2014-08-19 15:16                   ` [PATCH v9 8/9] arm: Seperate DEBUG_UART_PHYS from DEBUG_LL on EP93XX Daniel Thompson
2014-08-19 15:16                   ` [PATCH v9 9/9] arm: Fix DEBUG_LL for multi-platform kernels (without PL01X) Daniel Thompson

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=53C3B37A.8030506@linaro.org \
    --to=daniel.thompson@linaro.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).