📄 taihu.h
字号:
/* * (C) Copyright 2000-2005 * Wolfgang Denk, DENX Software Engineering, wd@denx.de. * * (C) Copyright 2005-2007 * Beijing UD Technology Co., Ltd., taihusupport@amcc.com * * See file CREDITS for list of people who contributed to this * project. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of * the License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, * MA 02111-1307 USA */#ifndef __CONFIG_H#define __CONFIG_H#define CONFIG_405EP 1 /* this is a PPC405 CPU */#define CONFIG_4xx 1 /* member of PPC4xx family */#define CONFIG_TAIHU 1 /* on a taihu board */#define CONFIG_BOARD_EARLY_INIT_F 1 /* call board_early_init_f */#define CONFIG_SYS_CLK_FREQ 33000000 /* external frequency to pll */#define CONFIG_NO_SERIAL_EEPROM/*----------------------------------------------------------------------------*/#ifdef CONFIG_NO_SERIAL_EEPROM/*!-------------------------------------------------------------------------------! PLL settings for 333MHz CPU, 111MHz PLB/SDRAM, 55MHz EBC, 33MHz PCI,! assuming a 33MHz input clock to the 405EP from the C9531.!-------------------------------------------------------------------------------*/#define PLLMR0_333_111_55_37 (PLL_CPUDIV_1 | PLL_PLBDIV_3 | \ PLL_OPBDIV_2 | PLL_EXTBUSDIV_2 | \ PLL_MALDIV_1 | PLL_PCIDIV_3)#define PLLMR1_333_111_55_37 (PLL_FBKDIV_10 | \ PLL_FWDDIVA_3 | PLL_FWDDIVB_3 | \ PLL_TUNE_15_M_40 | PLL_TUNE_VCO_HI)#define PLLMR0_333_111_55_111 (PLL_CPUDIV_1 | PLL_PLBDIV_3 | \ PLL_OPBDIV_2 | PLL_EXTBUSDIV_2 | \ PLL_MALDIV_1 | PLL_PCIDIV_1)#define PLLMR1_333_111_55_111 (PLL_FBKDIV_10 | \ PLL_FWDDIVA_3 | PLL_FWDDIVB_3 | \ PLL_TUNE_15_M_40 | PLL_TUNE_VCO_HI)#define PLLMR0_DEFAULT PLLMR0_333_111_55_37#define PLLMR1_DEFAULT PLLMR1_333_111_55_37#define PLLMR0_DEFAULT_PCI66 PLLMR0_333_111_55_111#define PLLMR1_DEFAULT_PCI66 PLLMR1_333_111_55_111#endif/*----------------------------------------------------------------------------*/#define CFG_ENV_IS_IN_FLASH 1 /* use FLASH for environment vars */#define CONFIG_ENV_OVERWRITE 1#define CONFIG_PREBOOT "echo;" \ "echo Type \"run flash_nfs\" to mount root filesystem over NFS;" \ "echo"#undef CONFIG_BOOTARGS#define CONFIG_EXTRA_ENV_SETTINGS \ "bootfile=/tftpboot/taihu/uImage\0" \ "rootpath=/opt/eldk/ppc_4xx\0" \ "netdev=eth0\0" \ "nfsargs=setenv bootargs root=/dev/nfs rw " \ "nfsroot=${serverip}:${rootpath}\0" \ "ramargs=setenv bootargs root=/dev/ram rw\0" \ "addip=setenv bootargs ${bootargs} " \ "ip=${ipaddr}:${serverip}:${gatewayip}:${netmask}" \ ":${hostname}:${netdev}:off panic=1\0" \ "addtty=setenv bootargs ${bootargs} console=ttyS0,${baudrate}\0"\ "flash_nfs=run nfsargs addip addtty;" \ "bootm ${kernel_addr}\0" \ "flash_self=run ramargs addip addtty;" \ "bootm ${kernel_addr} ${ramdisk_addr}\0" \ "net_nfs=tftp 200000 ${bootfile};run nfsargs addip addtty;" \ "bootm\0" \ "kernel_addr=FC000000\0" \ "ramdisk_addr=FC180000\0" \ "load=tftp 200000 /tftpboot/taihu/u-boot.bin\0" \ "update=protect off FFFC0000 FFFFFFFF;era FFFC0000 FFFFFFFF;" \ "cp.b 200000 FFFC0000 40000\0" \ "upd=run load;run update\0" \ ""#define CONFIG_BOOTCOMMAND "run flash_self"#if 0#define CONFIG_BOOTDELAY -1 /* autoboot disabled */#else#define CONFIG_BOOTDELAY 5 /* autoboot after 5 seconds */#endif#define CONFIG_LOADS_ECHO 1 /* echo on for serial download */#define CFG_LOADS_BAUD_CHANGE 1 /* allow baudrate change */#define CONFIG_MII 1 /* MII PHY management */#define CONFIG_PHY_ADDR 0x14 /* PHY address */#define CONFIG_HAS_ETH1#define CONFIG_PHY1_ADDR 0x10 /* EMAC1 PHY address */#define CONFIG_NET_MULTI 1#define CFG_RX_ETH_BUFFER 16 /* Number of ethernet rx buffers & descriptors */#define CONFIG_PHY_RESET 1/* * BOOTP options */#define CONFIG_BOOTP_BOOTFILESIZE#define CONFIG_BOOTP_BOOTPATH#define CONFIG_BOOTP_GATEWAY#define CONFIG_BOOTP_HOSTNAME/* * Command line configuration. */#include <config_cmd_default.h>#define CONFIG_CMD_ASKENV#define CONFIG_CMD_CACHE#define CONFIG_CMD_DHCP#define CONFIG_CMD_EEPROM#define CONFIG_CMD_ELF#define CONFIG_CMD_I2C#define CONFIG_CMD_IRQ#define CONFIG_CMD_MII#define CONFIG_CMD_NET#define CONFIG_CMD_PCI#define CONFIG_CMD_PING#define CONFIG_CMD_REGINFO#define CONFIG_CMD_SDRAM#define CONFIG_CMD_SPI#undef CONFIG_WATCHDOG /* watchdog disabled */#undef CONFIG_SPD_EEPROM /* use SPD EEPROM for setup */#define CFG_SDRAM_SIZE_PER_BANK 0x04000000 /* 64MB */#define CFG_SDRAM_BANKS 2/* * SDRAM configuration (please see cpu/ppc/sdram.[ch]) */#define CONFIG_SDRAM_BANK0 1 /* init onboard SDRAM bank 0 */#define CONFIG_SDRAM_BANK1 1 /* init onboard SDRAM bank 1 *//* SDRAM timings used in datasheet */#define CFG_SDRAM_CL 3 /* CAS latency */#define CFG_SDRAM_tRP 20 /* PRECHARGE command period */#define CFG_SDRAM_tRC 66 /* ACTIVE-to-ACTIVE command period */#define CFG_SDRAM_tRCD 20 /* ACTIVE-to-READ delay */#define CFG_SDRAM_tRFC 66 /* Auto refresh period *//* * Miscellaneous configurable options */#define CFG_LONGHELP /* undef to save memory */#define CFG_PROMPT "=> " /* Monitor Command Prompt */#if defined(CONFIG_CMD_KGDB)#define CFG_CBSIZE 1024 /* Console I/O Buffer Size */#else#define CFG_CBSIZE 256 /* Console I/O Buffer Size */#endif#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 0x0400000 /* memtest works on */#define CFG_MEMTEST_END 0x0C00000 /* 4 ... 12 MB in DRAM *//* * If CFG_EXT_SERIAL_CLOCK, then the UART divisor is 1. * If CFG_405_UART_ERRATA_59, then UART divisor is 31. * Otherwise, UART divisor is determined by CPU Clock and CFG_BASE_BAUD value. * The Linux BASE_BAUD define should match this configuration. * baseBaud = cpuClock/(uartDivisor*16) * If CFG_405_UART_ERRATA_59 and 200MHz CPU clock, * set Linux BASE_BAUD to 403200. */#undef CONFIG_SERIAL_SOFTWARE_FIFO#undef CFG_EXT_SERIAL_CLOCK /* external serial clock */#undef CFG_405_UART_ERRATA_59 /* 405GP/CR Rev. D silicon */#define CFG_BASE_BAUD 691200#define CONFIG_BAUDRATE 115200#define CONFIG_UART1_CONSOLE 1/* The following table includes the supported baudrates */#define CFG_BAUDRATE_TABLE \ {300, 600, 1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200, 230400}#define CFG_LOAD_ADDR 0x100000 /* default load address */#define CFG_EXTBDINFO 1 /* To use extended board_into (bd_t) */#define CFG_HZ 1000 /* decrementer freq: 1 ms ticks */#define CONFIG_AUTO_COMPLETE 1 /* add autocompletion support */#define CONFIG_LOOPW 1 /* enable loopw command */#define CONFIG_ZERO_BOOTDELAY_CHECK /* check for keypress on bootdelay==0 */#define CONFIG_VERSION_VARIABLE 1 /* include version env variable *//*----------------------------------------------------------------------- * I2C stuff *----------------------------------------------------------------------- */#define CONFIG_HARD_I2C 1 /* I2C with hardware support */#undef CONFIG_SOFT_I2C /* I2C bit-banged */#define CFG_I2C_SPEED 400000 /* I2C speed and slave address */#define CFG_I2C_SLAVE 0x7F#define CFG_I2C_NOPROBES { 0x69 } /* avoid iprobe hangup (why?) */#define CFG_EEPROM_PAGE_WRITE_DELAY_MS 6 /* 24C02 requires 5ms delay */#define CFG_I2C_EEPROM_ADDR 0x50 /* I2C boot EEPROM (24C02W) */#define CFG_I2C_EEPROM_ADDR_LEN 1 /* Bytes of address */#define CONFIG_SOFT_SPI#define SPI_SCL spi_scl#define SPI_SDA spi_sda#define SPI_READ spi_read()#define SPI_DELAY udelay(2)#ifndef __ASSEMBLY__void spi_scl(int);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -