[U-Boot] [PATCHv3] arm: socfpga: Enable saveenv for SD/MMC

Marek Vasut marex at denx.de
Thu Sep 24 19:51:07 CEST 2015


On Thursday, September 24, 2015 at 07:47:46 PM, Pavel Machek wrote:
> Hi!
> 
> > From: Dinh Nguyen <dinguyen at opensource.altera.com>
> > 
> > Enable the able to save the environment variables when SD/MMC is used.
> > 
> > Signed-off-by: Dinh Nguyen <dinguyen at opensource.altera.com>
> > ---
> > v3: Only define ENV_IS_NOWHERE if env is not in MMC, NAND, FAT, and
> > SPI_FLASH v2: Move this option to be on a per-board basis
> > 
> >     Add config for socfpga_cyclone5 and socfpga_arria5
> > 
> > ---
> > 
> >  include/configs/socfpga_arria5_socdk.h   | 4 ++++
> >  include/configs/socfpga_common.h         | 5 +++++
> >  include/configs/socfpga_cyclone5_socdk.h | 4 ++++
> >  include/configs/socfpga_de0_nano_soc.h   | 4 ++++
> >  include/configs/socfpga_sockit.h         | 4 ++++
> >  5 files changed, 21 insertions(+)
> > 
> > diff --git a/include/configs/socfpga_arria5_socdk.h
> > b/include/configs/socfpga_arria5_socdk.h index 3193684..b75b0a2 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 a2811ba..b3fba5b 100644
> > --- a/include/configs/socfpga_common.h
> > +++ b/include/configs/socfpga_common.h
> > @@ -281,7 +281,12 @@ 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
> > 
> > +#if !defined CONFIG_ENV_IS_IN_MMC && \
> > +    !defined CONFIG_ENV_IS_IN_NAND && \
> > +    !defined CONFIG_ENV_IS_IN_FAT && \
> > +    !defined CONFIG_ENV_IS_IN_SPI_FLASH
> > 
> >  #define CONFIG_ENV_IS_NOWHERE
> > 
> > +#endif
> > 
> >  #define CONFIG_ENV_SIZE			4096
> 
> Actually... if we decided that position of u-boot environment is
> board-specific, size should be board-specific, too.
> 
> But it might be better to just define
> 
> #define ENV_IN_MMC_SECTOR_1
> 
> in each board, and have the common code in socfpga_common.h... so that
> we can change environment size for all boards using "after mmc"
> layout, for example.
> 
> Ouch and 4K is way too small.

Patch is welcome :-)


More information about the U-Boot mailing list