QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 841|回复: 0

关于在SA1110上使用u-boot引导, 请大侠指教!!

[复制链接]
发表于 2004-12-29 01:06:32 | 显示全部楼层 |阅读模式
我用了两片Intel 28F640J3A (8MB 128K/sector) 接在SA1110上,
使用Jtag-0.5.1识别出了flash, 可以顺利的将u-boot.bin写入 flash.
在u-boot 中我选择了参考板为 dnp1110 ,为了打通串口,暂且不考虑SDRAM 的设置,
在include/configs/dnp1110.h中我这样配置:
---------------------------------------------------------------

#ifndef __CONFIG_H
#define __CONFIG_H

/*
* If we are developing, we might want to start armboot from ram
* so we MUST NOT initialize critical regs like mem-timing ...
*/
#define CONFIG_INIT_CRITICAL                /* undef for developing */
#undef CONFIG_INIT_CRITICAL                /* undef for developing */

/*
* High Level Configuration Options
* (easy to change)
*/
#define CONFIG_SA1110                1        /* This is an SA1110 CPU        */
#define CONFIG_DNP1110                1        /* on an DNP/1110 Board      */

#undef CONFIG_USE_IRQ                        /* we don't need IRQ/FIQ stuff */

/*
* Size of malloc() pool
*/
#define CFG_MALLOC_LEN                (CFG_ENV_SIZE + 128*1024)
#define CFG_GBL_DATA_SIZE        128        /* size in bytes reserved for initial data */

/*
* Hardware drivers
*/
#define CONFIG_DRIVER_SMC91111
#define CONFIG_SMC91111_BASE 0x20000300


/*
* select serial console configuration
*/
#define CONFIG_SERIAL1          1        /* we use SERIAL 1 */

/* allow to overwrite serial and ethaddr */
#define CONFIG_ENV_OVERWRITE

#define CONFIG_BAUDRATE                115200

#define CONFIG_COMMANDS                (CONFIG_CMD_DFL)

/* this must be included AFTER the definition of CONFIG_COMMANDS (if any) */
#include <cmd_confdefs.h>

#define CONFIG_BOOTDELAY        3
#define CONFIG_BOOTARGS            "root=ramfs devfs=mount console=ttySA0,115200"
#define CONFIG_ETHADDR                02:80:ad:20:31:b8
#define CONFIG_NETMASK          255.255.0.0
#define CONFIG_IPADDR                172.22.2.23
#define CONFIG_SERVERIP                172.22.2.22
#define CONFIG_BOOTFILE                "dnp1110"
#define CONFIG_BOOTCOMMAND        "tftp; bootm"

#if (CONFIG_COMMANDS & CFG_CMD_KGDB)
#define CONFIG_KGDB_BAUDRATE        230400                /* speed to run kgdb serial port */
#define CONFIG_KGDB_SER_INDEX        2                /* which serial port to use */
#endif

/*
* Miscellaneous configurable options
*/
#define        CFG_LONGHELP                                /* undef to save memory                */
#define        CFG_PROMPT                "DNP1110 # "        /* Monitor Command Prompt        */
#define        CFG_CBSIZE                256                /* Console I/O Buffer Size        */
#define        CFG_PBSIZE (CFG_CBSIZE+sizeof(CFG_PROMPT)+16) /* Print Buffer Size */
#define        CFG_MAXARGS                16                /* max number of command args        */
#define CFG_BARGSIZE                CFG_CBSIZE        /* Boot Argument Buffer Size        */

#define CFG_MEMTEST_START        0xc0400000        /* memtest works on        */
#define CFG_MEMTEST_END                0xc0800000        /* 4 ... 8 MB in DRAM        */

#undef  CFG_CLKS_IN_HZ                /* everything, incl board info, in Hz */

#define        CFG_LOAD_ADDR                0xc0200000        /* default load address        */

#define        CFG_HZ                        3686400                /* incrementer freq: 3.6864 MHz */
#define CFG_CPUSPEED                0x0b                /* set core clock to 220 MHz */

                                                /* valid baudrates */
#define CFG_BAUDRATE_TABLE        { 9600, 19200, 38400, 57600, 115200 }

/*-----------------------------------------------------------------------
* Stack sizes
*
* The stack sizes are set up in start.S using the settings below
*/
#define CONFIG_STACKSIZE        (128*1024)        /* regular stack */
#ifdef CONFIG_USE_IRQ
#define CONFIG_STACKSIZE_IRQ        (4*1024)        /* IRQ stack */
#define CONFIG_STACKSIZE_FIQ        (4*1024)        /* FIQ stack */
#endif

/*-----------------------------------------------------------------------
* Physical Memory Map
*/
#define CONFIG_NR_DRAM_BANKS        1           /* we have 1 banks of DRAM */
#define PHYS_SDRAM_1                0xc0000000 /* SDRAM Bank #1 */
#define PHYS_SDRAM_1_SIZE        0x02000000 /* 32 MB */


#define PHYS_FLASH_1                0x00000000 /* Flash Bank #1 */
#define PHYS_FLASH_SIZE                0x00800000 /* 8 MB */
#define PHYS_FLASH_BANK_SIZE    0x00800000 /* 16 MB Banks */
#define PHYS_FLASH_SECT_SIZE    0x00010000 /* 128 KB sectors (x2) */

#define CFG_FLASH_BASE                PHYS_FLASH_1

/*-----------------------------------------------------------------------
* FLASH and environment organization
*/
#define CFG_MAX_FLASH_BANKS        2                /* max number of memory banks                */
#define CFG_MAX_FLASH_SECT        64                /* max number of sectors on one chip        */

/* timeout values are in ticks */
#define CFG_FLASH_ERASE_TOUT        (2*CFG_HZ) /* Timeout for Flash Erase */
#define CFG_FLASH_WRITE_TOUT        (2*CFG_HZ) /* Timeout for Flash Write */

#define        CFG_ENV_IS_IN_FLASH        2
#define CFG_ENV_ADDR                        (PHYS_FLASH_1 + 0xF80000)        /* Addr of Environment Sector        */
#define CFG_ENV_SIZE                        0x10000                                                /* Total Size of Environment Sector        */

#endif        /* __CONFIG_H */
---------------------------------------------------------------


其中有以下参数不会计算:
#define PHYS_FLASH_SIZE                0x00800000 /* 8 MB */
#define PHYS_FLASH_BANK_SIZE    0x00800000 /* 16 MB Banks */
#define PHYS_FLASH_SECT_SIZE    0x00010000 /* 128 KB sectors (x2) */

请大侠指教,
因为我看过dnp1110的设置,总觉得这里的数值的含义不太明白!

还有请帮忙看看其余的参数,谢谢!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-5 18:32 , Processed in 0.041096 second(s), 15 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表