Linino upgrade from u-boot, for Windows users

If you need upgrade the Linino IO from u-boot and you are a Windows user then follow this guide:

- First be sure that: 
1) the board is connected via Ethernet; 
2) the board is plugged to PC via USB cable; 
Warning: 
The board must be powered with one power supply that provides output at least 2A. 
For connecting it to your computer you may need to use a Y-Cable (USB Micro-B to Standard Male A). 
Arduino Tian

 - Download the kernel and rootfs files, you can use these links: 
1) Latest versio: kernel and rootfs files; 
2) For other versions click here.

- Install a TFTP server: 
1) you can use Windows TFTP Utility, download it here
2) Install the tool as administrator. 
TFTPUtil GUI: License 
TFTPUtil GUI: Installation Options 
TFTPUtil GUI: Installation Folder 
TFTPUtil GUI: Installation completed 
3) Open Windows TFTP Utility and set it: 
TFTPUtil GUI: application 
TFTPUtil GUI 
select the path of your u-boot file; 
TFTPUtil GUI: root folder 
TFTPUtil GUI: Options 
set the ip address. 
TFTPUtil GUI: Settings 
click OK when you finish the setting; 
TFTPUtil GUI 
4)Check that the Server is working.

- Enter in u-boot console: 
1) Open the Arduino IDE 1.7.10 or later, you can download it here
2) Select Tian from Tools>Board menu; 
3) Select COMXX(Arduino Tian - Console Port) from Tools>Port menu, as shown in the below image: 
Port menu 
- Click LNX RST button and type lin when it is requested.

- Now pay attention and follow these steps (please be sure to connect your Ethernet cable):

 
 
setenv serverip ‹tftp-server-ip›;
setenv ipaddr ‹linino-board-ip›;
 
 

In this example the setting is:

 
 
linino>setenv serverip 192.168.60.124;
linino> setenv ipaddr 192.168.60.182;
 
 

Test the TFTP server doing a ping, in this example:

 
 
linino> ping 192.168.60.124
 
 

TFTP server settings 
If the ping is successful, then you continue the guide, else check the network and the tftp server or click here to follow this other guide to realize a connection point to point.  

Kernel

Download the kernelfile, if you haven't done already :

- Transfer the kernel file:

 
 
tftp 0x80060000 lininoIO-generic-linino-tian-kernel.bin;
 
 

Kernel file transfer 
Only if the transfer is successful then continue the procedure, else check the network and the TFTP server and try again the transfer

- Delete the old file, pay attention that the command and the address are correct:

 
 
erase 0x9fEa0000 +0x140000;
 
 

Erase old kernel file

- Copy the new file, pay attention that the command and the address are correct

 
 
cp.b $fileaddr 0x9fea0000 $filesize;
 
 
 
 
linino> cp.b $fileaddr 0x9fea0000 $filesize;
Copy to Flash... write addr: 9fea0000
done
linino>
 
 

Rootfs

Download the rootfs file, if you haven't done already:

- Transfer the Rootfs file using the below command:

 
 
tftp 0x80060000 lininoIO-generic-linino-tian-rootfs-squashfs.bin;
 
 

Rootfs file transfer 1/2 
Rootfs file transfer 2/2 
Only if the transfer is successful then continue the procedure, else check the network and the TFTP server and try again the transfer.

- Delete the old file, pay attention that the command and the address are correct:

 
 
erase 0x9f050000 +0xE50000;
 
 

Erase old Rootfs file

- Copy the new file, pay attention that the command and the address are correct

 
 
cp.b $fileaddr 0x9f050000 $filesize;
 
 

Copy the new Rootfs file

- Now type reset:

 
 
linino> reset
 
 

Reset and enter in u-boot console

Optional steps

If you want erased the UBoot environment partition, in order to apply the new default environment, it is possible to delete it with the command:

 
 
linino> erase 0x9f040000 +0x10000;
 
 

Below the output on monitor: 
New default environment 
Now reset:

 
 
linino>reset;
 
 

After the board reboot a message like *** Warning - bad CRC, using default environment will appear on the console. 
Warning bad CRC 
Type the lin command and push the Send button. 
To avoid the warning message give the following command on the UBoot console

 
 
linino> saveenv
 
 

Below the output shown: 
Saveenv 
Finally type the reset on the command line:

 
linino> reset