From mboxrd@z Thu Jan 1 00:00:00 1970 From: Stefan Roese Date: Tue, 7 Sep 2010 19:26:04 +0200 Subject: [U-Boot] Handling dual die and single die flash on same board In-Reply-To: <4C8670EA.5010501@gmail.com> References: <4C8670EA.5010501@gmail.com> Message-ID: <201009071926.04557.sr@denx.de> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Hi Chris, On Tuesday 07 September 2010 19:05:46 Chris Packham wrote: > I've run into a situation with a new design and I could use some pointers. > > Our hardware designers have built prototypes with different flash > configurations. One possible configuration is a dual die 2x32MB the > other is a single die 1x64MB. > > My u-boot config is currently setup for the 2x32MB case i.e. > CONFIG_SYS_MAX_FLASH_BANKS = 2, CONFIG_SYS_FLASH_BANKS_LIST = {base, > base+32MB}. The problem with this is that when flash_get_size is called > on the 1x64 chip it discovers the same chip the 2nd time around and > promptly walks off the end of the memory area I have allocated for it. > > Is there any existing way to make the cfi_flash driver handle this > situation for me? I just recently sent a patchset for the CFI driver that could help to handle such a situation. Here the most interesting patch: http://www.mail-archive.com/u-boot at lists.denx.de/msg37234.html I would suggest to set CONFIG_SYS_MAX_FLASH_BANKS_DETECT to 2 and then add some board specific code to determine the real bank count and set cfi_flash_num_flash_banks accordingly. Hope this helps. Cheers, Stefan -- 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