Chinaunix首页 | 论坛 | 博客
  • 博客访问: 49844
  • 博文数量: 10
  • 博客积分: 1400
  • 博客等级: 上尉
  • 技术积分: 140
  • 用 户 组: 普通用户
  • 注册时间: 2008-10-19 21:29
文章分类

全部博文(10)

文章存档

2010年(1)

2009年(5)

2008年(4)

我的朋友

分类: LINUX

2009-01-17 11:26:36

- Monitor 功能:
        可以用#include "config_cmd_all.h"包含所有Monitor命令,并用#undef去掉不需要的命令。也可以使用"config_cmd_default.h",并#define需要的命令。

        下列命令里,不带*号的是默认的命令配置

        CONFIG_CMD_ASKENV    * ask for env variable
        CONFIG_CMD_AUTOSCRIPT      支持自动脚本
        CONFIG_CMD_BDI          bdinfo
        CONFIG_CMD_BEDBUG    * 包含 BedBug 调试器
        CONFIG_CMD_BMP        * BMP 支持
        CONFIG_CMD_BSP        * 单板相关命令
        CONFIG_CMD_BOOTD      bootd
        CONFIG_CMD_CACHE    * icache, dcache
        CONFIG_CMD_CONSOLE      coninfo
        CONFIG_CMD_DATE        * 支持RTC, date/time...
        CONFIG_CMD_DHCP        * 支持DHCP
        CONFIG_CMD_DIAG        * 诊断
        CONFIG_CMD_DOC        * Disk-On-Chip Support
        CONFIG_CMD_DTT        * Digital Therm and Thermostat
        CONFIG_CMD_ECHO          echo arguments
        CONFIG_CMD_EEPROM    * 支持EEPROM读写
        CONFIG_CMD_ELF        * bootelf, bootvx
        CONFIG_CMD_ENV          saveenv
        CONFIG_CMD_FDC        * 支持软驱
        CONFIG_CMD_FAT        * 支持FAT分区
        CONFIG_CMD_FDOS        * 支持Dos磁盘
        CONFIG_CMD_FLASH      flinfo, erase, protect
        CONFIG_CMD_FPGA          支持FPGA设备初始化
        CONFIG_CMD_HWFLOW    * RTS/CTS 硬件流控
        CONFIG_CMD_I2C        * I2C 串行总线支持
        CONFIG_CMD_IDE        * IDE 硬盘支持
        CONFIG_CMD_IMI          iminfo
        CONFIG_CMD_IMLS          列出所有找到的映像
        CONFIG_CMD_IMMAP    * 支持IMMR dump
        CONFIG_CMD_IRQ        * irqinfo
        CONFIG_CMD_ITEST      Integer/string test of 2 values
        CONFIG_CMD_JFFS2    * 支持JFFS2文件系统
        CONFIG_CMD_KGDB        * kgdb
        CONFIG_CMD_LOADB      loadb
        CONFIG_CMD_LOADS      loads
        CONFIG_CMD_MEMORY      md, mm, nm, mw, cp, cmp, crc, base,
                      loop, loopw, mtest
        CONFIG_CMD_MISC          Misc functions like sleep etc
        CONFIG_CMD_MMC        * MMC memory mapped support
        CONFIG_CMD_MII        * MII实用命令
        CONFIG_CMD_NAND        * NAND支持
        CONFIG_CMD_NET          bootp, tftpboot, rarpboot
        CONFIG_CMD_PCI        * pciinfo
        CONFIG_CMD_PCMCIA        * PCMCIA支持
        CONFIG_CMD_PING        * 向网络主机发送 ICMP ECHO_REQUEST
        CONFIG_CMD_PORTIO    * 端口I/O
        CONFIG_CMD_REGINFO    * 寄存器dump
        CONFIG_CMD_RUN          run command in env variable
        CONFIG_CMD_SAVES    * save S record dump
        CONFIG_CMD_SCSI        * SCSI 支持
        CONFIG_CMD_SDRAM    * 打印 SDRAM 配置信息 (需要CONFIG_CMD_I2C)
        CONFIG_CMD_SETGETDCR      支持访问DCR寄存器 (仅用于4xx)
        CONFIG_CMD_SPI        * 支持SPI串行总线
        CONFIG_CMD_USB        * 支持USB
        CONFIG_CMD_VFD        * 支持VFD (TRAB)
        CONFIG_CMD_CDP        * 支持Cisco Discover Protocol
        CONFIG_CMD_FSL        * 支持Microblaze FSL


        例如: 如果你需要除了网络支持外的所有功能,可以配置如下:

        #include "config_cmd_all.h"
        #undef CONFIG_CMD_NET

    其它命令:
        fdt (平坦设备树) 命令: CONFIG_OF_LIBFDT

    注意: 如果你不清楚,请不要开启"icache"和"dcache"命令(配置参数CONFIG_CMD_CACHE)。在8xx或8260上无法使能数据cache(访问IMMR区间必须不过cache),在其它使用数据cache作为初期栈和数据保存的系统里也不能禁用数据cache。

        XXX - 该列表需要更新!

- 看门狗:
        CONFIG_WATCHDOG
        如果定义该变量,则使能看门狗支持。必须有平台特定的看门狗实现。对8xx和8260 CPU,SIU看门狗功能在SYPCR寄存器中使能。

- U-Boot版本:
        CONFIG_VERSION_VARIABLE
        如果定义该宏,U-Boot创建一个"ver"环境变量,用于显示"version"命令所打印出的U-Boot版本。本变量是只读的。

- 实时时钟:

        如果选择了 CONFIG_CMD_DATE,需要同时选择RTC的类型。使用下列定义中的一个:

        CONFIG_RTC_MPC8xx    - 使用MPC8xx的内部RTC
        CONFIG_RTC_PCF8563    - 使用Philips PCF8563 RTC
        CONFIG_RTC_MC13783    - 使用MC13783 RTC
        CONFIG_RTC_MC146818    - 使用MC146818 RTC
        CONFIG_RTC_DS1307    - 使用Maxim, Inc. DS1307 RTC
        CONFIG_RTC_DS1337    - 使用Maxim, Inc. DS1337 RTC
        CONFIG_RTC_DS1338    - 使用Maxim, Inc. DS1338 RTC
        CONFIG_RTC_DS164x    - 使用Dallas DS164x RTC
        CONFIG_RTC_ISL1208    - 使用Intersil ISL1208 RTC
        CONFIG_RTC_MAX6900    - 使用Maxim, Inc. MAX6900 RTC
        CFG_RTC_DS1337_NOOSC    - 关闭DS1337的OSC输出

        注意:如果RTC使用I2C,则需要配置I2C接口。参加见下面的I2C支持。

- 时间戳支持:

        如果定义CONFIG_TIMESTAMP, 与映像相关的命令如bootm或iminfo会打印给定映像的时间戳(日期和时间)。如果定义了CONFIG_CMD_DATE,该选项自动使能。

- 分区支持:
        CONFIG_MAC_PARTITION,  CONFIG_DOS_PARTITION, CONFIG_ISO_PARTITION

        如果使能了IDE或SCSI支持(CONFIG_CMD_IDE 或者    CONFIG_CMD_SCSI),你必须至少配置一种分区类型的支持

- IDE 复位例程:
        CONFIG_IDE_RESET_ROUTINE - 在几个单板的配置文件中定义,但并未使用!

        CONFIG_IDE_RESET - 如果定义了,会调用下面的函数复位IDE:
            ide_set_reset(int reset)
        这个函数必须在单板相关文件里定义。

- ATAPI 支持:
        CONFIG_ATAPI

        定义该宏来支持ATAPI。

- LBA48 支持
        CONFIG_LBA48

        定义该宏可支持大于137GB的磁盘。需要检查CFG_64BIT_LBA, CFG_64BIT_VSPRINTF 和 CFG_64BIT_STRTOUL选项。如果不定义它们,LBA48使用32位变量,只能支持到最大2.1TB的磁盘。

        CFG_64BIT_LBA:
            如果使能,则IDE子系统使用64位的扇区地址,默认是32位。

- SCSI 支持:
        当前只支持 SYM53C8XX SCSI 控制器; 定义 CONFIG_SCSI_SYM53C8XX 来使能。

        可以调整CFG_SCSI_MAX_LUN [8], CFG_SCSI_MAX_SCSI_ID [7] 及 CFG_SCSI_MAX_DEVICE [CFG_SCSI_MAX_SCSI_ID * CFG_SCSI_MAX_LUN] 定义最大LUN, SCSI ID及目标的最大设备数。
        定义CFG_SCSI_SYM53C8XX_CCF 以修正clock timing(时钟时序?) (80Mhz)

- 网络支持 (PCI设备):
        CONFIG_E1000
        支持Intel 8254x GE芯片。

        CONFIG_E1000_FALLBACK_MAC
        量产后,在EEPROM为空时的默认MAC地址。

        CONFIG_EEPRO100
        支持Intel 82557/82559/82559ER芯片。还可以定义CONFIG_EEPRO100_SROM_WRITE使能首次初始化时的EEPROM写流程.

        CONFIG_TULIP
        支持 Digital 2114x 芯片。
        还可以定义 CONFIG_TULIP_SELECT_MEDIA 支持单板特定的modem芯片初始化(KS8761/QS6611).

        CONFIG_NATSEMI
        支持 National dp83815 芯片.

        CONFIG_NS8382X
        支持 National dp8382[01] gigabit 芯片.

- 网络支持 (其它设备):

        CONFIG_DRIVER_LAN91C96
        支持 SMSC 的 LAN91C96 芯片.

            CONFIG_LAN91C96_BASE
            将该宏定义为LAN91C96 I/O空间的物理地址。

            CONFIG_LAN91C96_USE_32_BIT
            定义该宏以使能32位寻址

        CONFIG_DRIVER_SMC91111
        支持 SMSC 的 LAN91C111 芯片

            CONFIG_SMC91111_BASE
            定义设备的物理地址 (I/O 空间)

            CONFIG_SMC_USE_32_BIT
            如果数据总线是32位的,定义此宏

            CONFIG_SMC_USE_IOFUNCS
            如果定义则使用I/O函数,否则使用I/O宏 (有些硬件不能用宏)

        CONFIG_DRIVER_SMC911X
        支持 SMSC 的 LAN911x 和 LAN921x 芯片

            CONFIG_DRIVER_SMC911X_BASE
            定义设备的物理地址 (I/O 空间)

            CONFIG_DRIVER_SMC911X_32_BIT
            如果数据总线为32位,定义此宏

            CONFIG_DRIVER_SMC911X_16_BIT
            如果数据总线为16位,定义此宏。如果处理器自动将1个32位数据转化为2个16位数据,可以试着用CONFIG_DRIVER_SMC911X_32_BIT.

- USB 支持:
        目前只支持UHCI host controller (PIP405, MIP405, MPC5200); 定义 CONFIG_USB_UHCI 来使能。
        定义 CONFIG_USB_KEYBOARD 使能USB键盘支持,定义 CONFIG_USB_STORAGE 使能USB存储设备。
        注意: 受支持的是USB键盘和USB软驱 (TEAC FD-05PUB).
        MPC5200 USB 需要附加的定义:
            CONFIG_USB_CLOCK
                对 528 MHz 时钟: 0x0001bbbb
            CONFIG_USB_CONFIG
                对差分驱动器: 0x00001000
                对单边驱动器: 0x00005000
            CFG_USB_EVENT_POLL
                可以定义此宏来允许中断查询,否则使用异常中断。

- USB 设备:
        如果希望使用USB终端,定义下面的宏。
        在串口终端重建固件后,使用命令"setenv stdin usbtty; setenv stdout usbtty" 并接上USB线缆. "dmesg"命令应该会打印它找到一个新设备. 可以将usbtty环境变量设为gserial或者cdc_acm。前者让设备对USB host表现为Linux gserial设备,后者让设备表现为通用设备类抽象控制模型(Common Device Class Abstract Control Model)的串行设备。
        如果你选择usbtty = gserial,应该能通过下面的命令枚举一个Linux host
        # modprobe usbserial vendor=0xVendorID product=0xProductID
        如果你选择 cdc_acm, 将环境变量usbtty设为cdc_acm就行了. 你还可以在单板配置头文件中定义下面的宏。

            CONFIG_USB_DEVICE
            定义该宏来建立一个UDC设备

            CONFIG_USB_TTY
            如果定义该宏,则可以使用一个tty类型的设备与UDC设备通信

            CFG_CONSOLE_IS_IN_ENV
            如果你想将标准输入、标准输出、标准错误设为usbtty,定义该宏。

            mpc8xx:
                CFG_USB_EXTC_CLK 0xBLAH
                从外部时钟"blah"导出USB时钟。
                - CFG_USB_EXTC_CLK 0x02

                CFG_USB_BRG_CLK 0xBLAH
                从brgclk导出USB时钟
                - CFG_USB_BRG_CLK 0x04

        如果你有一个USB-IF分配的VendorID,你可以将自己的vendor值定义在BoardName.h,或者直接定义在usbd_vendor_info.h. 如果你不定义 CONFIG_USBD_MANUFACTURER, CONFIG_USBD_PRODUCT_NAME, CONFIG_USBD_VENDORID 和 CONFIG_USBD_PRODUCTID, U-Boot则默认对target host表现为Linux设备。

            CONFIG_USBD_MANUFACTURER
            定义公司的名称
            - CONFIG_USBD_MANUFACTURER "my company"

            CONFIG_USBD_PRODUCT_NAME
            定义设备的名称
            - CONFIG_USBD_PRODUCT_NAME "acme usb device"

            CONFIG_USBD_VENDORID
            将此宏定义为你从USB-IF(Implementors Forum)分配的Vendor ID。为避免污染USB名字空间,要求该值必须是唯一的
            - CONFIG_USBD_VENDORID 0xFFFF

            CONFIG_USBD_PRODUCTID
            定义设备的Product ID
            - CONFIG_USBD_PRODUCTID 0xFFFF


- MMC 支持:
        U-Boot支持Intel PXA上的MMC控制器,定义CONFIG_MMC以使能支持。用与flash类似的方式将MMC设备映射到物理内存,即可在boot提示符下访问设备。CONFIG_CMD_MMC使能命令行。MMC驱动支持FAT文件系统,可以通过CONFIG_CMD_FAT开启.

- 日志Flash文件系统支持:
        CONFIG_JFFS2_NAND, CONFIG_JFFS2_NAND_OFF, CONFIG_JFFS2_NAND_SIZE,
        CONFIG_JFFS2_NAND_DEV
        用于NAND设备上的默认分区的参数

        CFG_JFFS2_FIRST_SECTOR,
        CFG_JFFS2_FIRST_BANK, CFG_JFFS2_NUM_BANKS
        用于NOR设备上的默认分区的参数

        CFG_JFFS_CUSTOM_PART
        定义此宏来创建一个私有分区,你必须提供一个函数: struct part_info* jffs2_part_info(int part_num)

        如果只定义一个JFFS2分区,也可以定义下面的宏来禁用chpart命令。
        #define CFG_JFFS_SINGLE_PART    1
        在没有自定义分区的时候,这个是默认行为。
阅读(2435) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~