From e1df080b0d8b1bf9ed3e6a01a647192b2c90c72a Mon Sep 17 00:00:00 2001 From: Stefan Roese Date: Thu, 17 Sep 2015 17:30:29 +0200 Subject: [PATCH 1/5] arm: socfpga: Fix cache configuration By not defining CONFIG_SYS_ARM_CACHE_WRITEALLOC, the WRITEBACK cache policy is selected. This leads to much better performance on the SoCFPGA. A quick network test shows this: Without this patch: => tftp 100000 big-40mb Speed: 1000, full duplex Using dwmac.ff702000 device TFTP from server 192.168.1.54; our IP address is 192.168.1.252 Filename 'big-40mb'. Load address: 0x100000 Loading: ################################################################# ################################################################# ################################################################# ################################################################# ########################## 2.5 MiB/s With this patch: => tftp 100000 big-40mb Speed: 1000, full duplex Using dwmac.ff702000 device TFTP from server 192.168.1.54; our IP address is 192.168.1.252 Filename 'big-40mb'. Load address: 0x100000 Loading: ################################################################# ################################################################# ################################################################# ################################################################# ########################## 7.6 MiB/s A performance improvement of factor ~3. Signed-off-by: Stefan Roese Cc: Dinh Nguyen Cc: Chin Liang See Cc: Pavel Machek Cc: Marek Vasut --- include/configs/socfpga_common.h | 1 - 1 file changed, 1 deletion(-) diff --git a/include/configs/socfpga_common.h b/include/configs/socfpga_common.h index 38ae763653..a2811bacd2 100644 --- a/include/configs/socfpga_common.h +++ b/include/configs/socfpga_common.h @@ -73,7 +73,6 @@ /* * Cache */ -#define CONFIG_SYS_ARM_CACHE_WRITEALLOC #define CONFIG_SYS_CACHELINE_SIZE 32 #define CONFIG_SYS_L2_PL310 #define CONFIG_SYS_PL310_BASE SOCFPGA_MPUL2_ADDRESS From 3cbc7b878ba6352bb0ae21213394844f3a9b3e9d Mon Sep 17 00:00:00 2001 From: Dinh Nguyen Date: Tue, 22 Sep 2015 17:01:32 -0500 Subject: [PATCH 2/5] arm: socfpga: rename socfpga_cyclone5 and socfpga_arria5 config files Rename the socfpga_cyclone5.h to socfpga_cyclone5_socdk.h, and socfpga_arria.h to socfpga_arria5_socdk.h. This matches the other SoCFPGA board config files. Suggested-by: Marek Vasut Signed-off-by: Dinh Nguyen --- arch/arm/mach-socfpga/Kconfig | 4 ++-- include/configs/{socfpga_arria5.h => socfpga_arria5_socdk.h} | 0 .../configs/{socfpga_cyclone5.h => socfpga_cyclone5_socdk.h} | 0 3 files changed, 2 insertions(+), 2 deletions(-) rename include/configs/{socfpga_arria5.h => socfpga_arria5_socdk.h} (100%) rename include/configs/{socfpga_cyclone5.h => socfpga_cyclone5_socdk.h} (100%) diff --git a/arch/arm/mach-socfpga/Kconfig b/arch/arm/mach-socfpga/Kconfig index 089280a91d..a413ea4d1b 100644 --- a/arch/arm/mach-socfpga/Kconfig +++ b/arch/arm/mach-socfpga/Kconfig @@ -50,8 +50,8 @@ config SYS_SOC default "socfpga" config SYS_CONFIG_NAME - default "socfpga_arria5" if TARGET_SOCFPGA_ARRIA5_SOCDK - default "socfpga_cyclone5" if TARGET_SOCFPGA_CYCLONE5_SOCDK + default "socfpga_arria5_socdk" if TARGET_SOCFPGA_ARRIA5_SOCDK + default "socfpga_cyclone5_socdk" if TARGET_SOCFPGA_CYCLONE5_SOCDK default "socfpga_de0_nano_soc" if TARGET_SOCFPGA_TERASIC_DE0_NANO default "socfpga_mcvevk" if TARGET_SOCFPGA_DENX_MCVEVK default "socfpga_sockit" if TARGET_SOCFPGA_TERASIC_SOCKIT diff --git a/include/configs/socfpga_arria5.h b/include/configs/socfpga_arria5_socdk.h similarity index 100% rename from include/configs/socfpga_arria5.h rename to include/configs/socfpga_arria5_socdk.h diff --git a/include/configs/socfpga_cyclone5.h b/include/configs/socfpga_cyclone5_socdk.h similarity index 100% rename from include/configs/socfpga_cyclone5.h rename to include/configs/socfpga_cyclone5_socdk.h From 4348f36bbbc91633022a39739c584a83af1762d8 Mon Sep 17 00:00:00 2001 From: Dinh Nguyen Date: Tue, 22 Sep 2015 17:01:33 -0500 Subject: [PATCH 3/5] arm: socfpga: update MAINTAINERS' file for cyclone5_socdk and arria5_socdk commit "arm: socfpga: rename socfpga_cyclone5 and socfpga_arria5 config files" renames the configs files, so we should update the MAINTAINERS' entry. At the same time, update the email for Dinh Nguyen. Signed-off-by: Dinh Nguyen --- board/altera/arria5-socdk/MAINTAINERS | 4 ++-- board/altera/cyclone5-socdk/MAINTAINERS | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/board/altera/arria5-socdk/MAINTAINERS b/board/altera/arria5-socdk/MAINTAINERS index 30f2477681..ba35b3647f 100644 --- a/board/altera/arria5-socdk/MAINTAINERS +++ b/board/altera/arria5-socdk/MAINTAINERS @@ -1,7 +1,7 @@ SOCFPGA BOARD -M: Dinh Nguyen +M: Dinh Nguyen M: Chin-Liang See S: Maintained F: board/altera/arria5-socdk/ -F: include/configs/socfpga_arria5.h +F: include/configs/socfpga_arria5_socdk.h F: configs/socfpga_arria5_defconfig diff --git a/board/altera/cyclone5-socdk/MAINTAINERS b/board/altera/cyclone5-socdk/MAINTAINERS index f218ca411c..6374d592ac 100644 --- a/board/altera/cyclone5-socdk/MAINTAINERS +++ b/board/altera/cyclone5-socdk/MAINTAINERS @@ -1,9 +1,9 @@ SOCFPGA BOARD -M: Dinh Nguyen +M: Dinh Nguyen M: Chin-Liang See S: Maintained F: board/altera/cyclone5-socdk/ -F: include/configs/socfpga_cyclone5.h +F: include/configs/socfpga_cyclone5_socdk.h F: configs/socfpga_cyclone5_defconfig SOCRATES BOARD From 68a3e32b722261d07cf7325ea86275bf4e3b8917 Mon Sep 17 00:00:00 2001 From: Dinh Nguyen Date: Wed, 23 Sep 2015 15:38:01 -0500 Subject: [PATCH 4/5] arm: socfpga: Enable saveenv for SD/MMC Enable the able to save the environment variables when SD/MMC is used. Signed-off-by: Dinh Nguyen --- include/configs/socfpga_arria5_socdk.h | 4 ++++ include/configs/socfpga_common.h | 1 - include/configs/socfpga_cyclone5_socdk.h | 4 ++++ include/configs/socfpga_de0_nano_soc.h | 4 ++++ include/configs/socfpga_mcvevk.h | 2 ++ include/configs/socfpga_sockit.h | 4 ++++ 6 files changed, 18 insertions(+), 1 deletion(-) diff --git a/include/configs/socfpga_arria5_socdk.h b/include/configs/socfpga_arria5_socdk.h index 3193684798..b75b0a27fa 100644 --- a/include/configs/socfpga_arria5_socdk.h +++ b/include/configs/socfpga_arria5_socdk.h @@ -59,6 +59,10 @@ #endif +#define CONFIG_ENV_IS_IN_MMC +#define CONFIG_SYS_MMC_ENV_DEV 0 /* device 0 */ +#define CONFIG_ENV_OFFSET 512 /* just after the MBR */ + /* USB */ #ifdef CONFIG_CMD_USB #define CONFIG_USB_DWC2_REG_ADDR SOCFPGA_USB1_ADDRESS diff --git a/include/configs/socfpga_common.h b/include/configs/socfpga_common.h index a2811bacd2..cece0950e2 100644 --- a/include/configs/socfpga_common.h +++ b/include/configs/socfpga_common.h @@ -281,7 +281,6 @@ unsigned int cm_get_qspi_controller_clk_hz(void); #define CONFIG_SYS_CONSOLE_IS_IN_ENV #define CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE #define CONFIG_SYS_CONSOLE_ENV_OVERWRITE -#define CONFIG_ENV_IS_NOWHERE #define CONFIG_ENV_SIZE 4096 /* diff --git a/include/configs/socfpga_cyclone5_socdk.h b/include/configs/socfpga_cyclone5_socdk.h index 9e733e5c48..fa67b25a79 100644 --- a/include/configs/socfpga_cyclone5_socdk.h +++ b/include/configs/socfpga_cyclone5_socdk.h @@ -59,6 +59,10 @@ #endif +#define CONFIG_ENV_IS_IN_MMC +#define CONFIG_SYS_MMC_ENV_DEV 0 /* device 0 */ +#define CONFIG_ENV_OFFSET 512 /* just after the MBR */ + /* USB */ #ifdef CONFIG_CMD_USB #define CONFIG_USB_DWC2_REG_ADDR SOCFPGA_USB1_ADDRESS diff --git a/include/configs/socfpga_de0_nano_soc.h b/include/configs/socfpga_de0_nano_soc.h index 2508d037e3..191e1f7a43 100644 --- a/include/configs/socfpga_de0_nano_soc.h +++ b/include/configs/socfpga_de0_nano_soc.h @@ -55,6 +55,10 @@ #endif +#define CONFIG_ENV_IS_IN_MMC +#define CONFIG_SYS_MMC_ENV_DEV 0 /* device 0 */ +#define CONFIG_ENV_OFFSET 512 /* just after the MBR */ + /* USB */ #ifdef CONFIG_CMD_USB #define CONFIG_USB_DWC2_REG_ADDR SOCFPGA_USB1_ADDRESS diff --git a/include/configs/socfpga_mcvevk.h b/include/configs/socfpga_mcvevk.h index c5b4b4ca9d..ed9b5cce6a 100644 --- a/include/configs/socfpga_mcvevk.h +++ b/include/configs/socfpga_mcvevk.h @@ -43,6 +43,8 @@ #define CONFIG_LOADADDR 0x01000000 #define CONFIG_SYS_LOAD_ADDR CONFIG_LOADADDR +#define CONFIG_ENV_IS_NOWHERE + /* USB */ #ifdef CONFIG_CMD_USB #define CONFIG_USB_DWC2_REG_ADDR SOCFPGA_USB1_ADDRESS diff --git a/include/configs/socfpga_sockit.h b/include/configs/socfpga_sockit.h index 747e988ac9..6c71ef4e23 100644 --- a/include/configs/socfpga_sockit.h +++ b/include/configs/socfpga_sockit.h @@ -59,6 +59,10 @@ #endif +#define CONFIG_ENV_IS_IN_MMC +#define CONFIG_SYS_MMC_ENV_DEV 0 /* device 0 */ +#define CONFIG_ENV_OFFSET 512 /* just after the MBR */ + /* USB */ #ifdef CONFIG_CMD_USB #define CONFIG_USB_DWC2_REG_ADDR SOCFPGA_USB1_ADDRESS From aad604aef36e90bd42b4ce1969960f3427be4a7a Mon Sep 17 00:00:00 2001 From: Marek Vasut Date: Thu, 24 Sep 2015 09:06:06 +0200 Subject: [PATCH 5/5] arm: socfpga: Enable env support on MCV Enable support for env in eMMC on MCV SoM. Signed-off-by: Marek Vasut --- include/configs/socfpga_mcvevk.h | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/include/configs/socfpga_mcvevk.h b/include/configs/socfpga_mcvevk.h index ed9b5cce6a..65816a05cf 100644 --- a/include/configs/socfpga_mcvevk.h +++ b/include/configs/socfpga_mcvevk.h @@ -43,7 +43,11 @@ #define CONFIG_LOADADDR 0x01000000 #define CONFIG_SYS_LOAD_ADDR CONFIG_LOADADDR -#define CONFIG_ENV_IS_NOWHERE +/* Environment is in MMC */ +#define CONFIG_ENV_OVERWRITE +#define CONFIG_ENV_IS_IN_MMC +#define CONFIG_SYS_MMC_ENV_DEV 0 /* device 0 */ +#define CONFIG_ENV_OFFSET 512 /* just after the MBR */ /* USB */ #ifdef CONFIG_CMD_USB