marvell 88f6282 工程包制作
一、uboot的编译
下载uboot 1.1.4,并用marvell提供的补丁覆盖
根据板子的uboot启动信息,判断出编译参数:
#    
         __  __                      _ _     
        |  \/  | __ _ _ ____   _____| | |     
        | |\/| |/ _` | '__\ \ / / _ \ | |     
        | |  | | (_| | |   \ V /  __/ | |     
        |_|  |_|\__,_|_|    \_/ \___|_|_|     
_   _     ____              _     
| | | |   | __ )  ___   ___ | |_     
| | | |___|  _ \ / _ \ / _ \| __|     
| |_| |___| |_) | (_) | (_) | |_     
\___/    |____/ \___/ \___/ \__|     
** MARVELL BOARD: RD-88F6282A LE 
U-Boot 1.1.4 (Jul 8 2010 - 14:33:12) Marvell version: 3.5.6
U-Boot code: 00600000 -> 0067FFF0 BSS: -> 006CFB00
Soc: 88F6282 A0CPU running @ 1600Mhz L2 running @ 533Mhz    
SysClock = 533Mhz , TClock = 200Mhz 
DRAM (DDR3) CAS Latency = 7 tRP = 8 tRAS = 20 tRCD=8    
DRAM CS[0] base 0x00000000   size 256MB     
DRAM CS[1] base 0x10000000   size 256MB     
DRAM Total size 512MB  16bit width     
Addresses 8M - 0M are saved for the U-Boot usage.     
Mem malloc Initialization (8M - 7M): Done     
NAND:512 MB     
Flash:  0 kB 
CPU : Marvell Feroceon (Rev 1)
Streaming disabled    
Write allocate disabled 
Module 0 is RGMII    
Module 1 is TDM 
USB 0: host mode    
PEX 0: interface detected no Link.     
PEX 1: interface detected no Link.     
Net:   egiga0 [PRIME], egiga1     
Hit any key to stop autoboot:  0     
Marvell>> 
make rd88f6282a_config SPIBOOT=1 DDR3=1
make 发现错误
/bin/sh: -c: line 0: 在未预料的“(”附近出现语法错误
/bin/sh: -c: line 0: `arm-mv5sft-linux-gnueabi-gcc -M \044(MV_IMAGE_FLAGS) \044(MV_FLAGS) -g
。。。
修改include/config.mk
CPPFLAGS += \044(MV_IMAGE_FLAGS) \044(MV_FLAGS)
把它改为CPPFLAGS += $(MV_IMAGE_FLAGS) $(MV_FLAGS) 就可以了
make
。。。。
arm-mv5sft-linux-gnueabi-gcc -DMV_SEC_256K -DMV_BOOTSIZE_16M -DMV_LARGE_PAGE -DMV88F6282 -DRD_88F6282A -DMV_BOOTROM -DMV_MMC -DMV_USB -DCONFIG_CMD_USB -DMV_SPI -DMV_SPI_BOOT -g  -Os   -fno-strict-aliasing  -fno-common -ffixed-r8 -msoft-float -D__KERNEL__ -DTEXT_BASE=0x00600000 -I/opt/qt-everywhere/marvell/BSP/u-boot-1.1.4/include -fno-builtin -ffreestanding -nostdinc -isystem /opt/qt-everywhere/marvell/SDK/cross/bin/../lib/gcc/arm-mv5sft-linux-gnueabi/4.3.2/include -pipe  -DCONFIG_ARM -D__ARM__ -march=armv5t -g  -Os   -fno-strict-aliasing  -fno-common -ffixed-r8 -msoft-float -D__KERNEL__ -DTEXT_BASE=0x00600000 -I/opt/qt-everywhere/marvell/BSP/u-boot-1.1.4/include -fno-builtin -ffreestanding -nostdinc -isystem /opt/qt-everywhere/marvell/SDK/cross/bin/../lib/gcc/arm-mv5sft-linux-gnueabi/4.3.2/include -pipe  -DCONFIG_ARM -D__ARM__ -march=armv5t -Wall -Wstrict-prototypes -c -o spartan2.o spartan2.c    
arm-mv5sft-linux-gnueabi-gcc -DMV_SEC_256K -DMV_BOOTSIZE_16M -DMV_LARGE_PAGE -DMV88F6282 -DRD_88F6282A -DMV_BOOTROM -DMV_MMC -DMV_USB -DCONFIG_CMD_USB -DMV_SPI -DMV_SPI_BOOT -g  -Os   -fno-strict-aliasing  -fno-common -ffixed-r8 -msoft-float -D__KERNEL__ -DTEXT_BASE=0x00600000 -I/opt/qt-everywhere/marvell/BSP/u-boot-1.1.4/include -fno-builtin -ffreestanding -nostdinc -isystem /opt/qt-everywhere/marvell/SDK/cross/bin/../lib/gcc/arm-mv5sft-linux-gnueabi/4.3.2/include -pipe  -DCONFIG_ARM -D__ARM__ -march=armv5t -g  -Os   -fno-strict-aliasing  -fno-common -ffixed-r8 -msoft-float -D__KERNEL__ -DTEXT_BASE=0x00600000 -I/opt/qt-everywhere/marvell/BSP/u-boot-1.1.4/include -fno-builtin -ffreestanding -nostdinc -isystem /opt/qt-everywhere/marvell/SDK/cross/bin/../lib/gcc/arm-mv5sft-linux-gnueabi/4.3.2/include -pipe  -DCONFIG_ARM -D__ARM__ -march=armv5t -Wall -Wstrict-prototypes -c -o spartan3.o spartan3.c     
arm-mv5sft-linux-gnueabi-gcc -DMV_SEC_256K -DMV_BOOTSIZE_16M -DMV_LARGE_PAGE -DMV88F6282 -DRD_88F6282A -DMV_BOOTROM -DMV_MMC -DMV_USB -DCONFIG_CMD_USB -DMV_SPI -DMV_SPI_BOOT -g  -Os   -fno-strict-aliasing  -fno-common -ffixed-r8 -msoft-float -D__KERNEL__ -DTEXT_BASE=0x00600000 -I/opt/qt-everywhere/marvell/BSP/u-boot-1.1.4/include -fno-builtin -ffreestanding -nostdinc -isystem /opt/qt-everywhere/marvell/SDK/cross/bin/../lib/gcc/arm-mv5sft-linux-gnueabi/4.3.2/include -pipe  -DCONFIG_ARM -D__ARM__ -march=armv5t -g  -Os   -fno-strict-aliasing  -fno-common -ffixed-r8 -msoft-float -D__KERNEL__ -DTEXT_BASE=0x00600000 -I/opt/qt-everywhere/marvell/BSP/u-boot-1.1.4/include -fno-builtin -ffreestanding -nostdinc -isystem /opt/qt-everywhere/marvell/SDK/cross/bin/../lib/gcc/arm-mv5sft-linux-gnueabi/4.3.2/include -pipe  -DCONFIG_ARM -D__ARM__ -march=armv5t -Wall -Wstrict-prototypes -c -o usb.o usb.c     
usb.c:71: warning: function declaration isn't a prototype     
usb.c: In function 'usb_stop':     
usb.c:153: warning: unused variable 'i'     
usb.c: In function 'usb_new_device':     
usb.c:842: warning: case label value exceeds maximum value for type     
arm-mv5sft-linux-gnueabi-gcc -DMV_SEC_256K -DMV_BOOTSIZE_16M -DMV_LARGE_PAGE -DMV88F6282 -DRD_88F6282A -DMV_BOOTROM -DMV_MMC -DMV_USB -DCONFIG_CMD_USB -DMV_SPI -DMV_SPI_BOOT -g  -Os   -fno-strict-aliasing  -fno-common -ffixed-r8 -msoft-float -D__KERNEL__ -DTEXT_BASE=0x00600000 -I/opt/qt-everywhere/marvell/BSP/u-boot-1.1.4/include -fno-builtin -ffreestanding -nostdinc -isystem /opt/qt-everywhere/marvell/SDK/cross/bin/../lib/gcc/arm-mv5sft-linux-gnueabi/4.3.2/include -pipe  -DCONFIG_ARM -D__ARM__ -march=armv5t -g  -Os   -fno-strict-aliasing  -fno-common -ffixed-r8 -msoft-float -D__KERNEL__ -DTEXT_BASE=0x00600000 -I/opt/qt-everywhere/marvell/BSP/u-boot-1.1.4/include -fno-builtin -ffreestanding -nostdinc -isystem /opt/qt-everywhere/marvell/SDK/cross/bin/../lib/gcc/arm-mv5sft-linux-gnueabi/4.3.2/include -pipe  -DCONFIG_ARM -D__ARM__ -march=armv5t -Wall -Wstrict-prototypes -c -o usb_kbd.o usb_kbd.c     
arm-mv5sft-linux-gnueabi-gcc -DMV_SEC_256K -DMV_BOOTSIZE_16M -DMV_LARGE_PAGE -DMV88F6282 -DRD_88F6282A -DMV_BOOTROM -DMV_MMC -DMV_USB -DCONFIG_CMD_USB -DMV_SPI -DMV_SPI_BOOT -g  -Os   -fno-strict-aliasing  -fno-common -ffixed-r8 -msoft-float -D__KERNEL__ -DTEXT_BASE=0x00600000 -I/opt/qt-everywhere/marvell/BSP/u-boot-1.1.4/include -fno-builtin -ffreestanding -nostdinc -isystem /opt/qt-everywhere/marvell/SDK/cross/bin/../lib/gcc/arm-mv5sft-linux-gnueabi/4.3.2/include -pipe  -DCONFIG_ARM -D__ARM__ -march=armv5t -g  -Os   -fno-strict-aliasing  -fno-common -ffixed-r8 -msoft-float -D__KERNEL__ -DTEXT_BASE=0x00600000 -I/opt/qt-everywhere/marvell/BSP/u-boot-1.1.4/include -fno-builtin -ffreestanding -nostdinc -isystem /opt/qt-everywhere/marvell/SDK/cross/bin/../lib/gcc/arm-mv5sft-linux-gnueabi/4.3.2/include -pipe  -DCONFIG_ARM -D__ARM__ -march=armv5t -Wall -Wstrict-prototypes -c -o usb_storage.o usb_storage.c     
usb_storage.c: In function 'usb_stor_scan':     
usb_storage.c:228: warning: assignment from incompatible pointer type     
arm-mv5sft-linux-gnueabi-gcc -DMV_SEC_256K -DMV_BOOTSIZE_16M -DMV_LARGE_PAGE -DMV88F6282 -DRD_88F6282A -DMV_BOOTROM -DMV_MMC -DMV_USB -DCONFIG_CMD_USB -DMV_SPI -DMV_SPI_BOOT -g  -Os   -fno-strict-aliasing  -fno-common -ffixed-r8 -msoft-float -D__KERNEL__ -DTEXT_BASE=0x00600000 -I/opt/qt-everywhere/marvell/BSP/u-boot-1.1.4/include -fno-builtin -ffreestanding -nostdinc -isystem /opt/qt-everywhere/marvell/SDK/cross/bin/../lib/gcc/arm-mv5sft-linux-gnueabi/4.3.2/include -pipe  -DCONFIG_ARM -D__ARM__ -march=armv5t -g  -Os   -fno-strict-aliasing  -fno-common -ffixed-r8 -msoft-float -D__KERNEL__ -DTEXT_BASE=0x00600000 -I/opt/qt-everywhere/marvell/BSP/u-boot-1.1.4/include -fno-builtin -ffreestanding -nostdinc -isystem /opt/qt-everywhere/marvell/SDK/cross/bin/../lib/gcc/arm-mv5sft-linux-gnueabi/4.3.2/include -pipe  -DCONFIG_ARM -D__ARM__ -march=armv5t -Wall -Wstrict-prototypes -c -o virtex2.o virtex2.c     
arm-mv5sft-linux-gnueabi-gcc -DMV_SEC_256K -DMV_BOOTSIZE_16M -DMV_LARGE_PAGE -DMV88F6282 -DRD_88F6282A -DMV_BOOTROM -DMV_MMC -DMV_USB -DCONFIG_CMD_USB -DMV_SPI -DMV_SPI_BOOT -g  -Os   -fno-strict-aliasing  -fno-common -ffixed-r8 -msoft-float -D__KERNEL__ -DTEXT_BASE=0x00600000 -I/opt/qt-everywhere/marvell/BSP/u-boot-1.1.4/include -fno-builtin -ffreestanding -nostdinc -isystem /opt/qt-everywhere/marvell/SDK/cross/bin/../lib/gcc/arm-mv5sft-linux-gnueabi/4.3.2/include -pipe  -DCONFIG_ARM -D__ARM__ -march=armv5t -g  -Os   -fno-strict-aliasing  -fno-common -ffixed-r8 -msoft-float -D__KERNEL__ -DTEXT_BASE=0x00600000 -I/opt/qt-everywhere/marvell/BSP/u-boot-1.1.4/include -fno-builtin -ffreestanding -nostdinc -isystem /opt/qt-everywhere/marvell/SDK/cross/bin/../lib/gcc/arm-mv5sft-linux-gnueabi/4.3.2/include -pipe  -DCONFIG_ARM -D__ARM__ -march=armv5t -Wall -Wstrict-prototypes -c -o xilinx.o xilinx.c     
arm-mv5sft-linux-gnueabi-ar crv libcommon.a  main.o ACEX1K.o altera.o bedbug.o circbuf.o cmd_ace.o cmd_autoscript.o cmd_bdinfo.o cmd_bedbug.o cmd_bmp.o cmd_boot.o cmd_bootm.o cmd_cache.o cmd_console.o cmd_date.o cmd_dcr.o cmd_diag.o cmd_display.o cmd_doc.o cmd_dtt.o cmd_eeprom.o cmd_elf.o cmd_ext2.o cmd_fat.o cmd_fdc.o cmd_fdos.o cmd_flash.o cmd_fpga.o cmd_i2c.o cmd_ide.o cmd_immap.o cmd_itest.o cmd_jffs2.o cmd_load.o cmd_log.o cmd_mem.o cmd_mii.o cmd_misc.o cmd_mmc.o cmd_nand.o cmd_net.o cmd_nvedit.o cmd_pci.o cmd_pcmcia.o cmd_portio.o cmd_reginfo.o cmd_reiser.o cmd_scsi.o cmd_spi.o cmd_universe.o cmd_usb.o cmd_vfd.o command.o console.o devices.o dlmalloc.o docecc.o environment.o env_common.o env_nand.o env_dataflash.o env_flash.o env_eeprom.o env_nvram.o env_nowhere.o exports.o flash.o fpga.o ft_build.o hush.o kgdb.o lcd.o lists.o lynxkdi.o memsize.o miiphybb.o miiphyutil.o s_record.o serial.o soft_i2c.o soft_spi.o spartan2.o spartan3.o usb.o usb_kbd.o usb_storage.o virtex2.o xilinx.o     
a - main.o     
a - ACEX1K.o     
a - altera.o     
a - bedbug.o     
a - circbuf.o     
a - cmd_ace.o     
a - cmd_autoscript.o     
a - cmd_bdinfo.o     
a - cmd_bedbug.o     
a - cmd_bmp.o     
a - cmd_boot.o     
a - cmd_bootm.o     
a - cmd_cache.o     
a - cmd_console.o     
a - cmd_date.o     
a - cmd_dcr.o     
a - cmd_diag.o     
a - cmd_display.o     
a - cmd_doc.o     
a - cmd_dtt.o     
a - cmd_eeprom.o     
a - cmd_elf.o     
a - cmd_ext2.o     
a - cmd_fat.o     
a - cmd_fdc.o     
a - cmd_fdos.o     
a - cmd_flash.o     
a - cmd_fpga.o     
a - cmd_i2c.o     
a - cmd_ide.o     
a - cmd_immap.o     
a - cmd_itest.o     
a - cmd_jffs2.o     
a - cmd_load.o     
a - cmd_log.o     
a - cmd_mem.o     
a - cmd_mii.o     
a - cmd_misc.o     
a - cmd_mmc.o     
a - cmd_nand.o     
a - cmd_net.o     
a - cmd_nvedit.o     
a - cmd_pci.o     
a - cmd_pcmcia.o     
a - cmd_portio.o     
a - cmd_reginfo.o     
a - cmd_reiser.o     
a - cmd_scsi.o     
a - cmd_spi.o     
a - cmd_universe.o     
a - cmd_usb.o     
a - cmd_vfd.o     
a - command.o     
a - console.o     
a - devices.o     
a - dlmalloc.o     
a - docecc.o     
a - environment.o     
a - env_common.o     
a - env_nand.o     
a - env_dataflash.o     
a - env_flash.o     
a - env_eeprom.o     
a - env_nvram.o     
a - env_nowhere.o     
a - exports.o     
a - flash.o     
a - fpga.o     
a - ft_build.o     
a - hush.o     
a - kgdb.o     
a - lcd.o     
a - lists.o     
a - lynxkdi.o     
a - memsize.o     
a - miiphybb.o     
a - miiphyutil.o     
a - s_record.o     
a - serial.o     
a - soft_i2c.o     
a - soft_spi.o     
a - spartan2.o     
a - spartan3.o     
a - usb.o     
a - usb_kbd.o     
a - usb_storage.o     
a - virtex2.o     
a - xilinx.o     
make[1]:正在离开目录 `/opt/qt-everywhere/marvell/BSP/u-boot-1.1.4/common'     
UNDEF_SYM=`arm-mv5sft-linux-gnueabi-objdump -x lib_generic/libgeneric.a board/mv_feroceon/config_kw/libconfig_kw.a cpu/arm926ejs/libarm926ejs.a lib_arm/libarm.a fs/cramfs/libcramfs.a fs/fat/libfat.a fs/fdos/libfdos.a fs/jffs2/libjffs2.a fs/reiserfs/libreiserfs.a fs/ext2/libext2fs.a net/libnet.a disk/libdisk.a rtc/librtc.a dtt/libdtt.a drivers/libdrivers.a drivers/nand/libnand.a drivers/usb/libusb.a drivers/sk98lin/libsk98lin.a post/libpost.a post/cpu/libcpu.a common/libcommon.a |sed  -n -e 's/.*\(__u_boot_cmd_.*\)/-u\1/p'|sort|uniq`;\     
        arm-mv5sft-linux-gnueabi-ld -Bstatic -T /opt/qt-everywhere/marvell/BSP/u-boot-1.1.4/board/mv_feroceon/config_kw/u-boot.lds -Ttext 0x00600000  $UNDEF_SYM cpu/arm926ejs/start.o \     
            --start-group lib_generic/libgeneric.a board/mv_feroceon/config_kw/libconfig_kw.a cpu/arm926ejs/libarm926ejs.a lib_arm/libarm.a fs/cramfs/libcramfs.a fs/fat/libfat.a fs/fdos/libfdos.a fs/jffs2/libjffs2.a fs/reiserfs/libreiserfs.a fs/ext2/libext2fs.a net/libnet.a disk/libdisk.a rtc/librtc.a dtt/libdtt.a drivers/libdrivers.a drivers/nand/libnand.a drivers/usb/libusb.a drivers/sk98lin/libsk98lin.a post/libpost.a post/cpu/libcpu.a common/libcommon.a --end-group -L /opt/qt-everywhere/marvell/SDK/cross/bin/../lib/gcc/arm-mv5sft-linux-gnueabi/4.3.2 -lgcc \     
            -Map u-boot.map -o u-boot     
arm-mv5sft-linux-gnueabi-objcopy --gap-fill=0xff -O srec u-boot u-boot.srec     
cp -f u-boot.srec u-boot-rd88f6282a.srec     
arm-mv5sft-linux-gnueabi-objcopy --gap-fill=0xff -O binary u-boot u-boot.bin     
cp -f u-boot.bin u-boot-rd88f6282a.bin     
./tools/doimage -T flash -D 0x600000 -E 0x670000 -R dramregs_533ddr3db_A.txt u-boot-rd88f6282a.bin u-boot-rd88f6282a_533ddr3db_flash.bin     
u-boot-rd88f6282a_533ddr3db_flash.bin was created     
./tools/doimage -T uart -D 0x600000 -E 0x670000 -R dramregs_533ddr3db_A.txt u-boot-rd88f6282a.bin u-boot-rd88f6282a_533ddr3db_uart.bin     
u-boot-rd88f6282a_533ddr3db_uart.bin was created     
cp -f u-boot u-boot-rd88f6282a
二、工程包制作
M25PX64型号的flash
选择numonyx so16封装
使用 u-boot-rd88f6282a_533ddr3db_flash.bin制作
具体看工程包文档

 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号