All of lore.kernel.org
 help / color / mirror / Atom feed
From: Balbir Singh <bsingharora@gmail.com>
To: Nicholas Piggin <npiggin@gmail.com>, linuxppc-dev@lists.ozlabs.org
Subject: Re: [PATCH] powerpc/64s: dt_cpu_ftrs boot time setup option
Date: Tue, 30 May 2017 08:29:03 +1000	[thread overview]
Message-ID: <1496096943.21894.13.camel@gmail.com> (raw)
In-Reply-To: <20170511112441.30287-1-npiggin@gmail.com>

On Thu, 2017-05-11 at 21:24 +1000, Nicholas Piggin wrote:
> Provide a dt_cpu_ftrs= cmdline option to disable the dt_cpu_ftrs CPU
> feature discovery, and fall back to the "cputable" based version.
> 
> Also allow control of advertising unknown features to userspace and
> with this parameter, and remove the clunky CONFIG option.
> 
> Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
> ---
>  Documentation/admin-guide/kernel-parameters.txt | 10 ++++++
>  arch/powerpc/Kconfig                            |  5 ---
>  arch/powerpc/kernel/dt_cpu_ftrs.c               | 41 +++++++++++++++++++------
>  3 files changed, 42 insertions(+), 14 deletions(-)
> 
> diff --git a/Documentation/admin-guide/kernel-parameters.txt b/Documentation/admin-guide/kernel-parameters.txt
> index facc20a3f962..7a7c1cc80f9f 100644
> --- a/Documentation/admin-guide/kernel-parameters.txt
> +++ b/Documentation/admin-guide/kernel-parameters.txt
> @@ -867,6 +867,16 @@
>  
>  	dscc4.setup=	[NET]
>  
> +	dt_cpu_ftrs=	[PPC]
> +			Format: {"off" | "known"}
> +			Control how the dt_cpu_ftrs device-tree binding is
> +			used for CPU feature discovery and setup (if it
> +			exists).
> +			off: Do not use it, fall back to legacy cpu table.
> +			known: Do not pass through unknown features to guests
> +			or userspace, only those that the kernel is not aware
> +			of.
> +
>  	dump_apple_properties	[X86]
>  			Dump name and content of EFI device properties on
>  			x86 Macs.  Useful for driver authors to determine
> diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig
> index 5bd868f2e813..c924710e5bc7 100644
> --- a/arch/powerpc/Kconfig
> +++ b/arch/powerpc/Kconfig
> @@ -391,11 +391,6 @@ config PPC_DT_CPU_FTRS
>  	  firmware provides this binding.
>  	  If you're not sure say Y.
>  
> -config PPC_CPUFEATURES_ENABLE_UNKNOWN
> -	bool "cpufeatures pass through unknown features to guest/userspace"
> -	depends on PPC_DT_CPU_FTRS
> -	default y
> -
>  config HIGHMEM
>  	bool "High memory support"
>  	depends on PPC32
> diff --git a/arch/powerpc/kernel/dt_cpu_ftrs.c b/arch/powerpc/kernel/dt_cpu_ftrs.c
> index fcc7588a96d6..050925b5b451 100644
> --- a/arch/powerpc/kernel/dt_cpu_ftrs.c
> +++ b/arch/powerpc/kernel/dt_cpu_ftrs.c
> @@ -671,12 +671,24 @@ static struct dt_cpu_feature_match __initdata
>  	{"wait-v3", feat_enable, 0},
>  };
>  
> -/* XXX: how to configure this? Default + boot time? */
> -#ifdef CONFIG_PPC_CPUFEATURES_ENABLE_UNKNOWN
> -#define CPU_FEATURE_ENABLE_UNKNOWN 1
> -#else
> -#define CPU_FEATURE_ENABLE_UNKNOWN 0
> -#endif
> +static bool __initdata using_dt_cpu_ftrs = true;
> +static bool __initdata dt_cpu_ftrs_enable_unknown = true;
> +
> +static int __init dt_cpu_ftrs_parse(char *str)
> +{
> +	if (!str)
> +		return 0;
> +
> +	if (!strcmp(str, "off"))
> +		using_dt_cpu_ftrs = false;
> +	else if (!strcmp(str, "known"))
> +		dt_cpu_ftrs_enable_unknown = false;
> +	else
> +		return 1;
> +
> +	return 0;
> +}
> +early_param("dt_cpu_ftrs", dt_cpu_ftrs_parse);

I wouldn't use strcmp with user passed parameters.

Balbir Singh.

  parent reply	other threads:[~2017-05-29 22:29 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-05-11 11:24 [PATCH] powerpc/64s: dt_cpu_ftrs boot time setup option Nicholas Piggin
2017-05-11 13:25 ` Paul Clarke
2017-05-12  3:46   ` Michael Ellerman
2017-05-12 12:32     ` Paul Clarke
2017-05-15  9:43       ` Michael Ellerman
2017-05-29 10:29 ` Michael Ellerman
2017-05-30  0:18   ` Nicholas Piggin
2017-05-30  5:32     ` Michael Ellerman
2017-05-29 22:29 ` Balbir Singh [this message]
2017-05-30  5:29   ` Michael Ellerman
2017-06-01 13:31 ` Michael Ellerman

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=1496096943.21894.13.camel@gmail.com \
    --to=bsingharora@gmail.com \
    --cc=linuxppc-dev@lists.ozlabs.org \
    --cc=npiggin@gmail.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.