Debian Edit Modify Build and Flash U-Boot: Difference between revisions

From Variscite Wiki
No edit summary
No edit summary
Line 5: Line 5:
<br>
<br>


== Making Changes to U-Boot ==
== Making changes to U-Boot ==
  $ cd {{#var:BUILD_FOLDER}}/src/uboot-imx
  $ cd {{#var:BUILD_FOLDER}}/src/uboot-imx
  $ gedit board/variscite/{{#var:U-BOOT_BOARD_NAME}}/{{#var:U-BOOT_BOARD_NAME}}.c
  $ gedit board/variscite/{{#var:U-BOOT_BOARD_NAME}}/{{#var:U-BOOT_BOARD_NAME}}.c
  $ gedit include/configs/{{#var:U-BOOT_BOARD_NAME}}.h
  $ gedit include/configs/{{#var:U-BOOT_BOARD_NAME}}.h


For example, we want to change the default environment variable,  
For example, we want to change the default environment variable,
  "netargs=setenv bootargs ${jh_clk} console=${console} " \
  "netargs=setenv bootargs ${jh_clk} console=${console} " \
  "root=/dev/nfs ${cma_size} " \
  "root=/dev/nfs ${cma_size} " \
  "ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp\0" \
  "ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp\0" \
To
to
  "netargs=setenv bootargs ${jh_clk} console=${console} " \
  "netargs=setenv bootargs ${jh_clk} console=${console} " \
  "root=/dev/nfs ${cma_size} " \
  "root=/dev/nfs ${cma_size} " \
Line 22: Line 22:
Here above example sets the serverip to 192.168.0.34.
Here above example sets the serverip to 192.168.0.34.


== Building Bootloader ==
== Building bootloader ==
To build a bootloader run below commands on host machine.  
To build a bootloader run below commands on host machine.  
  $ cd {{#var:BUILD_FOLDER}}
  $ cd {{#var:BUILD_FOLDER}}
Line 31: Line 31:
|}}|}}
|}}|}}


== Flashing New Bootloader to Target ==
== Flashing new bootloader to target ==


=== Flashing New Bootloader to target eMMC via network ===
=== Flashing new bootloader to target eMMC via network ===
Transfer the newly created bootloader file   
Transfer the newly created bootloader file   
{{#ifeq: {{#var:SOC_SERIES}}|imx8|
{{#ifeq: {{#var:SOC_SERIES}}|imx8|
Line 43: Line 43:
From
From
  {{#var:BUILD_FOLDER}}/output/ to running target to flash it on the eMMC.  
  {{#var:BUILD_FOLDER}}/output/ to running target to flash it on the eMMC.  
For example <br>
For example: <br>
{{#ifeq: {{#var:SOC_SERIES}}|imx8|
{{#ifeq: {{#var:SOC_SERIES}}|imx8|
  <br>
  <br>
Line 69: Line 69:


=== Flashing new bootloader to SD card ===
=== Flashing new bootloader to SD card ===
To flash the newly created bootloader on the SD Card if you are running your entire os from SD card.  
To flash the newly created bootloader on the SD card if you are running your entire os from SD card.  
{{#ifeq: {{#var:SOC_SERIES}}|imx8|
{{#ifeq: {{#var:SOC_SERIES}}|imx8|
  <br>
  <br>

Revision as of 22:04, 6 April 2023

Warning: This page is designed to be used with a 'release' URL parameter.

This page is using the default release RELEASE_BUSTER_V1.0_DART-MX8M-MINI.
To view this page for a specific Variscite SoM and software release, please follow these steps:

  1. Visit variwiki.com
  2. Select your SoM
  3. Select the software release
DART-MX8M-MINI - Debian U-Boot Customization


Making changes to U-Boot

$ cd ~/var_mx8mm_dart_debian_buster/src/uboot-imx
$ gedit board/variscite/mx8mm_var_dart/mx8mm_var_dart.c
$ gedit include/configs/mx8mm_var_dart.h

For example, we want to change the default environment variable,

"netargs=setenv bootargs ${jh_clk} console=${console} " \
		"root=/dev/nfs ${cma_size} " \
		"ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp\0" \

to

"netargs=setenv bootargs ${jh_clk} console=${console} " \
		"root=/dev/nfs ${cma_size} " \
		"ip=dhcp serverip=192.168.0.34 nfsroot=${serverip}:${nfsroot},v3,tcp\0" \

Here above example sets the serverip to 192.168.0.34.

Building bootloader

To build a bootloader run below commands on host machine.

$ cd ~/var_mx8mm_dart_debian_buster
$ sudo MACHINE=imx8mm-var-dart ./var_make_debian.sh -c bootloader


Flashing new bootloader to target

Flashing new bootloader to target eMMC via network

Transfer the newly created bootloader file imx-boot-sd.bin

From

~/var_mx8mm_dart_debian_buster/output/ to running target to flash it on the eMMC. 

For example:

$ scp ~/var_mx8mm_dart_debian_buster/output/imx-boot-sd.bin root@192.168.0.36:/tmp/ 

Change 192.168.0.36 to your target board IP.
On target run below commands:

$ sudo dd if=/tmp/imx-boot-sd.bin  of=/dev/mmcblk2 bs=1K seek=33 conv=fsync

Flashing new bootloader to SD card

To flash the newly created bootloader on the SD card if you are running your entire os from SD card.

$ sudo dd if=imx-boot-sd.bin of=/dev/sdX bs=1K seek=33 conv=fsync

Flashing using recovery SD card

If you want to use our recovery SD card to flash the built U-Boot to NAND flash/eMMC, then copy it to the appropriate location in the SD card:

$ sudo cp imx-boot-sd.bin /media/rootfs/opt/images/Debian/

And eject the SD card gracefully from host machine.


Note: If you manually upgrade an existing U-Boot, and you have an old environment saved, it is a good idea to reset your environment to the new default (see Environment handling commands)