public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
From: Marek Vasut <marex@denx.de>
To: Tom Rini <trini@konsulko.com>
Cc: u-boot@lists.denx.de, Simon Glass <sjg@chromium.org>,
	Simon Goldschmidt <simon.k.r.goldschmidt@gmail.com>
Subject: Re: [PATCH 02/14] lmb: Use CONFIG_LMB_*_REGIONS only if they are defined
Date: Mon, 30 Aug 2021 00:40:07 +0200	[thread overview]
Message-ID: <2cffb09e-23aa-afce-962e-1eb9727457db@denx.de> (raw)
In-Reply-To: <20210829222356.GL858@bill-the-cat>

On 8/30/21 12:23 AM, Tom Rini wrote:
> On Mon, Aug 30, 2021 at 12:19:59AM +0200, Marek Vasut wrote:
>> On 8/30/21 12:10 AM, Tom Rini wrote:
>>> On Sun, Aug 29, 2021 at 11:47:58PM +0200, Marek Vasut wrote:
>>>> On 8/29/21 9:32 PM, Tom Rini wrote:
>>>>> On Sun, Aug 29, 2021 at 09:24:46PM +0200, Marek Vasut wrote:
>>>>>> On 8/29/21 8:02 PM, Tom Rini wrote:
>>>>>>> On Sun, Aug 29, 2021 at 06:26:23PM +0200, Marek Vasut wrote:
>>>>>>>> On 8/15/21 9:47 PM, Tom Rini wrote:
>>>>>>>>> On Sun, Aug 15, 2021 at 08:13:02PM +0200, Marek Vasut wrote:
>>>>>>>>>
>>>>>>>>>> The CONFIG_LMB_*_REGIONS are defined only if CONFIG_LMB is enabled,
>>>>>>>>>> protect access to those two config options to avoid undefined macro
>>>>>>>>>> errors.
>>>>>>>>>>
>>>>>>>>>> Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com>
>>>>>>>>>> Cc: Simon Glass <sjg@chromium.org>
>>>>>>>>>> Cc: Simon Goldschmidt <simon.k.r.goldschmidt@gmail.com>
>>>>>>>>>> Cc: Tom Rini <trini@konsulko.com>
>>>>>>>>>> ---
>>>>>>>>>>       include/lmb.h | 4 ++--
>>>>>>>>>>       1 file changed, 2 insertions(+), 2 deletions(-)
>>>>>>>>>>
>>>>>>>>>> diff --git a/include/lmb.h b/include/lmb.h
>>>>>>>>>> index 3c4afdf9f0..fa1474a360 100644
>>>>>>>>>> --- a/include/lmb.h
>>>>>>>>>> +++ b/include/lmb.h
>>>>>>>>>> @@ -44,7 +44,7 @@ struct lmb_property {
>>>>>>>>>>       struct lmb_region {
>>>>>>>>>>       	unsigned long cnt;
>>>>>>>>>>       	unsigned long max;
>>>>>>>>>> -#if IS_ENABLED(CONFIG_LMB_USE_MAX_REGIONS)
>>>>>>>>>> +#if IS_ENABLED(CONFIG_LMB) && IS_ENABLED(CONFIG_LMB_USE_MAX_REGIONS)
>>>>>>>
>>>>>>> This doesn't make sense to me, still.  You cannot enable
>>>>>>> CONFIG_LMB_USE_MAX_REGIONS without CONFIG_LMB as the former depends on
>>>>>>> the latter in Kconfig.
>>>>>>>
>>>>>>>>>>       	struct lmb_property region[CONFIG_LMB_MAX_REGIONS];
>>>>>>>>>>       #else
>>>>>>>>>>       	struct lmb_property *region;
>>>>>>>>>> @@ -67,7 +67,7 @@ struct lmb_region {
>>>>>>>>>>       struct lmb {
>>>>>>>>>>       	struct lmb_region memory;
>>>>>>>>>>       	struct lmb_region reserved;
>>>>>>>>>> -#if !IS_ENABLED(CONFIG_LMB_USE_MAX_REGIONS)
>>>>>>>>>> +#if IS_ENABLED(CONFIG_LMB) && !IS_ENABLED(CONFIG_LMB_USE_MAX_REGIONS)
>>>>>>>>>>       	struct lmb_property memory_regions[CONFIG_LMB_MEMORY_REGIONS];
>>>>>>>>>>       	struct lmb_property reserved_regions[CONFIG_LMB_RESERVED_REGIONS];
>>>>>>>>>>       #endif
>>>>>>>>>
>>>>>>>>> We shouldn't need this at all.  LMB and LMB_USE_MAX_REGIONS are both in
>>>>>>>>> Kconfig and have the dependencies expressed that way.
>>>>>>>>
>>>>>>>> However, CONFIG_LMB_MEMORY_REGIONS and CONFIG_LMB_RESERVED_REGIONS may be
>>>>>>>> undefined if CONFIG_LMB and !CONFIG_LMB_USE_MAX_REGIONS . They are four
>>>>>>>> different symbols.
>>>>>>>
>>>>>>> I'm still not seeing it, sorry.  Is there some case where we're trying
>>>>>>> to access a struct lmb without CONFIG_LMB enabled?
>>>>>>>
>>>>>>
>>>>>> See build failure
>>>>>> https://source.denx.de/u-boot/custodians/u-boot-sh/-/jobs/315331
>>>>>
>>>>> Ah, progress.  Drop <lmb.h> from <image.h> since we already have a
>>>>> forward declaration of struct lmb?  But it's not failing without this
>>>>> series too, so what's changing?
>>>>
>>>> See 01/14 in this series.
>>>
>>> Ah, so drop 1/14 then.
>>
>> Why ? That patch is correct.
> 
> It's not quite right, 1/14 and then 2/14 are papering over the fact that
> lmb.h, and it's including headers / files, need to be cleaned up so that
> we don't need to have redundant tests in the header.

1/14 disables LMB and CMD_BDI for tools build, we do not need those, so 
1/14 is correct.

What kind of cleanup of lmb.h do you have in mind ?

  reply	other threads:[~2021-08-29 22:40 UTC|newest]

Thread overview: 48+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-08-15 18:13 [PATCH 01/14] configs: Disable LMB and BDI for tools-only Marek Vasut
2021-08-15 18:13 ` [PATCH 02/14] lmb: Use CONFIG_LMB_*_REGIONS only if they are defined Marek Vasut
2021-08-15 19:47   ` Tom Rini
2021-08-29 16:26     ` Marek Vasut
2021-08-29 18:02       ` Tom Rini
2021-08-29 19:24         ` Marek Vasut
2021-08-29 19:32           ` Tom Rini
2021-08-29 21:47             ` Marek Vasut
2021-08-29 22:10               ` Tom Rini
2021-08-29 22:19                 ` Marek Vasut
2021-08-29 22:23                   ` Tom Rini
2021-08-29 22:40                     ` Marek Vasut [this message]
2021-08-29 22:51                       ` Tom Rini
2021-08-29 23:00                         ` Marek Vasut
2021-08-29 23:11                           ` Tom Rini
2021-08-30  9:45                             ` Marek Vasut
2021-08-30 12:01                               ` Tom Rini
2021-09-04 14:03                                 ` Marek Vasut
2021-09-04 14:10                                   ` Tom Rini
2021-09-04 15:15                                     ` Marek Vasut
2021-09-04 15:17                                       ` Tom Rini
2021-09-04 16:05                                         ` Marek Vasut
2021-09-04 16:09                                           ` Tom Rini
2021-09-04 16:49                                             ` Marek Vasut
2021-09-04 17:01                                               ` Tom Rini
2021-09-04 19:37                                                 ` Marek Vasut
2021-09-04 19:56                                                   ` Tom Rini
2021-08-15 18:13 ` [PATCH 03/14] lmb: Always compile arch_lmb_reserve() into U-Boot on arm Marek Vasut
2021-08-15 19:47   ` Tom Rini
2021-08-15 18:13 ` [PATCH 04/14] lmb: Always compile arch_lmb_reserve() into U-Boot on arc Marek Vasut
2021-08-15 18:13 ` [PATCH 05/14] lmb: Add generic arch_lmb_reserve_generic() Marek Vasut
2021-08-15 19:49   ` Tom Rini
2021-08-15 18:13 ` [PATCH 06/14] lmb: Switch to " Marek Vasut
2021-08-15 19:48   ` Tom Rini
2021-08-15 18:13 ` [PATCH 07/14] lmb: nios2: Add arch_lmb_reserve() Marek Vasut
2021-08-15 18:13 ` [PATCH 08/14] lmb: nds32: " Marek Vasut
     [not found]   ` <HK0PR03MB2994783DDC460B69CDE74093C1CE9@HK0PR03MB2994.apcprd03.prod.outlook.com>
2021-09-02  1:53     ` Rick Chen
2021-08-15 18:13 ` [PATCH 09/14] lmb: riscv: " Marek Vasut
     [not found]   ` <HK0PR03MB2994629C8CC69189EDF64C00C1CE9@HK0PR03MB2994.apcprd03.prod.outlook.com>
2021-09-02  1:54     ` Rick Chen
2021-08-15 18:13 ` [PATCH 10/14] lmb: sh: " Marek Vasut
2021-08-15 18:13 ` [PATCH 11/14] lmb: xtensa: " Marek Vasut
2021-08-15 18:13 ` [PATCH 12/14] lmb: x86: " Marek Vasut
2021-08-15 18:13 ` [PATCH 13/14] lmb: Mark arch_lmb_reserve() as weak symbol Marek Vasut
2021-08-15 19:50   ` Tom Rini
2021-08-29 16:46     ` Marek Vasut
2021-08-29 18:01       ` Tom Rini
2021-08-15 18:13 ` [PATCH 14/14] lmb: Switch imx board_lmb_reserve() to arch_lmb_reserve() Marek Vasut
2021-08-15 19:47   ` Tom Rini

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=2cffb09e-23aa-afce-962e-1eb9727457db@denx.de \
    --to=marex@denx.de \
    --cc=simon.k.r.goldschmidt@gmail.com \
    --cc=sjg@chromium.org \
    --cc=trini@konsulko.com \
    --cc=u-boot@lists.denx.de \
    /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