
Hi Otavio,
On Sun, Nov 18, 2018 at 06:48:07PM -0200, Otavio Salvador wrote:
This allow for convenient use of QEMU machine to test loading of UBI filesystem. There are a couple of changes made together of this which are required:
The malloc must be at least 512 KiB to allow the use of UBI filesystem. We are going to enable it in a next patch.
MTD_DEVICE must be enabled, otherwise we get missing symbols during the build
Following configs were change:
- vexpress_aemv8a_dram_defconfig
- vexpress_aemv8a_juno_defconfig
- vexpress_aemv8a_semi_defconfig
- vexpress_ca15_tc2_defconfig
- vexpress_ca5x2_defconfig
- vexpress_ca9x4_defconfig
Signed-off-by: Otavio Salvador otavio@ossystems.com.br
configs/vexpress_aemv8a_dram_defconfig | 2 ++ configs/vexpress_aemv8a_juno_defconfig | 2 ++ configs/vexpress_aemv8a_semi_defconfig | 2 ++ configs/vexpress_ca15_tc2_defconfig | 2 ++ configs/vexpress_ca5x2_defconfig | 2 ++ configs/vexpress_ca9x4_defconfig | 2 ++ include/configs/vexpress_common.h | 2 +- 7 files changed, 13 insertions(+), 1 deletion(-)
diff --git a/configs/vexpress_aemv8a_dram_defconfig b/configs/vexpress_aemv8a_dram_defconfig index 9848f96293..0f0f138303 100644 --- a/configs/vexpress_aemv8a_dram_defconfig +++ b/configs/vexpress_aemv8a_dram_defconfig @@ -23,12 +23,14 @@ CONFIG_CMD_ARMFLASH=y # CONFIG_CMD_NFS is not set CONFIG_CMD_CACHE=y # CONFIG_CMD_MISC is not set +CONFIG_CMD_UBI=y # CONFIG_ISO_PARTITION is not set # CONFIG_EFI_PARTITION is not set CONFIG_ENV_IS_IN_FLASH=y CONFIG_DM=y # CONFIG_MMC is not set CONFIG_MTD_NOR_FLASH=y +CONFIG_MTD_DEVICE=y CONFIG_FLASH_CFI_DRIVER=y CONFIG_SYS_FLASH_USE_BUFFER_WRITE=y CONFIG_SYS_FLASH_PROTECTION=y diff --git a/configs/vexpress_aemv8a_juno_defconfig b/configs/vexpress_aemv8a_juno_defconfig index ef38915955..ed611fea7c 100644 --- a/configs/vexpress_aemv8a_juno_defconfig +++ b/configs/vexpress_aemv8a_juno_defconfig @@ -23,12 +23,14 @@ CONFIG_CMD_ARMFLASH=y # CONFIG_CMD_NFS is not set CONFIG_CMD_CACHE=y # CONFIG_CMD_MISC is not set +CONFIG_CMD_UBI=y # CONFIG_ISO_PARTITION is not set # CONFIG_EFI_PARTITION is not set CONFIG_ENV_IS_IN_FLASH=y CONFIG_DM=y # CONFIG_MMC is not set CONFIG_MTD_NOR_FLASH=y +CONFIG_MTD_DEVICE=y CONFIG_FLASH_CFI_DRIVER=y CONFIG_SYS_FLASH_USE_BUFFER_WRITE=y CONFIG_SYS_FLASH_PROTECTION=y diff --git a/configs/vexpress_aemv8a_semi_defconfig b/configs/vexpress_aemv8a_semi_defconfig index a4d1233cd5..0b3bb65ee6 100644 --- a/configs/vexpress_aemv8a_semi_defconfig +++ b/configs/vexpress_aemv8a_semi_defconfig @@ -23,12 +23,14 @@ CONFIG_CMD_ARMFLASH=y # CONFIG_CMD_NFS is not set CONFIG_CMD_CACHE=y # CONFIG_CMD_MISC is not set +CONFIG_CMD_UBI=y # CONFIG_ISO_PARTITION is not set # CONFIG_EFI_PARTITION is not set CONFIG_ENV_IS_IN_FLASH=y CONFIG_DM=y # CONFIG_MMC is not set CONFIG_MTD_NOR_FLASH=y +CONFIG_MTD_DEVICE=y CONFIG_FLASH_CFI_DRIVER=y CONFIG_SYS_FLASH_USE_BUFFER_WRITE=y CONFIG_SYS_FLASH_PROTECTION=y diff --git a/configs/vexpress_ca15_tc2_defconfig b/configs/vexpress_ca15_tc2_defconfig index f4d555be48..cabc0c4577 100644 --- a/configs/vexpress_ca15_tc2_defconfig +++ b/configs/vexpress_ca15_tc2_defconfig @@ -18,8 +18,10 @@ CONFIG_CMD_MMC=y # CONFIG_CMD_SETEXPR is not set # CONFIG_CMD_NFS is not set # CONFIG_CMD_MISC is not set +CONFIG_CMD_UBI=y CONFIG_ENV_IS_IN_FLASH=y CONFIG_MTD_NOR_FLASH=y +CONFIG_MTD_DEVICE=y CONFIG_FLASH_CFI_DRIVER=y CONFIG_SYS_FLASH_USE_BUFFER_WRITE=y CONFIG_SYS_FLASH_PROTECTION=y diff --git a/configs/vexpress_ca5x2_defconfig b/configs/vexpress_ca5x2_defconfig index bdacc60c2c..dc4411d6f5 100644 --- a/configs/vexpress_ca5x2_defconfig +++ b/configs/vexpress_ca5x2_defconfig @@ -17,8 +17,10 @@ CONFIG_CMD_MMC=y # CONFIG_CMD_SETEXPR is not set # CONFIG_CMD_NFS is not set # CONFIG_CMD_MISC is not set +CONFIG_CMD_UBI=y CONFIG_ENV_IS_IN_FLASH=y CONFIG_MTD_NOR_FLASH=y +CONFIG_MTD_DEVICE=y CONFIG_FLASH_CFI_DRIVER=y CONFIG_SYS_FLASH_USE_BUFFER_WRITE=y CONFIG_SYS_FLASH_PROTECTION=y diff --git a/configs/vexpress_ca9x4_defconfig b/configs/vexpress_ca9x4_defconfig index 7a90831918..9390cf61d1 100644 --- a/configs/vexpress_ca9x4_defconfig +++ b/configs/vexpress_ca9x4_defconfig @@ -17,8 +17,10 @@ CONFIG_CMD_MMC=y # CONFIG_CMD_SETEXPR is not set # CONFIG_CMD_NFS is not set # CONFIG_CMD_MISC is not set +CONFIG_CMD_UBI=y CONFIG_ENV_IS_IN_FLASH=y CONFIG_MTD_NOR_FLASH=y +CONFIG_MTD_DEVICE=y CONFIG_FLASH_CFI_DRIVER=y CONFIG_SYS_FLASH_USE_BUFFER_WRITE=y CONFIG_SYS_FLASH_PROTECTION=y diff --git a/include/configs/vexpress_common.h b/include/configs/vexpress_common.h index 267b230fda..f277e80578 100644 --- a/include/configs/vexpress_common.h +++ b/include/configs/vexpress_common.h @@ -120,7 +120,7 @@ #define CONFIG_INITRD_TAG 1
/* Size of malloc() pool */ -#define CONFIG_SYS_MALLOC_LEN (CONFIG_ENV_SIZE + 128 * 1024) +#define CONFIG_SYS_MALLOC_LEN (512 * 1024) /* 512 KiB */
I don't have much to say about the enabling of the UBI for some platforms that I have my doubts that QEMU emulates them correctly, but I guess it should be harmless. What I have issues here is you saying in the commit message "The malloc must be *at least* 512 KiB" but here you make it *exactly* 512KiB, ignoring the CONFIG_ENV_SIZE. Would it not be better to keep the CONFIG_SYS_MALLOC_LEN to be (CONFIG_ENV_SIZE + 512 * 1024)?
Best regards, Liviu
#define SCTL_BASE V2M_SYSCTL
#define VEXPRESS_FLASHPROG_FLVPPEN (1 << 0)
2.19.1