Flashing PXA27M bootloader: Difference between revisions

From Phobos Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
 
(9 intermediate revisions by the same user not shown)
Line 14: Line 14:
  Enable CONFIG_USB_DEVICEFS option in kernel options
  Enable CONFIG_USB_DEVICEFS option in kernel options


====Ubuntu 10.x====
[http://www.howtogeek.com/howto/ubuntu/how-to-customize-your-ubuntu-kernel/ how-to-customize-your-ubuntu-kernel]
[http://www.howtogeek.com/howto/ubuntu/how-to-customize-your-ubuntu-kernel/ how-to-customize-your-ubuntu-kernel]
====Ubuntu 11.x====
[https://help.ubuntu.com/11.10/installation-guide/ia64/kernel-baking.html Customize kernel for 11.x]
<syntaxhighlight lang="bash">
# 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-
</syntaxhighlight>
=== Install OpenOCD ===
=== Install OpenOCD ===
# Copy libftd2xx.so to your /usr/lib folder
* Copy libftd2xx.so to your /usr/lib folder
# Create symlinks for the libftd2xx by using the following commands:  
* Create symlinks for the libftd2xx by using the following commands:  
#* cd /usr/lib
<syntaxhighlight lang="bash">
#* ln -s libftd2xx.so.0.4.13 libftd2xx.so.0.4
sudo cp libftd2xx.so.0.4.13 /usr/lib/
#* ln -s libftd2xx.so.0.4.13 libftd2xx.so.0
cd /usr/lib
#* ln -s libftd2xx.so.0.4.13 libftd2xx.so
ln -s libftd2xx.so.0.4.13 libftd2xx.so.0.4
# tar xzfv openocd_1.0.1383_i386.tar.gz
ln -s libftd2xx.so.0.4 libftd2xx.so.0
# dpkg -i openocd_1.0.1383_i386.deb
ln -s libftd2xx.so.0 libftd2xx.so
#* When trying to install this on a 64bit system you need to '''--force-architecture''' or you'll get an error.
</syntaxhighlight>
* 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 ==
== Using OpenOCD ==
# Power up target board and connect JTAG
# Power up target board and connect JTAG
Line 31: Line 60:
#** '''Error: unable to open ftdi device: 18'''
#** '''Error: unable to open ftdi device: 18'''
#*** OpenOCD needs usbfs
#*** OpenOCD needs usbfs
#*** mount -t usbfs none /proc/bus/usb
#*** sudo mount -t usbfs none /proc/bus/usb
#** '''Error: unable to open ftdi device: 2'''
#** '''Error: unable to open ftdi device: 2'''
#*** You need root privileges
#*** You need root privileges
Line 38: Line 67:
# Start second terminal, use telnet to connect to OpenOCD daemon.
# Start second terminal, use telnet to connect to OpenOCD daemon.
## telnet localhost 4444
## telnet localhost 4444
##* you can stack the next commands
##**reset halt; load_image /tftpboot/u-boot_noboot.bin 0x5c010000; resume 0x5c010000
## reset halt  
## reset halt  
## load_image /tftpboot/u-boot_noboot.bin 0x5c010000
## load_image /tftpboot/u-boot_noboot.bin 0x5c010000
Line 44: Line 75:
#* minicom
#* minicom
#** Use settings 38400 8N1
#** Use settings 38400 8N1
#* set ipaddr 10.0.0.22;set serverip 10.0.0.16;erase 1:0-2;tftp x-load.bin;cp.b a1000000 0 400;tftp u-boot.bin;cp.b a1000000 800 $(filesize);reset
#* 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 ==  
== Reference material ==  
*[http://voipac.com/downloads/jtag/doc/vpaclink-jtag.txt Installing OpenOCD]
*[http://voipac.com/downloads/jtag/doc/vpaclink-jtag.txt Installing OpenOCD]
*[http://www.howtogeek.com/howto/ubuntu/how-to-customize-your-ubuntu-kernel/ How to customize your Ubuntu kernel]
*[http://www.howtogeek.com/howto/ubuntu/how-to-customize-your-ubuntu-kernel/ How to customize your Ubuntu kernel]

Latest revision as of 12:04, 12 August 2014

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