pxe: add support for label menu text

Use a menu string if present, otherwise use the kernel string.

Signed-off-by: Rob Herring <rob.herring@calxeda.com>
master
Rob Herring 12 years ago committed by Wolfgang Denk
parent 1e08522699
commit 7815c4e89f
  1. 13
      common/cmd_pxe.c

@ -409,6 +409,7 @@ static int get_relfile_envaddr(char *file_path, char *envaddr_name)
*/
struct pxe_label {
char *name;
char *menu;
char *kernel;
char *append;
char *initrd;
@ -491,17 +492,18 @@ static void label_destroy(struct pxe_label *label)
static void label_print(void *data)
{
struct pxe_label *label = data;
const char *c = label->menu ? label->menu : label->kernel;
printf("Label: %s\n", label->name);
printf("%s:\t%s\n", label->name, c);
if (label->kernel)
printf("\tkernel: %s\n", label->kernel);
printf("\t\tkernel: %s\n", label->kernel);
if (label->append)
printf("\tappend: %s\n", label->append);
printf("\t\tappend: %s\n", label->append);
if (label->initrd)
printf("\tinitrd: %s\n", label->initrd);
printf("\t\tinitrd: %s\n", label->initrd);
}
/*
@ -970,6 +972,9 @@ static int parse_label_menu(char **c, struct pxe_menu *cfg,
return -ENOMEM;
break;
case T_LABEL:
parse_sliteral(c, &label->menu);
break;
default:
printf("Ignoring malformed menu command: %.*s\n",
(int)(*c - s), s);

Loading…
Cancel
Save