Flashing PXA27M bootloader

From Phobos Wiki
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

System set up

Linux kernel

You need to enable usbfs in your kernel.
Enable CONFIG_USB_DEVICEFS option in kernel options

Ubuntu 10.x

how-to-customize-your-ubuntu-kernel

Ubuntu 11.x

Customize kernel for 11.x

# Download kernel source
sudo apt-get install linux-source-3.0.0
cd ~
mkdir kernel-usb-fs
cd kernel-usb-fs
tar xjf /usr/src/linux-source-3.0.0.tar.bz2
cd linux-source-3.0.0/
# Enable CONFIG_USB_DEVICEFS
make xconfig

# after making changes to kernel it's time to compile
make-kpkg clean
fakeroot make-kpkg -j6 --initrd --revision=1.0 kernel_image

# install new kernel, edit filename to what was generated
sudo dpkg -i ../linux-image-

Install OpenOCD

  • Copy libftd2xx.so to your /usr/lib folder
  • Create symlinks for the libftd2xx by using the following commands:
sudo cp libftd2xx.so.0.4.13 /usr/lib/
cd /usr/lib
ln -s libftd2xx.so.0.4.13 libftd2xx.so.0.4
ln -s libftd2xx.so.0.4 libftd2xx.so.0
ln -s libftd2xx.so.0 libftd2xx.so
  • tar xzfv Openocd_1.0.1383_i386.tar.gz
  • sudo dpkg -i openocd_1.0.1383_i386.deb
    • When trying to install this on a 64bit system you need to --force-architecture or you'll get an error.
      • sudo dpkg --force-architecture -i openocd_1.0.1383_i386.deb

Using OpenOCD

  1. Power up target board and connect JTAG
  2. Start the first terminal and write
    • openocd -f vpac270.cfg
      • Error: unable to open ftdi device: 18
        • OpenOCD needs usbfs
        • sudo mount -t usbfs none /proc/bus/usb
      • Error: unable to open ftdi device: 2
        • You need root privileges
        • log in as root or
        • sudo openocd -f vpac270.cfg
  3. Start second terminal, use telnet to connect to OpenOCD daemon.
    1. telnet localhost 4444
      • you can stack the next commands
        • reset halt; load_image /tftpboot/u-boot_noboot.bin 0x5c010000; resume 0x5c010000
    2. reset halt
    3. load_image /tftpboot/u-boot_noboot.bin 0x5c010000
    4. resume 0x5c010000
  4. Start third terminal
    • minicom
      • Use settings 38400 8N1
    • set ipaddr 10.0.0.23;set serverip 10.0.0.10;erase 1:0-2;tftp Telem-GW6/x-load.bin;cp.b a1000000 0 400;tftp Telem-GW6/u-boot.bin;cp.b a1000000 800 $(filesize);reset

Reference material