Difference between revisions of "Communicate with your board from a Linux Host (Basics)"
m (→Links) |
(→Debian Jessie) |
||
(2 intermediate revisions by 2 users not shown) | |||
Line 46: | Line 46: | ||
* To test it from U-Boot (if you already have the correct IP addresses, otherwise [[Target_Software_Installation#Configure_U-Boot|continue with Setup Basics here]]): | * To test it from U-Boot (if you already have the correct IP addresses, otherwise [[Target_Software_Installation#Configure_U-Boot|continue with Setup Basics here]]): | ||
<pre class="apf"> | <pre class="apf"> | ||
− | BIOS> | + | BIOS> run download_uboot |
MAC: 00:1e:ac:00:00:01 | MAC: 00:1e:ac:00:00:01 | ||
operating at 100M full duplex mode | operating at 100M full duplex mode | ||
− | TFTP from server 192.168.0. | + | Using dm9000 device |
− | Filename 'apf9328- | + | TFTP from server 192.168.0.2; our IP address is 192.168.0.10 |
+ | Filename 'apf9328-u-boot.bin'. | ||
Load address: 0x8000000 | Load address: 0x8000000 | ||
− | Loading: | + | Loading: ########################################### |
− | + | ||
done | done | ||
− | Bytes transferred = | + | Bytes transferred = 217656 (35238 hex) |
BIOS> | BIOS> | ||
</pre> | </pre> | ||
+ | |||
+ | == Troubleshooting == | ||
+ | |||
+ | === Debian Jessie === | ||
+ | |||
+ | On debian jessie, if we follow the tutorial above we get this error under U-Boot: | ||
+ | |||
+ | <pre class="target"> | ||
+ | BIOS> run update_kernel | ||
+ | Using FEC device | ||
+ | TFTP from server 192.168.0.214; our IP address is 192.168.0.11 | ||
+ | Filename 'testbench27_apf6_test-linux.bin'. | ||
+ | Load address: 0xa0000000 | ||
+ | Loading: * | ||
+ | TFTP error: 'Access violation' (2) | ||
+ | Not retrying... | ||
+ | </pre> | ||
+ | |||
+ | We can see the problem in log with this command : | ||
+ | <pre class="host"> | ||
+ | $ sudo tailf /var/log/syslog | grep tftp | ||
+ | Oct 23 08:43:29 fabien in.tftpd[24535]: connect from 192.168.0.11 (192.168.0.11) | ||
+ | Oct 23 08:43:29 fabien tftpd[24536]: tftpd: trying to get file: testbench27_apf6_test-linux.bin | ||
+ | Oct 23 08:43:29 fabien tftpd[24536]: tftpd: serving file from /srv/tftp | ||
+ | </pre> | ||
+ | |||
+ | The tftpboot service seems to not follow the configuration file /etc/xinetd.d/tftp. | ||
+ | |||
+ | To solve problem temporarly, we can make a symbolic link in /srv directory : | ||
+ | <pre class="host"> | ||
+ | cd /srv | ||
+ | sudo ln -s /tftpboot tftp | ||
+ | </pre> | ||
+ | |||
+ | === (XXX) Debian jessie magic === | ||
+ | |||
+ | Launch tftp manually : | ||
+ | <pre class="host"> | ||
+ | sudo in.tftpd -l -s /srv/tftp/ | ||
+ | </pre> | ||
+ | |||
+ | Found [https://bbs.archlinux.org/viewtopic.php?id=154523 here] | ||
==Links== | ==Links== |
Latest revision as of 09:58, 8 October 2015
Contents
RS232 Terminal configuration
You will need a RS232 terminal emulator to communicate with U-Boot/Linux console. You can choose between:
- Kermit
- Minicom
- GtkTerm
We suggest you to use Kermit as Terminal emulator for RS232 connection. Minicom was sadly reported to have problems when communicating with U-Boot (ZModem data transfer). If you just need a simple serial console and not to transfer data through RS232, then GTKTerm is the perfect choice ! (package gtkterm in Ubuntu)
TFTP server
In order to send your image files (U-Boot, Linux, rootfs or FPGA's firmware) at higher speed to your Armadeus board, you can use the Ethernet link and a TFTP server. Once the server started, the files located in the server shared directory (/tftpboot by default) will be accessible from the U-Boot/Linux TFTP clients.
TFTP server installation
- On *Ubuntu / Debian:
$ sudo apt-get install tftpd xinetd
or use Synaptic
- On Fedora:
# rpm -q tftpd xinetd
- Then create the directory that will contain all the files that the server will export (you have to be root to do that):
$ sudo mkdir /tftpboot $ sudo chmod 777 /tftpboot
Server configuration
- Edit or create the configuration file /etc/xinetd.d/tftp and modify/add it the following lines:
# default: off # description: The tftp server serves files using the trivial file transfer # protocol. The tftp protocol is often used to boot diskless # workstations, download configuration files to network-aware printers, # and to start the installation process for some operating systems. service tftp { socket_type = dgram protocol = udp wait = yes user = root server = /usr/sbin/in.tftpd server_args = -s /tftpboot # disable = yes }
- Restart xinetd service:
$ sudo killall -HUP xinetd
- Put some files in /tftpboot
- To test it from U-Boot (if you already have the correct IP addresses, otherwise continue with Setup Basics here):
BIOS> run download_uboot MAC: 00:1e:ac:00:00:01 operating at 100M full duplex mode Using dm9000 device TFTP from server 192.168.0.2; our IP address is 192.168.0.10 Filename 'apf9328-u-boot.bin'. Load address: 0x8000000 Loading: ########################################### done Bytes transferred = 217656 (35238 hex) BIOS>
Troubleshooting
Debian Jessie
On debian jessie, if we follow the tutorial above we get this error under U-Boot:
BIOS> run update_kernel Using FEC device TFTP from server 192.168.0.214; our IP address is 192.168.0.11 Filename 'testbench27_apf6_test-linux.bin'. Load address: 0xa0000000 Loading: * TFTP error: 'Access violation' (2) Not retrying...
We can see the problem in log with this command :
$ sudo tailf /var/log/syslog | grep tftp Oct 23 08:43:29 fabien in.tftpd[24535]: connect from 192.168.0.11 (192.168.0.11) Oct 23 08:43:29 fabien tftpd[24536]: tftpd: trying to get file: testbench27_apf6_test-linux.bin Oct 23 08:43:29 fabien tftpd[24536]: tftpd: serving file from /srv/tftp
The tftpboot service seems to not follow the configuration file /etc/xinetd.d/tftp.
To solve problem temporarly, we can make a symbolic link in /srv directory :
cd /srv sudo ln -s /tftpboot tftp
(XXX) Debian jessie magic
Launch tftp manually :
sudo in.tftpd -l -s /srv/tftp/
Found here