Re: [microblaze-linux] [PATCH 2/5] microblaze: s/#if[!]CONFIG/#if[n]def CONFIG/

From: John Williams
Date: Sun Feb 19 2012 - 19:27:34 EST


Hi Geert,

NACK - please see comments below

On Mon, Feb 20, 2012 at 1:11 AM, Geert Uytterhoeven
<geert@xxxxxxxxxxxxxx> wrote:
> Signed-off-by: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>
> Cc: Michal Simek <monstr@xxxxxxxxx>
> Cc: microblaze-uclinux@xxxxxxxxxxxxxx
> ---
>  arch/microblaze/include/asm/exceptions.h |    2 +-
>  arch/microblaze/include/asm/irqflags.h   |    2 +-
>  arch/microblaze/kernel/entry-nommu.S     |    2 +-
>  arch/microblaze/kernel/entry.S           |    4 ++--
>  arch/microblaze/kernel/setup.c           |    4 ++--
>  5 files changed, 7 insertions(+), 7 deletions(-)
>
> diff --git a/arch/microblaze/include/asm/exceptions.h b/arch/microblaze/include/asm/exceptions.h
> index e6a8dde..48c197b 100644
> --- a/arch/microblaze/include/asm/exceptions.h
> +++ b/arch/microblaze/include/asm/exceptions.h
> @@ -25,7 +25,7 @@
>  /* Define MSR enable bit for HW exceptions */
>  #define HWEX_MSR_BIT (1 << 8)
>
> -#if CONFIG_XILINX_MICROBLAZE0_USE_MSR_INSTR
> +#ifdef CONFIG_XILINX_MICROBLAZE0_USE_MSR_INSTR

We actually care about the value of this one - it is always defined,
but is either 0 or 1 depending upon the presence or absence of this
feature in the target CPU.

These CPU feature-related configs are defined in
arch/microblaze/platform/generic/Kconfig.auto

http://git.kernel.org/?p=linux/kernel/git/torvalds/linux.git;a=blob;f=arch/microblaze/platform/generic/Kconfig.auto;h=25a6f019e94d5d9a1c884dfef9e906435685f980;hb=HEAD

not as bools, but as integers. Kconfig.auto is actually a placeholder
for a design file which is emitted from the MicroBlaze CPU / SoC
design tool flow and copied into place by the user.

In my view these should remain integers rather than booleans for a
couple of reasons:
* breakage for all current users
* MicroBlaze is an evolving architecture, there are other cases of
seemingly boolean HW parametesr growing to become integers, such as
the USE_FPU option. Once upon a time it was yes/no, now there's 2
different flavours of FPU as well as 'none'. MSR is just as likely to
change in future.

> -#if CONFIG_MANUAL_RESET_VECTOR
> +#ifdef CONFIG_MANUAL_RESET_VECTOR

This guy is also always defined (Kconfig 'hex' type), we just need to
do something different for a non-zero value.

Regards,

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