mirror of
https://github.com/genodelabs/genode.git
synced 2024-12-25 16:31:06 +00:00
97 lines
3.0 KiB
Plaintext
97 lines
3.0 KiB
Plaintext
|
|
======================================================
|
|
Getting started with 'genode/base-hw' on PandaBoard A2
|
|
======================================================
|
|
|
|
|
|
Martin Stein
|
|
|
|
Abstract
|
|
########
|
|
|
|
This is a short tutorial that depicts a handy way to get a Genode ELF image,
|
|
build with 'base-hw', started on the PandaBoard A2. It is dedicated to common
|
|
Linux systems, but all examples originate from a Ubuntu 10.10.
|
|
|
|
|
|
Tutorial
|
|
########
|
|
|
|
Connect the PandaBoard to your local Ethernet through its RJ45 connector.
|
|
Additionally connect the PandaBoard to your machine through its COM port.
|
|
Ensure that you have installed the genode tool chain that is available at:
|
|
|
|
:[http://genode.org/download/tool-chain]:
|
|
Get the genode tool chain]
|
|
|
|
Ensure that '<GENODE_GCC_DIR>/bin/' is in your 'PATH' variable.
|
|
Get the linaro U-Boot repository and compile U-Boot for PandaBoard:
|
|
|
|
! git clone git://git.linaro.org/boot/u-boot-linaro-stable.git
|
|
! cd <UBOOT_DIR>
|
|
! make CROSS_COMPILE=genode-arm- omap4_panda_config
|
|
! make CROSS_COMPILE=genode-arm-
|
|
|
|
During the compilation i had some errors. The first was in assembly code,
|
|
it seemed to originate from a slip with the typo and was easy to fix.
|
|
The second kind of errors occured because the GCC version had no support for
|
|
direct array initialization, thus i avoided them by simply initialize
|
|
the array elements separately.
|
|
|
|
Now install the following packages to communicate with the PandaBoard:
|
|
|
|
! sudo apt-get install tftp-hpa minicom
|
|
|
|
Open '/etc/default/tftpd-hpa' with a text editor and ensure that it has
|
|
the following content:
|
|
|
|
! # /etc/default/tftpd-hpa
|
|
! TFTP_USERNAME="tftp"
|
|
! TFTP_DIRECTORY="/var/lib/tftpboot"
|
|
! TFTP_ADDRESS="0.0.0.0:69"
|
|
! TFTP_OPTIONS="-l"
|
|
|
|
Tell U-Boot wich image to load on boot command:
|
|
|
|
! cd /var/lib/tftpboot/
|
|
! ln -s <GENODE_BOOT_ELF> image.elf
|
|
|
|
Start TFTP to enable the upload of the image:
|
|
|
|
! sudo service tftp-hpa restart
|
|
|
|
Start Minicom in configuration mode:
|
|
|
|
! minicom -s
|
|
|
|
Go to 'Serial port setting' and ensure that the device is set the
|
|
TTY of the COM port you've conntected PandaBoard with, in my case it was
|
|
'/dev/ttyS0'. Configure the other settings for a baud rate of '115200',
|
|
8 bit char length, no parity and 1 stop bit. Quit Minicom and start
|
|
it once more:
|
|
|
|
! minicom
|
|
|
|
Mount your SD-card and copy the U-Boot files to its boot partition:
|
|
|
|
! cd <UBOOT_DIR>; cp MLO /media/boot/; cp u-boot.bin /media/boot/
|
|
|
|
Unmount the SD card and insert it into the appropriate PandaBoard slot.
|
|
Plug in the power connector or push the 'S1' button if the PandaBoard is
|
|
already powered.
|
|
|
|
Minicom should now show the following message:
|
|
|
|
! Hit any key to stop autoboot:
|
|
|
|
We have to stop autoboot and type in this line to load and boot the genode
|
|
image via ethernet:
|
|
|
|
! usb start; dhcp; bootelf 0x82000000
|
|
|
|
Now the ELF image should start correctly and offer some debug output in
|
|
minicom. You can now boot further images by redirecting the link
|
|
'/var/lib/tftpboot/image.elf' accordingly, restarting your pandaboard
|
|
and instructing 'uboot' again as described above.
|
|
|