From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ladislav Michl Date: Sat, 26 Feb 2005 11:52:06 +0100 Subject: [U-Boot-Users] Re: Make drivers/cfi_flash.c protect environment and redundant enviro nment In-Reply-To: <31ADFA827355984B9E2A161514595B561C33A5@lpdsrv04.logicpd.com> References: <31ADFA827355984B9E2A161514595B561C33A5@lpdsrv04.logicpd.com> Message-ID: <20050226105206.GA10884@orphique> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de On Mon, Aug 30, 2004 at 01:56:34PM -0500, Michael Bendzick wrote: > Included is a patch to the drivers/cfi_flash.c driver that will > automatically enable environment and redundant environment protection > protection upon booting. Previously, only the monitor (U-Boot) was > protected by the driver. [snip] > diff -purN a/drivers/cfi_flash.c b/drivers/cfi_flash.c > --- a/drivers/cfi_flash.c 2004-07-12 17:34:52.000000000 -0500 > +++ b/drivers/cfi_flash.c 2004-08-30 13:34:23.783099389 -0500 > @@ -338,6 +338,21 @@ unsigned long flash_init (void) > &flash_info[0]); > #endif > > + /* Environment protection ON by default */ > +#ifdef CFG_ENV_IS_IN_FLASH > + flash_protect (FLAG_PROTECT_SET, > + CFG_ENV_ADDR, > + CFG_ENV_ADDR + CFG_ENV_SECT_SIZE - 1, > + &flash_info[0]); > +#endif > + > + /* Redundant environment protection ON by default */ > +#ifdef CFG_ENV_ADDR_REDUND > + flash_protect (FLAG_PROTECT_SET, > + CFG_ENV_ADDR_REDUND, > + CFG_ENV_ADDR_REDUND + CFG_ENV_SIZE_REDUND - 1, > + &flash_info[0]); > +#endif > return (size); > } Well, if you are using CFG_ENV_SIZE_REDUND it would make sense to use CFG_ENV_SIZE instead of CFG_ENV_SECT_SIZE to make code a bit more consistent. flash_protect will extend end address to sector boundary anyway. Index: drivers/cfi_flash.c =================================================================== RCS file: /cvsroot/u-boot/u-boot/drivers/cfi_flash.c,v retrieving revision 1.16 diff -u -r1.16 cfi_flash.c --- drivers/cfi_flash.c 9 Jan 2005 17:12:33 -0000 1.16 +++ drivers/cfi_flash.c 26 Feb 2005 10:42:12 -0000 @@ -348,10 +347,8 @@ #ifdef CFG_ENV_IS_IN_FLASH flash_protect (FLAG_PROTECT_SET, CFG_ENV_ADDR, - CFG_ENV_ADDR + CFG_ENV_SECT_SIZE - 1, + CFG_ENV_ADDR + CFG_ENV_SIZE - 1, &flash_info[0]); -#endif - /* Redundant environment protection ON by default */ #ifdef CFG_ENV_ADDR_REDUND flash_protect (FLAG_PROTECT_SET, @@ -359,6 +356,7 @@ CFG_ENV_ADDR_REDUND + CFG_ENV_SIZE_REDUND - 1, &flash_info[0]); #endif +#endif return (size); }