
In message 4857C743.7060300@GlobalAutomationSystems.com you wrote:
As far as I know CFG_MAX_FLASH_BANKS should be set to 1 always. Multiple flash banks in u-boot are not supported.
Huuuu? Who claims so?
What do you think how these boards are working then:
include/configs/ADCIOP.h:#define CFG_MAX_FLASH_BANKS 2 /* max number of memory banks */ include/configs/BAB7xx.h:#define CFG_MAX_FLASH_BANKS 2 /* max number of memory banks */ include/configs/CCM.h:#define CFG_MAX_FLASH_BANKS 2 /* max number of memory banks */ include/configs/CPU86.h:#define CFG_MAX_FLASH_BANKS 2 /* max num of memory banks */ include/configs/CPU87.h:#define CFG_MAX_FLASH_BANKS 2 /* max num of memory banks */ include/configs/CU824.h:#define CFG_MAX_FLASH_BANKS 2 /* Max number of flash banks */ include/configs/ELPPC.h:#define CFG_MAX_FLASH_BANKS 2 /* max number of memory banks */ include/configs/EXBITGEN.h:#define CFG_MAX_FLASH_BANKS 5 /* max number of memory banks */ include/configs/IceCube.h:#define CFG_MAX_FLASH_BANKS 2 /* max num of memory banks */ include/configs/LANTEC.h:#define CFG_MAX_FLASH_BANKS 2 /* max number of memory banks */ include/configs/M54455EVB.h:# define CFG_MAX_FLASH_BANKS 2 /* max number of memory banks */ include/configs/M54455EVB.h:# define CFG_MAX_FLASH_BANKS 3 /* max number of memory banks */ include/configs/M5475EVB.h:# define CFG_MAX_FLASH_BANKS 2 /* max number of memory banks */ include/configs/M5485EVB.h:# define CFG_MAX_FLASH_BANKS 2 /* max number of memory banks */ include/configs/MOUSSE.h:#define CFG_MAX_FLASH_BANKS 3 /* Max number of flash banks */ include/configs/MPC8349ITX.h:#define CFG_MAX_FLASH_BANKS 2 /* number of banks */ include/configs/MPC8544DS.h:#define CFG_MAX_FLASH_BANKS 2 /* number of banks */ include/configs/MPC8548CDS.h:#define CFG_MAX_FLASH_BANKS 2 /* number of banks */ include/configs/MPC8555CDS.h:#define CFG_MAX_FLASH_BANKS 2 /* number of banks */ include/configs/MUSENKI.h:#define CFG_MAX_FLASH_BANKS 2 /* Max number of flash banks */ include/configs/NETPHONE.h:#define CFG_MAX_FLASH_BANKS 2 /* max number of memory banks */ include/configs/NETTA2.h:#define CFG_MAX_FLASH_BANKS 2 /* max number of memory banks */ include/configs/OCRTC.h:#define CFG_MAX_FLASH_BANKS 2 /* max number of memory banks */ include/configs/ORSG.h:#define CFG_MAX_FLASH_BANKS 2 /* max number of memory banks */ include/configs/P3G4.h:#define CFG_MAX_FLASH_BANKS 2 /* max number of memory banks */ include/configs/Rattler.h:#define CFG_JFFS2_NUM_BANKS CFG_MAX_FLASH_BANKS include/configs/SMN42.h:#define CFG_MAX_FLASH_BANKS 2 /* max number of memory banks */ include/configs/Sandpoint8245.h:#define CFG_MAX_FLASH_BANKS 2 /* max number of memory banks */ include/configs/TQM823L.h:#define CFG_MAX_FLASH_BANKS 2 /* max number of memory banks */ include/configs/TQM834x.h: * When CFG_MAX_FLASH_BANKS_DETECT is defined, the actual number of Flash include/configs/TQM834x.h: * tqm834x_num_flash_banks. The value of CFG_MAX_FLASH_BANKS_DETECT is only include/configs/TQM834x.h: * used instead of CFG_MAX_FLASH_BANKS to allocate the array flash_info, and include/configs/TQM834x.h: * CFG_MAX_FLASH_BANKS as the number of actual banks on the board, it is include/configs/TQM834x.h:#define CFG_MAX_FLASH_BANKS_DETECT 2 include/configs/TQM834x.h:#define CFG_MAX_FLASH_BANKS (tqm834x_num_flash_banks) include/configs/TQM855L.h:#define CFG_MAX_FLASH_BANKS 2 /* max number of memory banks */ include/configs/TQM85xx.h:#define CFG_MAX_FLASH_BANKS 2 /* number of banks */ include/configs/TQM862L.h:#define CFG_MAX_FLASH_BANKS 2 /* max number of memory banks */ include/configs/W7OLMC.h:#define CFG_MAX_FLASH_BANKS 2 /* max number of memory banks */ include/configs/W7OLMG.h:#define CFG_MAX_FLASH_BANKS 2 /* max number of memory banks */ include/configs/ZUMA.h:#define CFG_MAX_FLASH_BANKS 3 /* max number of memory banks */ include/configs/actux4.h:#define CFG_MAX_FLASH_BANKS 2 include/configs/bamboo.h:#define CFG_MAX_FLASH_BANKS 3 /* number of banks */ include/configs/bf533-ezkit.h:#define CFG_MAX_FLASH_BANKS 3 /* max number of memory banks */ include/configs/c2mon.h:#define CFG_MAX_FLASH_BANKS 2 /* max number of memory banks */ include/configs/cogent_mpc8xx.h:#define CFG_MAX_FLASH_BANKS 2 /* max number of memory banks */ include/configs/ebony.h:#define CFG_MAX_FLASH_BANKS 3 /* number of banks */ include/configs/ep8248.h:#define CFG_JFFS2_NUM_BANKS CFG_MAX_FLASH_BANKS include/configs/ep82xxm.h:#define CFG_JFFS2_NUM_BANKS CFG_MAX_FLASH_BANKS include/configs/gth2.h:#define CFG_MAX_FLASH_BANKS 2 /* max number of memory banks */ include/configs/hymod.h:#define CFG_MAX_FLASH_BANKS 2 /* max num of memory banks */ include/configs/impa7.h:#define CFG_MAX_FLASH_BANKS 2 /* max number of memory banks */ include/configs/incaip.h:#define CFG_MAX_FLASH_BANKS 2 /* max number of memory banks */ include/configs/korat.h:#define CFG_MAX_FLASH_BANKS 2 /* max number of memory banks */ include/configs/logodl.h:#define CFG_MAX_FLASH_BANKS 2 /* max number of memory banks */ include/configs/lpc2292sodimm.h:#define CFG_MAX_FLASH_BANKS 2 /* max number of memory banks */ include/configs/luan.h:#define CFG_MAX_FLASH_BANKS 3 /* max number of memory banks */ include/configs/lubbock.h:#define CFG_MAX_FLASH_BANKS 2 /* max number of memory banks */ include/configs/lwmon.h:#define CFG_MAX_FLASH_BANKS 2 /* max number of memory banks */ include/configs/lwmon5.h:#define CFG_MAX_FLASH_BANKS 2 /* max number of memory banks */ include/configs/mgcoge.h:#define CFG_MAX_FLASH_BANKS 2 /* max num of flash banks */ include/configs/ms7722se.h:#define CFG_MAX_FLASH_BANKS 2 include/configs/ocotea.h:#define CFG_MAX_FLASH_BANKS 3 /* number of banks */ include/configs/pcu_e.h:#define CFG_MAX_FLASH_BANKS 2 /* max number of memory banks */ include/configs/ppmc7xx.h: * CFG_MAX_FLASH_BANKS - Number of banks of flash on board include/configs/r2dplus.h:#define CFG_MAX_FLASH_BANKS (2) include/configs/rsdproto.h:#define CFG_MAX_FLASH_BANKS 2 /* max number of memory banks */ include/configs/sacsng.h:#define CFG_MAX_FLASH_BANKS 2 /* max number of memory banks */ include/configs/sc3.h:#define CFG_MAX_FLASH_BANKS 2 /* max number of memory banks */ include/configs/socrates.h:#define CFG_MAX_FLASH_BANKS 2 /* number of banks */ include/configs/sorcery.h:#define CFG_MAX_FLASH_BANKS 2 /* max num of flash banks */ include/configs/stxxtc.h:#define CFG_MAX_FLASH_BANKS 2 /* max number of memory banks */ include/configs/svm_sc8xx.h:#define CFG_MAX_FLASH_BANKS 2 /* max number of memory banks */ include/configs/taihu.h:#define CFG_MAX_FLASH_BANKS 2 /* max number of memory banks */ include/configs/v37.h:#define CFG_MAX_FLASH_BANKS 2 /* max number of memory banks */ include/configs/virtlab2.h:#define CFG_MAX_FLASH_BANKS 2 /* max number of memory banks */ include/configs/yucca.h:#define CFG_MAX_FLASH_BANKS 3 /* number of banks */
???
Flash: 0 kB
This message is saying that u-boot was unable to detect the flash chip itself. The easiest way to get you flash working:
- add flash id in include/flash.h (check your flash datasheet)
NO!!!! Use the CFI driver instead!!!
- based on board/../flash.c get it working (probably you will need only
sector organization, also a datasheet material)
NO!!!! Do not add custom drivers unless *really*, I mean REALLY necessary.
Best regards,
Wolfgang Denk