sdhc_boot: Introduce CONFIG_FSL_FIXED_MMC_LOCATION option
PATCH 1/1 sdhc_boot: Introduce CONFIG_FSL_FIXED_MMC_LOCATION option
Since commit 97039ab98 (env_mmc: Allow board code to override the environment address) mmc_get_env_addr is a weak-aliased function in common/env_mmc.c
The mmc_get_env_addr implementation that exists at board/freescale/common/sdhc_boot.c is meant to be used only for PowerPC boards, but currently it is being used for all platforms that have CONFIG_ENV_IS_IN_MMC defined.
Introduce CONFIG_FSL_FIXED_MMC_LOCATION so that the boards that need to use the mmc_get_env_addr version from board/freescale/common/sdhc_boot.c could activate this config option on their board file.
This fixes the retrieval of CONFIG_ENV_OFFSET on non-PowerPC boards.
--- board/freescale/common/Makefile | 2 +- board/freescale/common/sdhc_boot.c | 2 ++ include/configs/MPC8536DS.h | 1 + include/configs/P1010RDB.h | 1 + include/configs/P1_P2_RDB.h | 1 + include/configs/P2020COME.h | 1 + include/configs/P2020DS.h | 1 + include/configs/P2041RDB.h | 1 + include/configs/corenet_ds.h | 1 + include/configs/p1_p2_rdb_pc.h | 1 + 10 files changed, 11 insertions(+), 1 deletions(-)
board/freescale/common/Makefile +1 -1
@@ -39,7 +39,7 @@ COBJS-$(CONFIG_PQ_MDS_PIB) += pq-mds-pib.o COBJS-$(CONFIG_ID_EEPROM) += sys_eeprom.o COBJS-$(CONFIG_FSL_SGMII_RISER) += sgmii_riser.o ifndef CONFIG_RAMBOOT_PBL -COBJS-$(CONFIG_ENV_IS_IN_MMC) += sdhc_boot.o +COBJS-$(CONFIG_FSL_FIXED_MMC_LOCATION) += sdhc_boot.o endif COBJS-$(CONFIG_MPC8541CDS) += cds_pci_ft.o
board/freescale/common/sdhc_boot.c +2 -0
@@ -32,6 +32,7 @@#define ESDHC_BOOT_IMAGE_SIZE 0x48#define ESDHC_BOOT_IMAGE_ADDR 0x50 +#ifdef CONFIG_FSL_FIXED_MMC_LOCATION int mmc_get_env_addr (struct mmc *mmc,u32 *env_addr) {u8 *tmp_buf;
@@ -61,3 +62,4 @@ int mmc_get_env_addr(struct mmc *mmc, u32 *env_addr) return 0; } +#endif
include/configs/MPC8536DS.h +1 -0
@@ -659,6 +659,7 @@#define CONFIG_ENV_SECT_SIZE 0x10000#elif defined(CONFIG_RAMBOOT_SDCARD )#define CONFIG_ENV_IS_IN_MMC +#define CONFIG_FSL_FIXED_MMC_LOCATION #define CONFIG_ENV_SIZE 0x2000#define CONFIG_SYS_MMC_ENV_DEV 0#else
include/configs/P1010RDB.h +1 -0
@@ -609,6 +609,7 @@ extern unsigned long get_sdram_size(void);#if defined(CONFIG_SYS_RAMBOOT )#if defined(CONFIG_RAMBOOT_SDCARD )#define CONFIG_ENV_IS_IN_MMC +#define CONFIG_FSL_FIXED_MMC_LOCATION #define CONFIG_SYS_MMC_ENV_DEV 0#define CONFIG_ENV_SIZE 0x2000#elif defined(CONFIG_RAMBOOT_SPIFLASH )
include/configs/P1_P2_RDB.h +1 -0
@@ -519,6 +519,7 @@ extern unsigned long get_board_sys_clk(unsigned long dummy);#define CONFIG_ENV_OFFSET ((512 * 1024) + CONFIG_SYS_NAND_BLOCK_SIZE)#elif defined(CONFIG_RAMBOOT_SDCARD )#define CONFIG_ENV_IS_IN_MMC +#define CONFIG_FSL_FIXED_MMC_LOCATION #define CONFIG_ENV_SIZE 0x2000#define CONFIG_SYS_MMC_ENV_DEV 0#elif defined(CONFIG_RAMBOOT_SPIFLASH )
include/configs/P2020COME.h +1 -0
@@ -350,6 +350,7 @@ extern unsigned long get_board_sys_clk(unsigned long dummy);*/ #if defined(CONFIG_RAMBOOT_SDCARD )#define CONFIG_ENV_IS_IN_MMC 1 +#define CONFIG_FSL_FIXED_MMC_LOCATION #define CONFIG_ENV_SIZE 0x2000#define CONFIG_SYS_MMC_ENV_DEV 0#elif defined(CONFIG_RAMBOOT_SPIFLASH )
include/configs/P2020DS.h +1 -0
@@ -596,6 +596,7 @@*/ #if defined(CONFIG_SDCARD )#define CONFIG_ENV_IS_IN_MMC +#define CONFIG_FSL_FIXED_MMC_LOCATION #define CONFIG_ENV_SIZE 0x2000#define CONFIG_SYS_MMC_ENV_DEV 0#elif defined(CONFIG_SPIFLASH )
include/configs/P2041RDB.h +1 -0
@@ -92,6 +92,7 @@#elif defined(CONFIG_SDCARD )#define CONFIG_SYS_EXTRA_ENV_RELOC #define CONFIG_ENV_IS_IN_MMC +#define CONFIG_FSL_FIXED_MMC_LOCATION #define CONFIG_SYS_MMC_ENV_DEV 0#define CONFIG_ENV_SIZE 0x2000#define CONFIG_ENV_OFFSET (512 * 1097)
include/configs/corenet_ds.h +1 -0
@@ -88,6 +88,7 @@#elif defined(CONFIG_SDCARD )#define CONFIG_SYS_EXTRA_ENV_RELOC #define CONFIG_ENV_IS_IN_MMC +#define CONFIG_FSL_FIXED_MMC_LOCATION #define CONFIG_SYS_MMC_ENV_DEV 0#define CONFIG_ENV_SIZE 0x2000#define CONFIG_ENV_OFFSET (512 * 1097)
include/configs/p1_p2_rdb_pc.h +1 -0
@@ -733,6 +733,7 @@#define CONFIG_ENV_SECT_SIZE 0x10000#elif defined(CONFIG_RAMBOOT_SDCARD )#define CONFIG_ENV_IS_IN_MMC +#define CONFIG_FSL_FIXED_MMC_LOCATION #define CONFIG_ENV_SIZE 0x2000#define CONFIG_SYS_MMC_ENV_DEV 0#elif defined(CONFIG_NAND_U_BOOT )
Signature · 1 line
1.7.1
PATCH 1/1 sdhc_boot: Introduce CONFIG_FSL_FIXED_MMC_LOCATION option
Quoted 7 lines · Fabio Estevam
Since commit
97039ab98(env_mmc: Allow board code to override the environment address)mmc_get_env_addris a weak-aliased function incommon/env_mmc.cThe
mmc_get_env_addrimplementation that exists atboard/freescale/common/sdhc_boot.cis meant to be used only for PowerPC boards, but currently it is being used for all platforms that haveCONFIG_ENV_IS_IN_MMCdefined.
Quoted 8 lines
Introduce
CONFIG_FSL_FIXED_MMC_LOCATIONso that the boards that need to use themmc_get_env_addrversion fromboard/freescale/common/sdhc_boot.ccould activate this config option on their board file.This fixes the retrieval of
CONFIG_ENV_OFFSETon non-PowerPC boards.Signed-off-by Fabio Estevam <[email protected]>---
Best regards,
Stefano Babic
Signature · 5 lines
===================================================================== DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: +49-8142-66989-0 Fax: +49-8142-66989-80 Email: office at denx.de =====================================================================
PATCH 1/1 sdhc_boot: Introduce CONFIG_FSL_FIXED_MMC_LOCATION option
Kumar/Andy,
Quoted 12 lines · Stefano Babic
Quoted 11 lines · Fabio Estevam
Since commit
97039ab98(env_mmc: Allow board code to override the environment address)mmc_get_env_addris a weak-aliased function incommon/env_mmc.cThe
mmc_get_env_addrimplementation that exists atboard/freescale/common/sdhc_boot.cis meant to be used only for PowerPC boards, but currently it is being used for all platforms that haveCONFIG_ENV_IS_IN_MMCdefined.Introduce
CONFIG_FSL_FIXED_MMC_LOCATIONso that the boards that need to use themmc_get_env_addrversion fromboard/freescale/common/sdhc_boot.ccould activate this config option on their board file.
Quoted 5 lines
Quoted 3 lines
This fixes the retrieval of
CONFIG_ENV_OFFSETon non-PowerPC boards.Signed-off-by Fabio Estevam <[email protected]>Acked-by Stefano Babic <[email protected]>
Are you guys OK with this?
Regards,
Fabio Estevam
PATCH 1/1 sdhc_boot: Introduce CONFIG_FSL_FIXED_MMC_LOCATION option
Andy,
Any comment about this patch?
Without this patch we get corrupted SD cards after trying to store env vars on several i.MX boards.
Regards,
Fabio Estevam
Quoted 26 lines · Fabio Estevam
Kumar/Andy,
Quoted 12 lines · Stefano Babic
Quoted 11 lines · Fabio Estevam
Since commit
97039ab98(env_mmc: Allow board code to override the environment address)mmc_get_env_addris a weak-aliased function incommon/env_mmc.cThe
mmc_get_env_addrimplementation that exists atboard/freescale/common/sdhc_boot.cis meant to be used only for PowerPC boards, but currently it is being used for all platforms that haveCONFIG_ENV_IS_IN_MMCdefined.Introduce
CONFIG_FSL_FIXED_MMC_LOCATIONso that the boards that need to use themmc_get_env_addrversion fromboard/freescale/common/sdhc_boot.ccould activate this config option on their board file.Quoted 5 lines
Quoted 3 lines
This fixes the retrieval of
CONFIG_ENV_OFFSETon non-PowerPC boards.Signed-off-by Fabio Estevam <[email protected]>Acked-by Stefano Babic <[email protected]>Are you guys OK with this?
Regards,
Fabio Estevam
PATCH 1/1 sdhc_boot: Introduce CONFIG_FSL_FIXED_MMC_LOCATION option
Quoted 6 lines · Fabio Estevam
Andy,
Any comment about this patch?
Without this patch we get corrupted SD cards after trying to store env vars on several i.MX boards.
As this seems to hurt more and more i.MX guys, could we somehow get this applied asap (if there are no comments any more)?
Many thanks
Dirk
Quoted 25 lines · Fabio Estevam
Quoted 24 lines
Kumar/Andy,
Quoted 8 lines · Stefano Babic
Quoted 7 lines · Fabio Estevam
Since commit
97039ab98(env_mmc: Allow board code to override the environment address)mmc_get_env_addris a weak-aliased function incommon/env_mmc.cThe
mmc_get_env_addrimplementation that exists atboard/freescale/common/sdhc_boot.cis meant to be used only for PowerPC boards, but currently it is being used for all platforms that haveCONFIG_ENV_IS_IN_MMCdefined.Quoted 8 lines
Quoted 7 lines
Introduce
CONFIG_FSL_FIXED_MMC_LOCATIONso that the boards that need to use themmc_get_env_addrversion fromboard/freescale/common/sdhc_boot.ccould activate this config option on their board file.This fixes the retrieval of
CONFIG_ENV_OFFSETon non-PowerPC boards.Signed-off-by Fabio Estevam <[email protected]>Acked-by Stefano Babic <[email protected]>Are you guys OK with this?
Regards,
Fabio Estevam
PATCH 1/1 sdhc_boot: Introduce CONFIG_FSL_FIXED_MMC_LOCATION option
Quoted 2 lines · Dirk Behme
As this seems to hurt more and more i.MX guys, could we somehow get this applied asap (if there are no comments any more)?
The issue hurts i.MX, but the patch modifies some PowerPC boards. I would like to get the ACK from PowerPC guys before merging into u-boot-imx.
Best regards,
Stefano Babic
Signature · 5 lines
===================================================================== DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: +49-8142-66989-0 Fax: +49-8142-66989-80 Email: office at denx.de =====================================================================
PATCH 1/1 sdhc_boot: Introduce CONFIG_FSL_FIXED_MMC_LOCATION option
In reply to Fabio EstevamQuoted 29 lines
-----Original Message-----
From: Fabio Estevam [mailto:festevam at gmail.com]
Sent: Wednesday, December 21, 2011 12:33 AM
To: u-boot at lists.denx.de
Cc: sbabic at denx.de; marek.vasut at gmail.com; Fleming Andy-AFLEMING; Gala Kumar-B11780; Guo Shawn-R65073; Liu Hui-R64343; Huang Changming-R66093; Estevam Fabio-R49496
Subject: [PATCH]sdhc_boot: IntroduceCONFIG_FSL_FIXED_MMC_LOCATIONoptionSince commit
97039ab98(env_mmc: Allow board code to override the environment address)mmc_get_env_addris a weak-aliased function incommon/env_mmc.cThe
mmc_get_env_addrimplementation that exists atboard/freescale/common/sdhc_boot.cis meant to be used only for PowerPC boards, but currently it is being used for all platforms that haveCONFIG_ENV_IS_IN_MMCdefined.Introduce
CONFIG_FSL_FIXED_MMC_LOCATIONso that the boards that need to use themmc_get_env_addrversion fromboard/freescale/common/sdhc_boot.ccould activate this config option on their board file.This fixes the retrieval of
CONFIG_ENV_OFFSETon non-PowerPC boards.Signed-off-by Fabio Estevam <[email protected]>---
Quoted 12 lines
board/freescale/common/Makefile | 2 +- board/freescale/common/sdhc_boot.c | 2 ++ include/configs/MPC8536DS.h | 1 + include/configs/P1010RDB.h | 1 + include/configs/P1_P2_RDB.h | 1 + include/configs/P2020COME.h | 1 + include/configs/P2020DS.h | 1 + include/configs/P2041RDB.h | 1 + include/configs/corenet_ds.h | 1 + include/configs/p1_p2_rdb_pc.h | 1 + 10 files changed, 11 insertions(+), 1 deletions(-)
PATCH 1/1 sdhc_boot: Introduce CONFIG_FSL_FIXED_MMC_LOCATION option
Quoted 41 lines
Quoted 29 lines
-----Original Message-----
From: Fabio Estevam [mailto:festevam at gmail.com]
Sent: Wednesday, December 21, 2011 12:33 AM
To: u-boot at lists.denx.de
Cc: sbabic at denx.de; marek.vasut at gmail.com; Fleming Andy-AFLEMING; Gala Kumar-B11780; Guo Shawn-R65073; Liu Hui-R64343; Huang Changming-R66093; Estevam Fabio-R49496
Subject: [PATCH]sdhc_boot: IntroduceCONFIG_FSL_FIXED_MMC_LOCATIONoptionSince commit
97039ab98(env_mmc: Allow board code to override the environment address)mmc_get_env_addris a weak-aliased function incommon/env_mmc.cThe
mmc_get_env_addrimplementation that exists atboard/freescale/common/sdhc_boot.cis meant to be used only for PowerPC boards, but currently it is being used for all platforms that haveCONFIG_ENV_IS_IN_MMCdefined.Introduce
CONFIG_FSL_FIXED_MMC_LOCATIONso that the boards that need to use themmc_get_env_addrversion fromboard/freescale/common/sdhc_boot.ccould activate this config option on their board file.This fixes the retrieval of
CONFIG_ENV_OFFSETon non-PowerPC boards.Signed-off-by Fabio Estevam <[email protected]>---
Quoted 11 lines
board/freescale/common/Makefile | 2 +- board/freescale/common/sdhc_boot.c | 2 ++ include/configs/MPC8536DS.h | 1 + include/configs/P1010RDB.h | 1 + include/configs/P1_P2_RDB.h | 1 + include/configs/P2020COME.h | 1 + include/configs/P2020DS.h | 1 + include/configs/P2041RDB.h | 1 + include/configs/corenet_ds.h | 1 + include/configs/p1_p2_rdb_pc.h | 1 + 10 files changed, 11 insertions(+), 1 deletions(-)
Quoted 1 line
Acked-by Jason Liu <[email protected]>
Did you get a third identity (Liu Hui)?
M
PATCH 1/1 sdhc_boot: Introduce CONFIG_FSL_FIXED_MMC_LOCATION option
In reply to Fabio EstevamQuoted 45 lines · Fabio Estevam
Since commit
97039ab98(env_mmc: Allow board code to override the environment address)mmc_get_env_addris a weak-aliased function incommon/env_mmc.cThe
mmc_get_env_addrimplementation that exists atboard/freescale/common/sdhc_boot.cis meant to be used only for PowerPC boards, but currently it is being used for all platforms that haveCONFIG_ENV_IS_IN_MMCdefined.Introduce
CONFIG_FSL_FIXED_MMC_LOCATIONso that the boards that need to use themmc_get_env_addrversion fromboard/freescale/common/sdhc_boot.ccould activate this config option on their board file.This fixes the retrieval of
CONFIG_ENV_OFFSETon non-PowerPC boards.Signed-off-by Fabio Estevam <[email protected]>---
board/freescale/common/Makefile | 2 +- board/freescale/common/sdhc_boot.c | 2 ++ include/configs/MPC8536DS.h | 1 + include/configs/P1010RDB.h | 1 + include/configs/P1_P2_RDB.h | 1 + include/configs/P2020COME.h | 1 + include/configs/P2020DS.h | 1 + include/configs/P2041RDB.h | 1 + include/configs/corenet_ds.h | 1 + include/configs/p1_p2_rdb_pc.h | 1 + 10 files changed, 11 insertions(+), 1 deletions(-)board/freescale/common/Makefile +0
-0@@ -39,7 +39,7 @@ COBJS-$(CONFIG_PQ_MDS_PIB) += pq-mds-pib.oCOBJS-$(CONFIG_ID_EEPROM) += sys_eeprom.o
COBJS-$(CONFIG_FSL_SGMII_RISER) += sgmii_riser.o
ifndefCONFIG_RAMBOOT_PBLboard/freescale/common/Makefile +1
-1-COBJS-$(CONFIG_ENV_IS_IN_MMC) += sdhc_boot.o +COBJS-$(CONFIG_FSL_FIXED_MMC_LOCATION) += sdhc_boot.oendif
COBJS-$(CONFIG_MPC8541CDS) += cds_pci_ft.o
board/freescale/common/sdhc_boot.c +0
-0
board/freescale/common/sdhc_boot.c line 35
Quoted 4 lines
board/freescale/common/sdhc_boot.c +1
-0@@ -32,6 +32,7 @@#define ESDHC_BOOT_IMAGE_SIZE 0x48#define ESDHC_BOOT_IMAGE_ADDR 0x50 +#ifdef CONFIG_FSL_FIXED_MMC_LOCATION
Why is this ifdef needed since we already have it dealt with in the Makefile?
Quoted 111 lines
board/freescale/common/sdhc_boot.c +1
-0int mmc_get_env_addr (struct mmc *mmc,u32 *env_addr) {u8 *tmp_buf;@@ -61,3 +62,4 @@ int mmc_get_env_addr(struct mmc *mmc, u32 *env_addr) return 0; } +#endif include/configs/MPC8536DS.h +1
-0@@ -659,6 +659,7 @@#define CONFIG_ENV_SECT_SIZE 0x10000#elif defined(CONFIG_RAMBOOT_SDCARD )#define CONFIG_ENV_IS_IN_MMC +#define CONFIG_FSL_FIXED_MMC_LOCATION #define CONFIG_ENV_SIZE 0x2000#define CONFIG_SYS_MMC_ENV_DEV 0#else include/configs/P1010RDB.h +1
-0@@ -609,6 +609,7 @@ extern unsigned long get_sdram_size(void);#if defined(CONFIG_SYS_RAMBOOT )#if defined(CONFIG_RAMBOOT_SDCARD )#define CONFIG_ENV_IS_IN_MMC +#define CONFIG_FSL_FIXED_MMC_LOCATION #define CONFIG_SYS_MMC_ENV_DEV 0#define CONFIG_ENV_SIZE 0x2000#elif defined(CONFIG_RAMBOOT_SPIFLASH )include/configs/P1_P2_RDB.h +1
-0@@ -519,6 +519,7 @@ extern unsigned long get_board_sys_clk(unsigned long dummy);#define CONFIG_ENV_OFFSET ((512 * 1024) + CONFIG_SYS_NAND_BLOCK_SIZE)#elif defined(CONFIG_RAMBOOT_SDCARD )#define CONFIG_ENV_IS_IN_MMC +#define CONFIG_FSL_FIXED_MMC_LOCATION #define CONFIG_ENV_SIZE 0x2000#define CONFIG_SYS_MMC_ENV_DEV 0#elif defined(CONFIG_RAMBOOT_SPIFLASH )include/configs/P2020COME.h +1
-0@@ -350,6 +350,7 @@ extern unsigned long get_board_sys_clk(unsigned long dummy);*/ #if defined(CONFIG_RAMBOOT_SDCARD )#define CONFIG_ENV_IS_IN_MMC 1 +#define CONFIG_FSL_FIXED_MMC_LOCATION #define CONFIG_ENV_SIZE 0x2000#define CONFIG_SYS_MMC_ENV_DEV 0#elif defined(CONFIG_RAMBOOT_SPIFLASH )include/configs/P2020DS.h +1
-0@@ -596,6 +596,7 @@*/ #if defined(CONFIG_SDCARD )#define CONFIG_ENV_IS_IN_MMC +#define CONFIG_FSL_FIXED_MMC_LOCATION #define CONFIG_ENV_SIZE 0x2000#define CONFIG_SYS_MMC_ENV_DEV 0#elif defined(CONFIG_SPIFLASH )include/configs/P2041RDB.h +1
-0@@ -92,6 +92,7 @@#elif defined(CONFIG_SDCARD )#define CONFIG_SYS_EXTRA_ENV_RELOC #define CONFIG_ENV_IS_IN_MMC +#define CONFIG_FSL_FIXED_MMC_LOCATION #define CONFIG_SYS_MMC_ENV_DEV 0#define CONFIG_ENV_SIZE 0x2000#define CONFIG_ENV_OFFSET (512 * 1097)include/configs/corenet_ds.h +1
-0@@ -88,6 +88,7 @@#elif defined(CONFIG_SDCARD )#define CONFIG_SYS_EXTRA_ENV_RELOC #define CONFIG_ENV_IS_IN_MMC +#define CONFIG_FSL_FIXED_MMC_LOCATION #define CONFIG_SYS_MMC_ENV_DEV 0#define CONFIG_ENV_SIZE 0x2000#define CONFIG_ENV_OFFSET (512 * 1097)include/configs/p1_p2_rdb_pc.h +1
-0@@ -733,6 +733,7 @@#define CONFIG_ENV_SECT_SIZE 0x10000#elif defined(CONFIG_RAMBOOT_SDCARD )#define CONFIG_ENV_IS_IN_MMC +#define CONFIG_FSL_FIXED_MMC_LOCATION #define CONFIG_ENV_SIZE 0x2000#define CONFIG_SYS_MMC_ENV_DEV 0#elif defined(CONFIG_NAND_U_BOOT )Signature · 6 lines
1.7.1 _______________________________________________ U-Boot mailing list U-Boot at lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot