# how to use fatload uEnv.txt & script.bin & kernel uImage

all file on github:

<https://github.com/BPI-SINOVOIP/BPI-files/tree/master/debs>

file:linux-bananapi-bpi-m3-kernel3\_1.2.8\_armhf.deb:

how to use fatload uEnv.txt & script.bin & kernel uImage

step 1: dpkg -i linux-bananapi-bpi-m3-kernel3\_1.2.8\_armhf.deb

step 2: bpi-bootsel /usr/lib/u-boot/bananapi/bpi-m3/BPI\_M3\_720P.img.gz

step 3: mkdir -p /boot/bananapi/bpi-m3

step 4: cp -a /usr/lib/u-boot/bananapi/bpi-m3/linux /boot/bananapi/bpi-m3

step 5: cd /boot/bananapi/bpi-m3/linux ; vi uEnv.txt (if you want to change)

step 6: reboot

```
root@bananapi:/media/bpi/BPI-BOOT/bananapi/bpi-m3/linux# ls -l       
total 5648                                                                      
-rw-r--r-- 1 bpi bpi   55408  2月 23 14:27 script.bin                           
-rw-r--r-- 1 bpi bpi    2013  2月 25 08:39 uEnv.txt                             
-rw-r--r-- 1 bpi bpi 5718480  2月 24 10:53 uImage

# cat uEnv.txt 
bpi=bananapi
board=bpi-m3
chip=a83t
service=linux
#kernel=kernel_bpi-m3_aufs.img
#kernel=boot.fex
kernel=uImage
scrip=script.bin

ahello=echo Banaan Pi ${board} chip: $chip Service: $service

aboot=if fatload $device $partition 0x43100000 ${bpi}/berryboot.img; then bootm 0x48000000 0x43100000; else bootm 0x48000000; fi
aload_script=fatload $device $partition 0x43000000 ${bpi}/${board}/${service}/${script}
aload_kernel=fatload $device $partition 0x48000000 ${bpi}/${board}/${service}/${kernel}
```

uenvcmd=run ahello aload\_script aload\_kernel aboot

```
#
# from sys_config.fex
#
#;output_type  (0:none; 1:lcd; 2:tv; 3:hdmi; 4:vga)
#;output_mode  (used for tv/hdmi output, 0:480i 1:576i 2:480p 3:576p 4:720p50 5:720p60 6:1080i50 7:1080i60 8:1080p24 9:1080p50 10:1080p60 11:pal 14:ntsc)
#

# ref. sys_config.fex, use default script.bin
bootargs=enforcing=1 console=ttyS0,115200 console=tty1 root=/dev/mmcblk0p2 rootwait init=/init vmalloc=384M ion_cma_list="120m,176m,512m" loglevel=8 bootmenutimeout=10 datadev=mmcblk0p2

# output HDMI 1080P (type:3 mode:10)
#bootargs=enforcing=1 console=ttyS0,115200 console=tty1 root=/dev/mmcblk0p2 rootwait init=/init vmalloc=384M ion_cma_list="120m,176m,512m" loglevel=8 bootmenutimeout=10 datadev=mmcblk0p2 disp.screen0_output_type=3 disp.screen0_output_mode=10 disp.screen1_output_type=3 disp.screen1_output_mode=10

# output HDMI 720P (type:3 mode:5)
#bootargs=enforcing=1 console=ttyS0,115200 console=tty1 root=/dev/mmcblk0p2 rootwait init=/init vmalloc=384M ion_cma_list="120m,176m,512m" loglevel=8 bootmenutimeout=10 datadev=mmcblk0p2 disp.screen0_output_type=3 disp.screen0_output_mode=5 disp.screen1_output_type=3 disp.screen1_output_mode=5

# output HDMI 480P (type:3 mode:2)
#bootargs=enforcing=1 console=ttyS0,115200 console=tty1 root=/dev/mmcblk0p2 rootwait init=/init vmalloc=384M ion_cma_list="120m,176m,512m" loglevel=8 bootmenutimeout=10 datadev=mmcblk0p2 disp.screen0_output_type=3 disp.screen0_output_mode=2 disp.screen1_output_type=3 disp.screen1_output_mode=2
```

how to check output video mode:

```
root@bananapi:~# dmesg | grep DISP                                              
[    0.670049] [DISP]disp_module_init                                           
[    0.670431] [DISP]parser_disp_init_para: screen0_output_type(3)              
[    0.670472] [DISP]parser_disp_init_para: screen0_output_mode(10) value(10)   
[    0.670503] [DISP]parser_disp_init_para: screen1_output_type(3)              
[    0.670533] [DISP]parser_disp_init_para: screen1_output_mode(10) value(10)   
[    0.731031] [DISP] Fb_map_kernel_logo,line:895:Fb_map_kernel_logo failed!    
[    0.797416] [DISP]disp_module_init finish                                    
[    7.840077] [DISP] disp_device_attached_and_enable,line:159:attched ok, mgr0<
-->device1, type=4, mode=10                                                     
[   31.112875] [DISP] disp_ioctl,line:1480:para err in disp_ioctl, cmd = 0x0,scr
een id = 65536
```

how to boot with SATA rootfs:

```
# vi uEnv.txt
# ref. sys_config.fex, use default script.bin
bootargs=enforcing=1 console=ttyS0,115200 console=tty1 root=/dev/sda2 rootwait init=/init vmalloc=384M ion_cma_list="120m,176m,512m" loglevel=8 bootmenutimeout=10 datadev=sda2

how to boot with USB DISK rootfs:
# vi uEnv.txt
# ref. sys_config.fex, use default script.bin
bootargs=enforcing=1 console=ttyS0,115200 console=tty1 root=/dev/sdb2 rootwait init=/init vmalloc=384M ion_cma_list="120m,176m,512m" loglevel=8 bootmenutimeout=10 datadev=sdb2
```

for berryboot env. use only: bootmenutimeout=XXX datadev=XXX

how to check bananapi's packages:

```
root@bananapi:~# dpkg -l | grep bananapi                                        
ii  bananapi-bpi-tools                    1.0.1                                 
     armhf        Banaan Pi:  tools                                             
ii  linux-bananapi-bpi-m2-kernel3         1.2                                   
     armhf        Banaan Pi BPI-M2:  linux kernel 3.3 image & modules           
ii  linux-bananapi-bpi-m3-kernel3         1.2.6                                 
     armhf        Banaan Pi BPI-M3:  linux kernel 3.4 image & modules           
ii  linux-firmware-bananapi-bpi-wifi      1.0                                   
     armhf        Banaan Pi: linux kernel firmware for wifi ap6181 & ap6212
```

demo video:

<https://www.youtube.com/watch?time_continue=2&v=aF_WZFDxGs4>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://bananapi.gitbook.io/bpi-m3/zh/howtousefatloaduenvtxtscriptbinkernel_ui.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
