Khadas Docs

Amazing Khadas, always amazes you!

User Tools

Site Tools


Sidebar

products:sbc:vim1s:hardware:vim1s-boot-flow

VIM1S Boot flow

VIM1S have advanced and flexible booting sequence… WIP:

MCU ⇒ BROM ⇒ U-BootOS target

Next information actual for MCU ver: 0x0005

Hardware buttons

WIP:

  • FUNCTION + RESET - oowow-mode
  • FUNCTION x3 times - flash mode

More detail: hardware-buttons

OOWOW boot led indication

OOWOW boot makes a red LED indication on the first boot seconds, it's looks like a short RED blinking 1-3 sec in success,

Red blink or permanent red LED means OOWOW failed

This indication common for VIM4, Edge2 and VIM1S

Preparing for oowow
# red led hb mode
i2c mw 0x18 0x89 3
try to start
# red led off
i2c mw 0x18 0x89 0
oowow fail
# red led on mode
i2c mw 0x18 0x89 1

dev-info

WIP: special pre-boot led indication

OOWOW mode

Exclusive special service mode: activated by hardware buttons or by software request

Ignore all boot sources like: USB removable stores , eMMC internal storage …

Boot fail service mode activated automatically as rescue mode for:

  • internal eMMC storage is empty
  • cant find any boot-able OS sources
  • boot-up from other sources fail

Try at 1st boot from sources all sources: USB removable stores , eMMC internal storage …

Boot modes oowow shell usage

WIP:

Set boot mode

~# bootmode
spi
 
~# bootmode mmc
[i] /opt/bootmode spi -> mmc(sd)
 
~# bootmode
mmc
 
~# bootmode spi
[i] /opt/bootmode mmc -> spi

Set oowow mode

Setup, check, or clean next OOWOW bootup…

~# mcu_oowow_mode set 1
[i] set with 1
 
~# mcu_oowow_mode clean
[i] set with 0
 
~# mcu_oowow_mode && echo activated
0x01
activated
 
~# mcu_oowow_mode clean
[i] set with 0
 
~# mcu_oowow_mode || echo disabled
disabled
 
~# i2cset -f -y 1 0x18 0x92 1
 
~# i2cget -f -y 1 0x18 0x92
0x01

Reboot by MCU

Forced hardware reboot

~# mcu_reboot
 
~# i2cset -f -y 1 0x18 0x91 2

U-Boot stage

Current u-boot can start OS from USBSDeMMC ⇒ …

oowow spi uboot

boot_targets
kvim1s# printenv boot_targets 
boot_targets=wow usb0 mmc0 mmc1 storeboot rescue fail pxe dhcp

mmc uboot

default eMMC u-boot log for Ubuntu images

boot_targets
kvim1s# printenv boot_targets 
boot_targets=usb0 mmc0 mmc1 storeboot rescue fail pxe dhcp 

MMC/SD boot areas

MMC/SD boot areas
1STBLOB 0x00000200        0x0002a000
BL2E    0x0002a200        0x00013000
BL2X    0x0003d200        0x00011000
DDRFIP  0x0004e200        0x00040000
DEVFIP  0x0008e200        0x00300000

SPI-Flash boot areas

SPI-Flash boot areas
1STBLOB 0x00000000        0x0002a000
BL2E    0x00054000        0x00013000
BL2X    0x0007a000        0x00011000
DDRFIP  0x0009c000        0x00040000
DEVFIP  0x0011c000        0x00300000
Last modified: 2023/06/05 21:45 by hyphop