Message ID | 1438356724-6561-30-git-send-email-sjg@chromium.org |
---|---|
State | Superseded |
Delegated to: | Simon Glass |
Headers | show |
On Fri, Jul 31, 2015 at 11:31 PM, Simon Glass <sjg@chromium.org> wrote: > From: Ben Stoltz <stoltz@google.com> > > Add support for the efi-x86 board, which supports running U-Boot as an > EFI 32-bit application. > > Signed-off-by: Ben Stoltz <stoltz@google.com> > Signed-off-by: Simon Glass <sjg@chromium.org> > --- > > Changes in v2: > - Drop unnecessary SYS_CAR_ADDR/SIZE Kconfig options > - Fix text alignment in Kconfig files > > arch/x86/Kconfig | 1 + > board/efi/Kconfig | 19 +++++++++++++++++++ > board/efi/efi-x86/Kconfig | 15 +++++++++++++++ > board/efi/efi-x86/MAINTAINERS | 6 ++++++ > board/efi/efi-x86/Makefile | 7 +++++++ > board/efi/efi-x86/efi.c | 18 ++++++++++++++++++ > 6 files changed, 66 insertions(+) > create mode 100644 board/efi/Kconfig > create mode 100644 board/efi/efi-x86/Kconfig > create mode 100644 board/efi/efi-x86/MAINTAINERS > create mode 100644 board/efi/efi-x86/Makefile > create mode 100644 board/efi/efi-x86/efi.c > > diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig > index 7e6e89c..f124d58 100644 > --- a/arch/x86/Kconfig > +++ b/arch/x86/Kconfig > @@ -27,6 +27,7 @@ endchoice > > # board-specific options below > source "board/coreboot/Kconfig" > +source "board/efi/Kconfig" > source "board/emulation/Kconfig" > source "board/google/Kconfig" > source "board/intel/Kconfig" > diff --git a/board/efi/Kconfig b/board/efi/Kconfig > new file mode 100644 > index 0000000..6f86a48 > --- /dev/null > +++ b/board/efi/Kconfig > @@ -0,0 +1,19 @@ > +if VENDOR_EFI > + > +choice > + prompt "Mainboard model" > + optional > + > +config TARGET_EFI > + bool "efi" > + help > + This target is used for running U-Boot on top of EFI. In > + this case EFI does the early initialisation, and U-Boot > + takes over once the RAM, video and CPU are fully running. > + U-Boot is loaded as an application from EFI. > + > +endchoice > + > +source "board/efi/efi-x86/Kconfig" > + > +endif > diff --git a/board/efi/efi-x86/Kconfig b/board/efi/efi-x86/Kconfig > new file mode 100644 > index 0000000..fa609ba > --- /dev/null > +++ b/board/efi/efi-x86/Kconfig > @@ -0,0 +1,15 @@ > +if TARGET_EFI > + > +config SYS_BOARD > + default "efi-x86" > + > +config SYS_VENDOR > + default "efi" > + > +config SYS_SOC > + default "efi" > + > +config SYS_CONFIG_NAME > + default "efi-x86" > + > +endif > diff --git a/board/efi/efi-x86/MAINTAINERS b/board/efi/efi-x86/MAINTAINERS > new file mode 100644 > index 0000000..a44c7c6 > --- /dev/null > +++ b/board/efi/efi-x86/MAINTAINERS > @@ -0,0 +1,6 @@ > +EFI-X86 BOARD > +M: Simon Glass <sjg@chromium.org> > +S: Maintained > +F: board/efi/efi-x86/ > +F: include/configs/efi-x86.h > +F: configs/efi-x86_defconfig > diff --git a/board/efi/efi-x86/Makefile b/board/efi/efi-x86/Makefile > new file mode 100644 > index 0000000..9b1e0bd > --- /dev/null > +++ b/board/efi/efi-x86/Makefile > @@ -0,0 +1,7 @@ > +# > +# Copyright (c) 2015 Google, Inc > +# > +# SPDX-License-Identifier: GPL-2.0+ > +# > + > +obj-y += efi.o > diff --git a/board/efi/efi-x86/efi.c b/board/efi/efi-x86/efi.c > new file mode 100644 > index 0000000..08958f9 > --- /dev/null > +++ b/board/efi/efi-x86/efi.c > @@ -0,0 +1,18 @@ > +/* > + * Copyright (C) 2015 Google, Inc > + * > + * SPDX-License-Identifier: GPL-2.0+ > + */ > + > +#include <common.h> > +#include <asm/gpio.h> > + > +int arch_early_init_r(void) > +{ > + return 0; > +} > + > +void setup_pch_gpios(u16 gpiobase, const struct pch_gpio_map *gpio) > +{ > + return; > +} > -- Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig index 7e6e89c..f124d58 100644 --- a/arch/x86/Kconfig +++ b/arch/x86/Kconfig @@ -27,6 +27,7 @@ endchoice # board-specific options below source "board/coreboot/Kconfig" +source "board/efi/Kconfig" source "board/emulation/Kconfig" source "board/google/Kconfig" source "board/intel/Kconfig" diff --git a/board/efi/Kconfig b/board/efi/Kconfig new file mode 100644 index 0000000..6f86a48 --- /dev/null +++ b/board/efi/Kconfig @@ -0,0 +1,19 @@ +if VENDOR_EFI + +choice + prompt "Mainboard model" + optional + +config TARGET_EFI + bool "efi" + help + This target is used for running U-Boot on top of EFI. In + this case EFI does the early initialisation, and U-Boot + takes over once the RAM, video and CPU are fully running. + U-Boot is loaded as an application from EFI. + +endchoice + +source "board/efi/efi-x86/Kconfig" + +endif diff --git a/board/efi/efi-x86/Kconfig b/board/efi/efi-x86/Kconfig new file mode 100644 index 0000000..fa609ba --- /dev/null +++ b/board/efi/efi-x86/Kconfig @@ -0,0 +1,15 @@ +if TARGET_EFI + +config SYS_BOARD + default "efi-x86" + +config SYS_VENDOR + default "efi" + +config SYS_SOC + default "efi" + +config SYS_CONFIG_NAME + default "efi-x86" + +endif diff --git a/board/efi/efi-x86/MAINTAINERS b/board/efi/efi-x86/MAINTAINERS new file mode 100644 index 0000000..a44c7c6 --- /dev/null +++ b/board/efi/efi-x86/MAINTAINERS @@ -0,0 +1,6 @@ +EFI-X86 BOARD +M: Simon Glass <sjg@chromium.org> +S: Maintained +F: board/efi/efi-x86/ +F: include/configs/efi-x86.h +F: configs/efi-x86_defconfig diff --git a/board/efi/efi-x86/Makefile b/board/efi/efi-x86/Makefile new file mode 100644 index 0000000..9b1e0bd --- /dev/null +++ b/board/efi/efi-x86/Makefile @@ -0,0 +1,7 @@ +# +# Copyright (c) 2015 Google, Inc +# +# SPDX-License-Identifier: GPL-2.0+ +# + +obj-y += efi.o diff --git a/board/efi/efi-x86/efi.c b/board/efi/efi-x86/efi.c new file mode 100644 index 0000000..08958f9 --- /dev/null +++ b/board/efi/efi-x86/efi.c @@ -0,0 +1,18 @@ +/* + * Copyright (C) 2015 Google, Inc + * + * SPDX-License-Identifier: GPL-2.0+ + */ + +#include <common.h> +#include <asm/gpio.h> + +int arch_early_init_r(void) +{ + return 0; +} + +void setup_pch_gpios(u16 gpiobase, const struct pch_gpio_map *gpio) +{ + return; +}