[Skiboot] [PATCH] external/gard: Print an error if run on an FSP system

ppaidipe ppaidipe at linux.vnet.ibm.com
Fri Mar 24 12:28:16 AEDT 2017


On 2017-03-24 06:01, Cyril Bur wrote:
> Signed-off-by: Cyril Bur <cyril.bur at au1.ibm.com>
> ---
>  external/gard/gard.c | 15 ++++++++++++++-
>  1 file changed, 14 insertions(+), 1 deletion(-)
> 
> diff --git a/external/gard/gard.c b/external/gard/gard.c
> index 4b26a3b8..1b3775c3 100644
> --- a/external/gard/gard.c
> +++ b/external/gard/gard.c
> @@ -43,7 +43,9 @@
> 
>  #define CLEARED_RECORD_ID 0xFFFFFFFF
> 
> -#define FDT_ACTIVE_FLASH_PATH 
> "/proc/device-tree/chosen/ibm,system-flash"
> +#define FDT_PATH "/proc/device-tree"
> +#define FDT_FSP_NODE FDT_PATH"/fsps"
> +#define FDT_ACTIVE_FLASH_PATH FDT_PATH"/chosen/ibm,system-flash"
>  #define SYSFS_MTD_PATH "/sys/class/mtd/"
>  #define FLASH_GARD_PART "GUARD"
> 
> @@ -563,6 +565,11 @@ static void usage(const char *progname)
>  	}
>  }
> 
> +static bool is_fsp(void)
> +{
> +	return access(FDT_FSP_NODE, F_OK) == 0;
> +}
> +
>  static struct option global_options[] = {
>  	{ "file", required_argument, 0, 'f' },
>  	{ "part", no_argument, 0, 'p' },
> @@ -586,6 +593,12 @@ int main(int argc, char **argv)
>  	ctx = &_ctx;
>  	memset(ctx, 0, sizeof(*ctx));
> 
> +	if (is_fsp()) {
> +		fprintf(stderr, "ERROR: This tool is not compatible with FSP 
> systems\n\n");
> +		usage(progname);

Hi
Here usage is not necessary as tool won't support on this system(FSP).
Only error message is sufficient.


Thanks
Pridhiviraj

> +		return EXIT_FAILURE;
> +	}
> +
>  	/* process global options */
>  	for (;;) {
>  		int c;



More information about the Skiboot mailing list