diff options
author | Jason M. Bills <jason.m.bills@linux.intel.com> | 2020-01-07 21:40:08 +0300 |
---|---|---|
committer | Jason M. Bills <jason.m.bills@linux.intel.com> | 2020-01-07 21:43:56 +0300 |
commit | 820013481a115100d5f8f22dc01aac8cc0363a23 (patch) | |
tree | 99cd46b66d5b9b97d38265d553f4fb60fee0d6a2 /meta-openbmc-mods/meta-common/recipes-bsp | |
parent | 965a056096e5e043748da8766fa50cb7afedb608 (diff) | |
download | openbmc-820013481a115100d5f8f22dc01aac8cc0363a23.tar.xz |
Update to internal 2020-01-07
Signed-off-by: Jason M. Bills <jason.m.bills@linux.intel.com>
Diffstat (limited to 'meta-openbmc-mods/meta-common/recipes-bsp')
7 files changed, 173 insertions, 24 deletions
diff --git a/meta-openbmc-mods/meta-common/recipes-bsp/u-boot/files/0003-ast2600-intel-layout-environment-addr.patch b/meta-openbmc-mods/meta-common/recipes-bsp/u-boot/files/0003-ast2600-intel-layout-environment-addr.patch index a1a8acf81..88d7cd019 100644 --- a/meta-openbmc-mods/meta-common/recipes-bsp/u-boot/files/0003-ast2600-intel-layout-environment-addr.patch +++ b/meta-openbmc-mods/meta-common/recipes-bsp/u-boot/files/0003-ast2600-intel-layout-environment-addr.patch @@ -1,4 +1,4 @@ -From e074cf61bd6a726c8cb513336507047ece5423d0 Mon Sep 17 00:00:00 2001 +From 2a52808ddd6a6bef40bab9a15bd22b1c7988a798 Mon Sep 17 00:00:00 2001 From: Kuiying Wang <kuiying.wang@intel.com> Date: Thu, 12 Dec 2019 12:54:18 +0800 Subject: [PATCH] ast2600: intel-layout-environment-addr @@ -7,21 +7,55 @@ Tested: Both kernel and u-boot work at the area /dev/mtd/u-boot-env Signed-off-by: Kuiying Wang <kuiying.wang@intel.com> +Signed-off-by: Jae Hyun Yoo <jae.hyun.yoo@intel.com> --- - include/configs/aspeed-common.h | 5 ++++- - include/configs/evb_ast2600_spl.h | 2 +- - 2 files changed, 5 insertions(+), 2 deletions(-) + common/board_r.c | 11 +++++++++-- + include/configs/aspeed-common.h | 12 +++++++++++- + include/configs/evb_ast2600_spl.h | 2 +- + 3 files changed, 21 insertions(+), 4 deletions(-) +diff --git a/common/board_r.c b/common/board_r.c +index a7f5371bac71..492d7f1cbe4c 100644 +--- a/common/board_r.c ++++ b/common/board_r.c +@@ -433,10 +433,17 @@ static int should_load_env(void) + static int initr_env(void) + { + /* initialize environment */ +- if (should_load_env()) ++ if (should_load_env()) { ++ /* ++ * try again, in case the environment failed to load the first ++ * time ++ */ ++ if (!gd->env_valid) ++ env_init(); + env_relocate(); +- else ++ } else { + set_default_env(NULL, 0); ++ } + #ifdef CONFIG_OF_CONTROL + env_set_hex("fdtcontroladdr", + (unsigned long)map_to_sysmem(gd->fdt_blob)); diff --git a/include/configs/aspeed-common.h b/include/configs/aspeed-common.h -index d1eb468..8ad9deb 100644 +index d1eb4688e68f..0ece4a1b9440 100644 --- a/include/configs/aspeed-common.h +++ b/include/configs/aspeed-common.h -@@ -56,12 +56,15 @@ +@@ -55,13 +55,23 @@ + #ifndef CONFIG_BOOTCOMMAND #define CONFIG_BOOTCOMMAND "bootm 20080000" #endif ++#define CONFIG_SYS_REDUNDAND_ENVIRONMENT ++#define CONFIG_ENV_ADDR_REDUND #define CONFIG_ENV_OVERWRITE ++#define AST_FMC_CS0_BASE 0x20000000 /* CS0 */ +#define CONFIG_ENV_OFFSET 0x2400000 ++#define CONFIG_ENV_ADDR (AST_FMC_CS0_BASE + CONFIG_ENV_OFFSET) +#define CONFIG_ENV_SIZE 0x10000 ++#define CONFIG_ENV_OFFSET_REDUND (CONFIG_ENV_OFFSET + CONFIG_ENV_SIZE) ++#define CONFIG_ENV_ADDR_REDUND (AST_FMC_CS0_BASE + CONFIG_ENV_OFFSET_REDUND) ++#define CONFIG_ENV_SIZE_REDUND CONFIG_ENV_SIZE +#define CONFIG_ENV_SECT_SIZE (4 << 10) #define CONFIG_SYS_BOOTM_LEN (0x800000 * 2) @@ -34,7 +68,7 @@ index d1eb468..8ad9deb 100644 /* diff --git a/include/configs/evb_ast2600_spl.h b/include/configs/evb_ast2600_spl.h -index 8bbd6e1..8529f46 100644 +index 8bbd6e18727a..8529f46c0b19 100644 --- a/include/configs/evb_ast2600_spl.h +++ b/include/configs/evb_ast2600_spl.h @@ -19,7 +19,7 @@ diff --git a/meta-openbmc-mods/meta-common/recipes-bsp/u-boot/files/0004-Disable-crashdump-trigger-gpio.patch b/meta-openbmc-mods/meta-common/recipes-bsp/u-boot/files/0004-Disable-crashdump-trigger-gpio.patch new file mode 100644 index 000000000..6ffdbc702 --- /dev/null +++ b/meta-openbmc-mods/meta-common/recipes-bsp/u-boot/files/0004-Disable-crashdump-trigger-gpio.patch @@ -0,0 +1,57 @@ +From aae3bab86f19784cbe0767ea0973527ce217bf89 Mon Sep 17 00:00:00 2001 +From: Jae Hyun Yoo <jae.hyun.yoo@intel.com> +Date: Fri, 3 Jan 2020 15:14:09 -0800 +Subject: [PATCH] Disable crashdump trigger gpio + +This commit disables crashdump trigger gpio (GPIOC3) to prevent +unexpected host failures. + +Signed-off-by: Jae Hyun Yoo <jae.hyun.yoo@intel.com> +--- + board/aspeed/ast2600_intel/intel.c | 23 +++++++++++++++++++++++ + 1 file changed, 23 insertions(+) + +diff --git a/board/aspeed/ast2600_intel/intel.c b/board/aspeed/ast2600_intel/intel.c +index eb6fbaf77e66..7daf1b83305a 100644 +--- a/board/aspeed/ast2600_intel/intel.c ++++ b/board/aspeed/ast2600_intel/intel.c +@@ -146,6 +146,27 @@ static void sgpio_init(void) + writel(value, AST_GPIO_BASE + GPIO254); + } + ++static void disable_crashlog_trigger(void) ++{ ++#define SCU_410 0x410 /* Multi-function Pin Control #4 */ ++#define SCU_410_RGMII3TXD1 BIT(19) ++#define GPIO_004 0x004 /* GPIO A/B/C/D Direction */ ++#define GPIO_000 0x000 /* GPIO A/B/C/D Value */ ++#define GPIO_C3 BIT(19) ++ ++ /* ++ * Set FM_BMC_CRASHLOG_TRIG_N (GPIOC3) as an output with value high ++ * explicitly since it doesn't have an external pull up. It uses direct ++ * register access because it's called from board_early_init_f(). ++ */ ++ writel(readl(SCU_BASE | SCU_410) & ~SCU_410_RGMII3TXD1, ++ SCU_BASE | SCU_410); ++ writel(readl(AST_GPIO_BASE | GPIO_004) | GPIO_C3, ++ AST_GPIO_BASE | GPIO_004); ++ writel(readl(AST_GPIO_BASE | GPIO_000) | GPIO_C3, ++ AST_GPIO_BASE | GPIO_000); ++} ++ + void espi_init(void); + int arch_interrupt_init_early(void); + +@@ -162,6 +183,8 @@ int board_early_init_f(void) + * I am not sure if it actually does anything... */ + arch_interrupt_init_early(); + ++ disable_crashlog_trigger(); ++ + gpio_passthru_init(); + + port80h_snoop_init(); +-- +2.7.4 + diff --git a/meta-openbmc-mods/meta-common/recipes-bsp/u-boot/files/0039-AST2500-increase-boot-speed.patch b/meta-openbmc-mods/meta-common/recipes-bsp/u-boot/files/0039-AST2500-increase-boot-speed.patch index ce36b580e..d8ac50dbd 100644 --- a/meta-openbmc-mods/meta-common/recipes-bsp/u-boot/files/0039-AST2500-increase-boot-speed.patch +++ b/meta-openbmc-mods/meta-common/recipes-bsp/u-boot/files/0039-AST2500-increase-boot-speed.patch @@ -1,21 +1,29 @@ -From 1e9a4afdfa995e924f74139f620e8b2f985a705f Mon Sep 17 00:00:00 2001 +From b571713f51beb467eefae8e56bfea6e5eab48f8c Mon Sep 17 00:00:00 2001 From: James Feist <james.feist@linux.intel.com> Date: Tue, 10 Dec 2019 16:21:24 -0800 Subject: [PATCH 1/1] AST2500 increase boot speed -This hardcodes the IOMODE to x2 as that is the fastest -we support. +Enable CONFIG_FLASH_SPIx2_Dummy and add it to known +good SPI flashes. Signed-off-by: James Feist <james.feist@linux.intel.com> --- - arch/arm/mach-aspeed/flash.c | 6 +++++- - 1 file changed, 5 insertions(+), 1 deletion(-) + arch/arm/mach-aspeed/flash.c | 9 ++++++++- + 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/arch/arm/mach-aspeed/flash.c b/arch/arm/mach-aspeed/flash.c -index d33fb9e0fe..31d2ef6001 100644 +index d33fb9e0fe..95fc46dd76 100644 --- a/arch/arm/mach-aspeed/flash.c +++ b/arch/arm/mach-aspeed/flash.c -@@ -730,7 +730,7 @@ static ulong flash_get_size (ulong base, flash_info_t *info) +@@ -34,6 +34,7 @@ + #include <asm/arch/ast_scu.h> + #include <asm/arch/aspeed.h> + ++#define CONFIG_FLASH_SPIx2_Dummy 1 + + /* + * This file implements a Common Flash Interface (CFI) driver for U-Boot. +@@ -730,7 +731,7 @@ static ulong flash_get_size (ulong base, flash_info_t *info) ulID = ((ulong)ch[0]) | ((ulong)ch[1] << 8) | ((ulong)ch[2] << 16) ; info->flash_id = ulID; @@ -24,17 +32,19 @@ index d33fb9e0fe..31d2ef6001 100644 /* init default */ info->iomode = IOMODEx1; -@@ -1258,6 +1258,10 @@ static ulong flash_get_size (ulong base, flash_info_t *info) - } /* JDEC */ - } - -+ info->readcmd = 0xbb; -+ info->dualport = 1; -+ info->iomode = IOMODEx2_dummy; -+ - sector = base; - for (j = 0; j < info->sector_count; j++) { +@@ -1035,6 +1036,12 @@ static ulong flash_get_size (ulong base, flash_info_t *info) + EraseClk = 25; + ReadClk = 50; + info->address32 = 1; ++#if defined(CONFIG_FLASH_SPIx2_Dummy) ++ info->readcmd = 0xbb; ++ info->dummybyte = 1; ++ info->dualport = 1; ++ info->iomode = IOMODEx2_dummy; ++#endif + break; + case SST25VF016B: -- 2.17.1 diff --git a/meta-openbmc-mods/meta-common/recipes-bsp/u-boot/files/fw_env.config b/meta-openbmc-mods/meta-common/recipes-bsp/u-boot/files/fw_env.config new file mode 100644 index 000000000..19ace4b88 --- /dev/null +++ b/meta-openbmc-mods/meta-common/recipes-bsp/u-boot/files/fw_env.config @@ -0,0 +1,25 @@ +# Configuration file for fw_(printenv/setenv) utility. +# Up to two entries are valid, in this case the redundant +# environment sector is assumed present. +# Notice, that the "Number of sectors" is ignored on NOR and SPI-dataflash. +# Furthermore, if the Flash sector size is omitted, this value is assumed to +# be the same as the Environment size, which is valid for NOR and SPI-dataflash + +# NOR example +# MTD device name Device offset Env. size Flash sector size Number of sectors +#/dev/mtd1 0x0000 0x20000 0x20000 +#/dev/mtd2 0x0000 0x4000 0x4000 + +# MTD SPI-dataflash example +# MTD device name Device offset Env. size Flash sector size Number of sectors +#/dev/mtd2 0x00000 0x20000 +/dev/mtd/u-boot-env 0x00000 0x10000 +/dev/mtd/u-boot-env 0x10000 0x10000 +#/dev/mtd5 0x4200 0x4200 +#/dev/mtd6 0x4200 0x4200 + +# NAND example +#/dev/mtd0 0x4000 0x4000 0x20000 2 + +# Block device example +#/dev/mmcblk0 0xc0000 0x20000 diff --git a/meta-openbmc-mods/meta-common/recipes-bsp/u-boot/u-boot-aspeed-sdk_%.bbappend b/meta-openbmc-mods/meta-common/recipes-bsp/u-boot/u-boot-aspeed-sdk_%.bbappend index 376b785c1..b5ea27dae 100644 --- a/meta-openbmc-mods/meta-common/recipes-bsp/u-boot/u-boot-aspeed-sdk_%.bbappend +++ b/meta-openbmc-mods/meta-common/recipes-bsp/u-boot/u-boot-aspeed-sdk_%.bbappend @@ -4,8 +4,13 @@ FILESEXTRAPATHS_append_intel-ast2600:= "${THISDIR}/files:" # with the intel layout for environment SRC_URI_append_intel-ast2600 = " \ + file://fw_env.config \ file://intel.cfg \ file://0001-Add-ast2600-intel-as-a-new-board.patch \ file://0021-AST2600-Enable-host-searial-port-clock-configuration.patch \ file://0003-ast2600-intel-layout-environment-addr.patch \ + file://0004-Disable-crashdump-trigger-gpio.patch \ " +do_install_append () { + install -m 0644 ${WORKDIR}/fw_env.config ${S}/tools/env/fw_env.config +} diff --git a/meta-openbmc-mods/meta-common/recipes-bsp/u-boot/u-boot-aspeed_%.bbappend b/meta-openbmc-mods/meta-common/recipes-bsp/u-boot/u-boot-aspeed_%.bbappend index a536dce34..8e35c468b 100644 --- a/meta-openbmc-mods/meta-common/recipes-bsp/u-boot/u-boot-aspeed_%.bbappend +++ b/meta-openbmc-mods/meta-common/recipes-bsp/u-boot/u-boot-aspeed_%.bbappend @@ -5,6 +5,7 @@ FILESEXTRAPATHS_append_intel-ast2500:= "${THISDIR}/files:" SRC_URI_remove_intel-ast2500 = " file://0001-configs-ast-Add-redundnant-env.patch" SRC_URI_append_intel-ast2500 = " \ + file://fw_env.config \ file://0001-flash-use-readX-writeX-not-udelay.patch \ file://0002-intel-layout-environment-addr.patch \ file://0004-Make-sure-debug-uart-is-using-24MHz-clock-source.patch \ @@ -46,6 +47,9 @@ PFR_SRC_URI = " \ file://0035-PFR-platform-EXTRST-reset-mask-selection.patch \ " SRC_URI_append_intel-ast2500 += "${@bb.utils.contains('IMAGE_FSTYPES', 'intel-pfr', PFR_SRC_URI, '', d)}" +do_install_append () { + install -m 0644 ${WORKDIR}/fw_env.config ${S}/tools/env/fw_env.config +} require recipes-core/os-release/version-vars.inc diff --git a/meta-openbmc-mods/meta-common/recipes-bsp/u-boot/u-boot-fw-utils-aspeed-sdk_%.bbappend b/meta-openbmc-mods/meta-common/recipes-bsp/u-boot/u-boot-fw-utils-aspeed-sdk_%.bbappend new file mode 100644 index 000000000..b271f3b38 --- /dev/null +++ b/meta-openbmc-mods/meta-common/recipes-bsp/u-boot/u-boot-fw-utils-aspeed-sdk_%.bbappend @@ -0,0 +1,14 @@ +FILESEXTRAPATHS_append_intel-ast2600:= "${THISDIR}/files:" + +SRC_URI_append_intel-ast2600 = " \ + file://fw_env.config \ + file://intel.cfg \ + file://0001-Add-ast2600-intel-as-a-new-board.patch \ + file://0003-ast2600-intel-layout-environment-addr.patch \ + " + +do_install_append () { + install -m 0644 ${WORKDIR}/fw_env.config ${D}${sysconfdir}/fw_env.config + install -m 0644 ${WORKDIR}/fw_env.config ${S}/tools/env/fw_env.config +} +RDEPENDS_${PN} = "udev-aspeed-mtd-partitions" |