Debian Setup TFTP/NFS: Difference between revisions

From Variscite Wiki
(Created page with "<!-- Set release according to "release" parameter in URL and use MORTY_V1.0_DART-6UL as default --> {{#vardefine:RELEASE_PARAM|{{#urlget:release}}}} <!-- --> {{#lst:Debian_Pla...")
 
Line 70: Line 70:
  {{#ifeq: {{#var:HARDWARE_NAME}} | VAR-SOM-MX7 | => setenv image zImage}}
  {{#ifeq: {{#var:HARDWARE_NAME}} | VAR-SOM-MX7 | => setenv image zImage}}
  => setenv serverip 192.168.1.188
  => setenv serverip 192.168.1.188
  => setenv nfsroot {{#var:BUILD_FOLDER}}/rootfs_debian_nfs (change <uname> to the name of user)
  => setenv nfsroot /home/<uname>/rootfs_debian_nfs (change <uname> to the name of user)
  => setenv bootcmd run netboot
  => setenv bootcmd run netboot
  => saveenv  
  => saveenv  
You are all set. Connect Ethernet cable, power cycle the {{#var:HARDWARE_NAME}} and it should boot over NFS.<br>  
You are all set. Connect Ethernet cable, power cycle the {{#var:HARDWARE_NAME}} and it should boot over NFS.<br>  
<br>
<br>

Revision as of 06:01, 10 July 2020

DART-MX8M-MINI - Debian Setup TFTP/NFS

Running Debian rootfs on Variscite board using TFTP & NFS

Host

Make sure you installed NFS server:

$ sudo apt-get install nfs-kernel-server
$ cd ~/var_mx8mm_dart_debian_buster
$ sudo mkdir rootfs_debian_nfs
$ cd rootfs_debian_nfs
$ sudo tar xvf ../output/rootfs.tar.gz -C .
$ sudo gedit /etc/exports

Add the following line (change <uname> to the name of user):

~/var_mx8mm_dart_debian_buster/rootfs_debian_nfs    *(rw,sync,no_root_squash,no_all_squash,no_subtree_check) 

exit & save

$ sudo /etc/init.d/nfs-kernel-server restart

Make sure you installed TFTP server:

$ sudo apt-get install xinetd tftpd tftp

Verify the following:

$ ls /usr/sbin/in.tftpd
$ sudo gedit /etc/xinetd.d/tftp
service tftp
{
	protocol = udp
	port = 69
	socket_type = dgram
	wait = yes
	user = nobody
	server = /usr/sbin/in.tftpd
	server_args = /tftpboot
	disable = no
}

and run:

$ sudo mkdir /tftpboot
$ sudo chmod -R 777 /tftpboot
$ sudo /etc/init.d/xinetd restart
$ cd ~/var_mx8mm_dart_debian_buster


$ sudo cp -a output/*.dtb /tftpboot
$ sudo cp -a output/Image.gz /tftpboot
Default kernel configuration should be modified to compile Ethernet driver into kernel image instead compiling it as a loadable module.

Follow our kernel compilation guide Build kernel from source code
Run "make menuconfig", go to "Device Drivers → Network device support → Ethernet driver support → Freescale devices → FEC ethernet controller" and press y.

Compile the kernel and copy arch/arm64/boot/Image.gz to /tftpboot

Target

Make sure you have a serial connection to the target.

Reset and hold the space bar. This will bring you to U-Boot command line.

=> setenv serverip 192.168.1.188
=> setenv nfsroot /home/<uname>/rootfs_debian_nfs (change <uname> to the name of user)
=> setenv bootcmd run netboot
=> saveenv 

You are all set. Connect Ethernet cable, power cycle the DART-MX8M-MINI and it should boot over NFS.