[U-Boot] [PATCH] arm: ls102xa: Add QSPI boot support for LS1021AQDS/TWR board

This patch adds QSPI boot support for LS1021AQDS/TWR board. The QSPI boot image need to be programmed into the QSPI flash first. Then the booting will start from QSPI memory space.
This patch is based on the previous QSPI enabled patches.
Signed-off-by: Alison Wang alison.wang@freescale.com --- board/freescale/ls1021aqds/MAINTAINERS | 1 + board/freescale/ls1021aqds/ls1021aqds.c | 4 ++++ board/freescale/ls1021atwr/MAINTAINERS | 1 + configs/ls1021aqds_qspi_defconfig | 3 +++ configs/ls1021atwr_qspi_defconfig | 3 +++ include/configs/ls1021aqds.h | 5 +++++ include/configs/ls1021atwr.h | 10 ++++++++++ 7 files changed, 27 insertions(+) create mode 100644 configs/ls1021aqds_qspi_defconfig create mode 100644 configs/ls1021atwr_qspi_defconfig
diff --git a/board/freescale/ls1021aqds/MAINTAINERS b/board/freescale/ls1021aqds/MAINTAINERS index f136700..8a15575 100644 --- a/board/freescale/ls1021aqds/MAINTAINERS +++ b/board/freescale/ls1021aqds/MAINTAINERS @@ -7,3 +7,4 @@ F: configs/ls1021aqds_nor_defconfig F: configs/ls1021aqds_ddr4_nor_defconfig F: configs/ls1021aqds_sdcard_defconfig F: configs/ls1021aqds_nand_defconfig +F: configs/ls1021aqds_qspi_defconfig diff --git a/board/freescale/ls1021aqds/ls1021aqds.c b/board/freescale/ls1021aqds/ls1021aqds.c index 053ba70..fc88a1f 100644 --- a/board/freescale/ls1021aqds/ls1021aqds.c +++ b/board/freescale/ls1021aqds/ls1021aqds.c @@ -29,7 +29,9 @@ enum {
int checkboard(void) { +#ifndef CONFIG_QSPI_BOOT char buf[64]; +#endif #if !defined(CONFIG_SD_BOOT) && !defined(CONFIG_QSPI_BOOT) u8 sw; #endif @@ -52,12 +54,14 @@ int checkboard(void) printf("invalid setting of SW%u\n", QIXIS_LBMAP_SWITCH); #endif
+#ifndef CONFIG_QSPI_BOOT printf("Sys ID:0x%02x, Sys Ver: 0x%02x\n", QIXIS_READ(id), QIXIS_READ(arch));
printf("FPGA: v%d (%s), build %d\n", (int)QIXIS_READ(scver), qixis_read_tag(buf), (int)qixis_read_minor()); +#endif
return 0; } diff --git a/board/freescale/ls1021atwr/MAINTAINERS b/board/freescale/ls1021atwr/MAINTAINERS index 651d43e..2a4a4a4 100644 --- a/board/freescale/ls1021atwr/MAINTAINERS +++ b/board/freescale/ls1021atwr/MAINTAINERS @@ -5,3 +5,4 @@ F: board/freescale/ls1021atwr/ F: include/configs/ls1021atwr.h F: configs/ls1021atwr_nor_defconfig F: configs/ls1021atwr_sdcard_defconfig +F: configs/ls1021atwr_qspi_defconfig diff --git a/configs/ls1021aqds_qspi_defconfig b/configs/ls1021aqds_qspi_defconfig new file mode 100644 index 0000000..05ec8e6 --- /dev/null +++ b/configs/ls1021aqds_qspi_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="QSPI_BOOT" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_LS1021AQDS=y diff --git a/configs/ls1021atwr_qspi_defconfig b/configs/ls1021atwr_qspi_defconfig new file mode 100644 index 0000000..611f6e8 --- /dev/null +++ b/configs/ls1021atwr_qspi_defconfig @@ -0,0 +1,3 @@ +CONFIG_SYS_EXTRA_OPTIONS="QSPI_BOOT" ++S:CONFIG_ARM=y ++S:CONFIG_TARGET_LS1021ATWR=y diff --git a/include/configs/ls1021aqds.h b/include/configs/ls1021aqds.h index 1136278..57b3be5 100644 --- a/include/configs/ls1021aqds.h +++ b/include/configs/ls1021aqds.h @@ -112,6 +112,11 @@ unsigned long get_board_ddr_clk(void); #define CONFIG_SYS_MONITOR_LEN 0x80000 #endif
+#ifdef CONFIG_QSPI_BOOT +#define CONFIG_SYS_TEXT_BASE 0x40010000 +#define CONFIG_SYS_NO_FLASH +#endif + #ifndef CONFIG_SYS_TEXT_BASE #define CONFIG_SYS_TEXT_BASE 0x67f80000 #endif diff --git a/include/configs/ls1021atwr.h b/include/configs/ls1021atwr.h index 9c8ef68..d7b8a76 100644 --- a/include/configs/ls1021atwr.h +++ b/include/configs/ls1021atwr.h @@ -68,6 +68,11 @@ #define CONFIG_SYS_NO_FLASH #endif
+#if defined(CONFIG_QSPI_BOOT) +#define CONFIG_SYS_TEXT_BASE 0x40010000 +#define CONFIG_SYS_NO_FLASH +#endif + #ifndef CONFIG_SYS_TEXT_BASE #define CONFIG_SYS_TEXT_BASE 0x67f80000 #endif @@ -340,6 +345,11 @@ #define CONFIG_ENV_IS_IN_MMC #define CONFIG_SYS_MMC_ENV_DEV 0 #define CONFIG_ENV_SIZE 0x20000 +#elif defined(CONFIG_QSPI_BOOT) +#define CONFIG_ENV_IS_IN_SPI_FLASH +#define CONFIG_ENV_SIZE 0x2000 +#define CONFIG_ENV_OFFSET 0x100000 +#define CONFIG_ENV_SECT_SIZE 0x10000 #else #define CONFIG_ENV_IS_IN_FLASH #define CONFIG_ENV_ADDR (CONFIG_SYS_MONITOR_BASE - CONFIG_ENV_SECT_SIZE)

On 10/24/2014 01:53 AM, Alison Wang wrote:
This patch adds QSPI boot support for LS1021AQDS/TWR board. The QSPI boot image need to be programmed into the QSPI flash first. Then the booting will start from QSPI memory space.
This patch is based on the previous QSPI enabled patches.
Signed-off-by: Alison Wang alison.wang@freescale.com
Alison,
I lost track the "previous QSPI enabled patches". Can you point me a link?
York

Hi, york,
-----Original Message----- From: York Sun [mailto:yorksun@freescale.com] Sent: Wednesday, November 26, 2014 5:23 AM To: Wang Huan-B18965; u-boot@lists.denx.de Cc: Jin Zhengxiong-R64188; Wang Huan-B18965 Subject: Re: [PATCH] arm: ls102xa: Add QSPI boot support for LS1021AQDS/TWR board
On 10/24/2014 01:53 AM, Alison Wang wrote:
This patch adds QSPI boot support for LS1021AQDS/TWR board. The QSPI boot image need to be programmed into the QSPI flash first. Then the booting will start from QSPI memory space.
This patch is based on the previous QSPI enabled patches.
Signed-off-by: Alison Wang alison.wang@freescale.com
Alison,
I lost track the "previous QSPI enabled patches". Can you point me a link?
[Alison Wang] I will resend that patch. The previous patch need to be rebased.
Best Regards, Alison Wang

On 11/25/2014 10:58 PM, Wang Huan-B18965 wrote:
Hi, york,
-----Original Message----- From: York Sun [mailto:yorksun@freescale.com] Sent: Wednesday, November 26, 2014 5:23 AM To: Wang Huan-B18965; u-boot@lists.denx.de Cc: Jin Zhengxiong-R64188; Wang Huan-B18965 Subject: Re: [PATCH] arm: ls102xa: Add QSPI boot support for LS1021AQDS/TWR board
On 10/24/2014 01:53 AM, Alison Wang wrote:
This patch adds QSPI boot support for LS1021AQDS/TWR board. The QSPI boot image need to be programmed into the QSPI flash first. Then the booting will start from QSPI memory space.
This patch is based on the previous QSPI enabled patches.
Signed-off-by: Alison Wang alison.wang@freescale.com
Alison,
I lost track the "previous QSPI enabled patches". Can you point me a link?
[Alison Wang] I will resend that patch. The previous patch need to be rebased.
Alison,
Have you rebase this patch?
York
participants (3)
-
Alison Wang
-
Huan Wang
-
York Sun