Show pageOld revisionsBacklinksBack to top This page is read only. You can view the source, but not change it. Ask your administrator if you think this is wrong. ====== Embedded Artists LPC2478 evaluation board ====== ===== Board specs ===== * ARM7TDMI with 512KB Flash and 96KB RAM * External Flash: 128MB NAND, 4MB NOR * External data memory: 32MB SDRAM * 256Kbit I2C E2PROM * 32.768kH RTC ===== Building U-boot ===== Embedded Artists provides patches for u-boot 1.1.6. This is a very old U-boot but we have to use it as our board is not supported on the main u-boot development line. The version of U-boot that we are using, 1.1.6, does not seem to be compilable under Codesourcery g++. A non-EABI tool is needed, like bare metal, therefore crosstool-ng is needed. # build a u-boot.hex cd u-boot make distclean make LPC2478OEM_Board_32bit_config make arm-linux-objcopy -I binary -O ihex u-boot.bin u-boot.hex # u-boot.bin is a raw binary image # u-boot is an image in ELF binary format, never used for booting # u-boot.srec is in Motorola S-Record format # convert binary to hex arm-unknown-elf-objcopy -I binary -O ihex u-boot.bin u-boot.hex ===== U-boot flashing ===== jumper pin P2.10 powercycle the board and wait for USB serial device to be seen run sudo lsusb until you see the device: "Future Technology Devices International...", then figure out which tty port it is: should be /dev/ttyUSB0, but could be /dev/tty/USBx. Make sure your user has rw access to it compile the utility: gcc -o lpcisp lpc21isp_148x.c Run the utility ./lpcisp u-boot.hex /dev/ttyUSB0 115200 14746 The download should begin immediately and take a minute or so. Remove jumper on pin P2.10. We can connect to the serial port terminal with minicom, using these settings: 115200 8N1 no flow control. ===== Building uClinux ===== tar -xzvf /home/juan/projects/ARM/arm7dev/uClinux-dist-20070130.tar.gz cd uClinux-dist/ rm -r linux-2.* tar -xzvf /home/juan/projects/ARM/arm7dev/linux-2.6.21.tar.gz mv linux-2.6.21/ linux-2.6.x patch -p1 < /home/juan/projects/ARM/arm7dev/lpc2478_ea_patches/ea-uClinux-081020.diff patch -p1 < /home/juan/projects/ARM/arm7dev/lpc2478_ea_patches/ea-v3_1_incr1.diff export ARCH=arm export CPU=arm7tdmi PATH=$HOME/install/usr/local/bin:${PATH} make menuconfig make CROSS_COMPILE=arm-elf- compile problem, adding '#include <limits.h>' after strings.h in scripts/mod/sumversion.c fixes the issue. make CROSS_COMPILE=arm-elf- clean make CROSS_COMPILE=arm-elf- make ARCH=arm CROSS_COMPILE=arm-uclinuxeabi- menuconfig make ARCH=arm CROSS_COMPILE=arm-uclinuxeabi- all disable I2C in linux config make ARCH=arm CROSS_COMPILE=arm-uclinuxeabi- CC=/home/juan/CodeSourcery/Sourcery_G++_Lite/bin/arm-uclinuxeabi-gcc LD=/home/juan/CodeSourcery/Sourcery_G++_Lite/bin/arm-uclinuxeabi-ld AR=/home/juan/CodeSourcery/Sourcery_G++_Lite/bin/arm-uclinuxeabi-ar NM=/home/juan/CodeSourcery/Sourcery_G++_Lite/bin/arm-uclinuxeabi-nm OBJCOPY=/home/juan/CodeSourcery/Sourcery_G++_Lite/bin/arm-uclinuxeabi-objcopy all why isn't CROSS_COMPILE variable recognized within linux/Makefile? ====== Some links ====== our development kit:\\ http://www.standardics.nxp.com/products/lpc2000/lpc24xx/\\ http://www.embeddedartists.com/products/uclinux/oem_lpc2478.php documentation from the Embedded Artists support page: * Embedded Artists Homepage * LPC2478_OEM_Board_Users_Guide-Version_1.0_Rev_D.pdf * Getting started with uClinux ea_lpc2478.txt Last modified: 15 years agoby admin