Boot failed after flashed bios

Hello everyone, I’m encountering an issue with my Orion O6. After flashing the 0.3.0-1 BIOS, it fails to boot. The EC serial output is as follows:

port is : /dev/ttyUSB0
flowcontrol : none
baudrate is : 460800
parity is : none
databits are : 8
stopbits are : 1
escape is : C-a
local echo is : no
noinit is : no
noreset is : no
hangup is : no
nolock is : no
send_cmd is : sz -vv
receive_cmd is : rz -vv -E
imap is : lfcrlf,
omap is :
emap is : crcrlf,delbs,
logfile is : none
initstring : none
exit_after is : not set
exit is : no

Type [C-a] [C-h] to see available commands
Terminal ready
Cix function init.
Build at: Jan 02 2025, 18:34:40, EC V1.07-f4c3ada6e90d.
Flash ID:0 0 0.
External flash is not exist.
EC r_rsn_backup POffR:ffffff.
EC r_autoflag_backup AutoPwrOnFlg: 1.
AC in, DC:out
Power on reason AC.
AC Sx->S0 Check :0
AC Sx->S0 Check :1
AC Sx->S0 Check :2
AC Sx->S0 Check :3
AC Sx->S0 Check :4
AC Sx->S0 Check :5
AC Sx->S0 Check :6
AC Sx->S0 Check :7
AC Sx->S0 Check :8
AC Sx->S0 Check :9
AC Sx->S0 Check :10
rRenByte fail(0)
Slave address:0x0 is not match.
rRenByte fail(10)
Slave address:0x10 is not match.
rRenByte fail(20)
Slave address:0x20 is not match.
rRenByte fail(30)
Slave address:0x30 is not match.
rRenByte fail(40)
Slave address:0x40 is not match.
rRenByte fail(50)
Slave address:0x50 is not match.
rRenByte fail(60)
Slave address:0x60 is not match.
rRenByte fail(70)
Slave address:0x70 is not match.
rRenByte fail(80)
Slave address:0x80 is not match.
rRenByte fail(90)
Slave address:0x90 is not match.
rRenByte fail(a0)
Slave address:0xa0 is not match.
rRenByte fail(b0)
Slave address:0xb0 is not match.
rRenByte fail(c0)
Slave address:0xc0 is not match.
Slave (8bit)address:0xd0 = 0xff, good.
ID_SKU is 0000.
rPMIC15475_byte fail(51)
pI2C1_HID_PMIC1 CheckPMICVersion i2c fail(81)
rPMIC25475_byte fail(51)
pI2C2_ACPI_PMIC2 CheckPMICVersion i2c fail(81)
rPMIC35475_byte fail(51)
pI2C3_CSU_PMIC3 CheckPMICVersion i2c fail(81)
AC Sx->S0 Check :11
AC Sx->S0 Check :12
AC Sx->S0 Check :13
CixIOEXPWrite fail(0)
CixIOEXPWrite fail(1)
CixIOEXPWrite fail(6)
CixIOEXPWrite fail(7)
CixIOEXPWrite fail(2)
CixIOEXPWrite fail(3)
CixIOEXPWrite fail(0)
IOEXP_INPUT_PORT0_REG:0
CixIOEXPWrite fail(1)
IOEXP_INPUT_PORT1_REG:0
CixIOEXPWrite fail(2)
IOEXP_OUTPUT_PORT0_REG:0
CixIOEXPWrite fail(3)
IOEXP_OUTPUT_PORT1_REG:0
CixIOEXPWrite fail(4)
IOEXP_INVERSION_PORT0_REG:0
CixIOEXPWrite fail(5)
IOEXP_INVERSION_PORT1_REG:0
CixIOEXPWrite fail(6)
IOEXP_CONFIG_PORT0_REG:0
CixIOEXPWrite fail(7)
IOEXP_CONFIG_PORT1_REG:0
rSCM3218_word fail(7)
wSCM3218_word fail(0)
rSCM3218_word fail(0)
rSCM3218 reg0:(0x40)
rSCM3218_word fail(1)
rSCM3218 reg1:(0x40)
rSCM3218_word fail(2)
rSCM3218 reg2:(0x40)
rSCM3218_word fail(3)
rSCM3218 reg3:(0x40)
rSCM3218_word fail(4)
rSCM3218 reg4:(0x40)
rSCM3218_word fail(5)
rSCM3218 reg5:(0x40)
rSCM3218_word fail(6)
rSCM3218 reg6:(0x40)
rSCM3218_word fail(7)
rSCM3218 reg7:(0x40)
PD init addr:ce, trig_addr:d0.
PD init addr:d0, trig_addr:0.
rPDTransProtocol addr:ce status:1, len:0.
rLen:20, IC_STATUS[0]:1.
rLen:20, IC_STATUS[1]:1.
rLen:20, IC_STATUS[2]:0.
rLen:20, IC_STATUS[3]:1.
rLen:20, IC_STATUS[4]:0.
rLen:20, IC_STATUS[5]:1.
rLen:20, IC_STATUS[6]:0.
rLen:20, IC_STATUS[7]:0.
rLen:20, IC_STATUS[8]:d6.
rLen:20, IC_STATUS[9]:da.
rLen:20, IC_STATUS[10]:b.
rLen:20, IC_STATUS[11]:58.
rLen:20, IC_STATUS[12]:54.
rLen:20, IC_STATUS[13]:f.
rLen:20, IC_STATUS[14]:0.
rLen:20, IC_STATUS[15]:20.
rLen:20, IC_STATUS[16]:1.
rLen:20, IC_STATUS[17]:30.
rLen:20, IC_STATUS[18]:0.
rLen:20, IC_STATUS[19]:30.
PD0 FW version is 0100
GPDRA:72 INT_PD2:0.
Trigger interrupt SlaveAddr:d0.
rPDTransProtocol addr:d0 status:19, len:6.
addr:d0, rLen:6, RTK_STATUS[0]:62.
addr:d0, rLen:6, RTK_STATUS[1]:4a.
addr:d0, rLen:6, RTK_STATUS[2]:80.
addr:d0, rLen:6, RTK_STATUS[3]:84.
addr:d0, rLen:6, RTK_STATUS[4]:87.
addr:d0, rLen:6, RTK_STATUS[5]:1.
Port2 usb cable attached.
rPDTransProtocol addr:d0 status:11, len:4.
rLen:4, SrcPDO[0]:45.
rLen:4, SrcPDO[1]:41.
rLen:4, SrcPDO[2]:6.
rLen:4, SrcPDO[3]:0.
PD(0xd0) MaxPdoCapacity change to MaxCurrent:3.25 A, Voltage:20.00 V
SrcPDO[0]: MaxCurrent:3.25 A, Voltage:20.00 V
GPDRH:f8 SOC_SLP3:0.
GPDRB:9e SOC_SLP5:0.
WU65 GPF5:0.
Blink led state from -1 to 0.
GPDRA:f0 INT_PD2:1.
Power state from G3PP to S0.
Channel0: (3, 8)2.503V T:304.539(31.0 C) Rt:75.401.
Channel1: (3, 8)2.503V T:304.539(31.0 C) Rt:75.401.
Channel3: (3, 3)2.487V T:305.119(31.6 C) Rt:73.429.
Channel4: (3, 8)2.503V T:304.539(31.0 C) Rt:75.401.
Channel5: (3, 8)2.503V T:304.539(31.0 C) Rt:75.401.
rPVT_TEMP w fail!
rCsuPM fail!
TState from 0 to 1, temp from 0 to 25.
TState from 0 to 1, duty:20, rpm:11.

Did you fully power cycle (unplug power and re-plug) after the update?

2 Likes

yep. Did you run into this problem too?

Some of us did when updating a bit too quickly and forgetting to pull the cable after. In any case, an off/on cycle always fixes it. What I’ve seen the most after I upgraded my board was that only 16 of the 32 GB were recognized after flashing if I didn’t power-cycle it. I haven’t checked the output of the EC when it happened though, because usually it was as simple as “wait, I forgot to unplug”, and doing that was sufficient. You may need to find (or to order) a flasher. Be very careful if you do it, this flash is 1.8V, most flashers support only 3/5V. I mistakenly programmed mine under 3V the first few times and was lucky it didn’t die, but it could happen. Now my flasher supports 1.8/2.5/3.3/5V.

1 Like

So flashing can be done via an external flasher, and also can be done from the live running O6 system?

Can you give some example on Amazon, Aliexpress etc. of compatible flashers.

This one works best for me (4 native voltages), though it seems not to be available anymore: https://www.aliexpress.com/item/1005004452694448.html otherwise you can order that one with the 1.8V external adapter: https://www.aliexpress.com/item/1005006530290946.html

There’s a complete thread here explaining how to proceed for flashing: Guide: Flash Bios with CH341A (macos/linux)

Good luck!

1 Like

Thanks for your advice. I had bought one suitable flasher and other bios chip. But the same problem keeps happening

I’ve already flashed the BIOS multiple times with different versions, but it didn’t help. Perhaps Radxa’s engineers can understand the error messages and explain

Let’s hope so. There might possibly be a bug where bad data stored somewhere (EC?) could make the system enter an infinite loop. I think you should explicitly ping some of the Radxa engineers, as there are too many threads to be sure they catch everything reported there.

This is only the EC output. Please check if there is anything in SE and AP UARTs as well: https://radxa-pkg.github.io/edk2-cix/debug.html#serial-connection

Also, have you tried pressing the power button?

SE:
Type [C-a] [C-h] to see available commands
Terminal ready
[BROM]# CiX Bootrom Sky1 Alpha1.0

AP has nothing output

And pressing the power button has no effect other than rebooting the board

Can you reseat your SPI flash? This looks like the SPI flash was not detected.

The dot on the SPI flash should be on the 40-pin side, not the SoC side.

The SPI flash chip is installed in the position marked as U61 on the schematic diagram, so it should be correct.

But did you flash it using the UEFI based utility or did you use an external programmer ? Because if using an external programmer accidentally set to the wrong voltage, it could have killed the flash, which would explain why it would no longer be detected. Just trying to figure one possible cause to imagine a solution.

By the way, if you already have an external flasher, maybe it would be worth buying a bunch of the flash chips above and try to flash them again to be certain you’d restart from a known-good chip ?

I have no idea what you mean by

as schematic does not tell you the chip orientation.

Please check with the dot on the chip package as the indicator.

Additionally, the chip uses 1.8V logic, so make sure that’s the voltage you used.

1 Like

The schematic shows the pinout, and I placed the chip accordingly, with the chip’s dot near the 40-pin side. I tried two different winbond w25q64jwsiq flash chip, but it didn’t get better.

Please contact your original seller for warranty option.

Seems there’s no other choice. Appreciate the help!

As a precaution for others, it looks like the BIOS updater failed for me too (64GB variant).

I tried to update from Version 0.3.0-2 (IIRC) to the Version 9.0.0 linked here: https://docs.radxa.com/en/orion/o6/download#bios
… as per the “Online Screen” instructions here:
https://docs.radxa.com/en/orion/o6/bios/install-bios
… but, after the update, it fails to boot. Did the hard unplug, but still no display, etc.

Haven’t checked the UART outputs and not sure I’ll get around to that for some time.

I’ve got some logs from UART5 (Secure BootROM). UART2 (BIOS/OS) and UART4 (Power Management) gave no output.

EC_UART did appear to give output - but it looks like it might be binary (and not decipherable).

At this point, I’m assuming I’ve got a corrupted BIOS, but if anyone is able to confirm it looks that way based on the UART5 logs below, that’d be great.

Flash spi type: 0x0
[SE_FW]# SE config base address is: 0x565000
[SE_FW]# low_power_gate: 1
[SE_FW]# Mbedtls setup successful
[SE_FW]# Crypto init successful
[SE_FW]# IPC init successful
[SE_FW]# Dispatcher init successful
[SE_FW]#################################################################################
[SE_FW]#CiX SE firmware Sky1 beta2.0
[SE_FW]#Weekly Version: NA
[SE_FW]#Compile Time: 2025-03-20-10-13-41
[SE_FW]#Compile Name: Johnny
[SE_FW]#Compile Commit Id: 958a7bfced44
[SE_FW]#################################################################################
[SE_FW]# Syshub IO init successful
[SE_FW]# Chip ID: 0000000000000000
[SE_FW]Default dfd value: 0x0
[SE_FW]Start to check secure debug binary
[SE_FW]# Flash Offset flag from strappng pin is: 0x0
[SE_FW]Start to verify signature of secure debug binary
[SE_FW]# Verify secure debug binary with OEM RSA3072 key successful
[SE_FW]Dfd nv value(0x22) for debug
[drv_pmic_mps5475_setVoltage:59]ERR: 0xffffffff
ERR drv_pmic_vboot_init, 165
[SE_FW]# drv_soc_init
[SE_FW]#######soc init with base power/clk/reset #########
[SE_FW]sys_pll lock_status: 1
[SE_FW]drv_soc_common_init
[SE_FW]drv_soc_pmctrl_s5_init
[SE_FW]drv_soc_dfd_init
[SE_FW]drv_soc_csu_pm_init
[SE_FW]drv_soc_csu_se_init
[SE_FW]drv_soc_tsgen_init
[SE_FW]drv_soc_usb_init
[SE_FW]drv_soc_fch_init
[SE_FW]drv_soc_cpu_init
[SE_FW]drv_soc_dsu_init
[SE_FW]drv_soc_ci700_init
[SE_FW]drv_soc_gic_init
[SE_FW]drv_soc_npu_init
[SE_FW]drv_soc_mmhub_init
[SE_FW]drv_soc_syshub_init
[SE_FW]drv_soc_pcie_hub_init
[SE_FW]drv_soc_ddrc_init
[SE_FW]drv_soc_gpu_init
[SE_FW]drv_soc_dp_init
[SE_FW]drv_soc_dpu_init
[SE_FW]drv_soc_audio_ss_self_test
[SE_FW]drv_soc_audio_ss_self_test: self-test pass 
drv_ddr_init ver 10002 start ...
[SE_FW]# Flash Offset flag from strappng pin is: 0x0
        Error: PcdId 0xa4 not found in mapping table. Use default config
BoardMask 0x0000.
No SPD data, use default config.
DDR type: LPDDR5
Channel Mask: 0xf
        fsp0 100Mhz 16B_MODE
        fsp1 2750Mhz BG_MODE
        fsp2 2750Mhz BG_MODE
                 fsp0    fsp1    fsp2
FdbkDrv          77      77      77
FdbkOdt          06      06      06
RstDrv           77      77      77
DqDrv            77      77      77
DqOdt            06      06      06
DqsDrv           77      77      77
DqsOdt           06      06      06
CkDrv            66      66      66
CkeDrv           66      66      66
CaDrv            66      66      66
CsDrv            66      66      66
FFE              0       0       0
DFE              0       0       0
CTLE             00      00      00
                 fsp0    fsp1    fsp2
CA_ODT           22      22      22
CK_ODT           22      22      22
CS_ODT           33      33      33
DQ_ODT           33      33      33
NTDQ_ODT         00      00      00
WCK_ODT          33      33      33
SOC_ODT          66      66      66
ODT_PDDS         66      66      66
DqVref           350     350     350
CaVref           300     300     300
BP[00000001]
BP[00000002]
        Init DDR controller
        Init DDR PHY
Mem PHY IO PAD config
        Init DDR PI
        Config DDR Features
CH: 4 Rank: 1 DW: 16 Row: 16 Col: 10 BaBg: 4 Total Capacity: 16384MB
        Init Ddrss
Train LVL type: 105f
BP[00000004]
Proceeding Mem Training...
        CH0 start:
        CH1 start:
        CH2 start:
        CH3 start:
                CH1 Training Done st:1
                CH2 Training Done st:1
                CH3 Training Done st:1
                CH0 Training Done st:1
                All Channel Training Done
Training Result:
              CALVL   WRLVL   RDDCM   RDLVL   WRDCM   WDQLVL  
        CH0:  Pass    Pass    None    Pass    Pass    Pass    
        CH1:  Pass    Pass    None    Pass    Pass    Pass    
        CH2:  Pass    Pass    None    Pass    Pass    Pass    
        CH3:  Pass    Pass    None    Pass    Pass    Pass    
DramDca St: 0xaa
BP[00000008]
Adjust RD Delay @CH0
Adjust RD Delay @CH1
Adjust RD Delay @CH2
Adjust RD Delay @CH3
Retrain triggered due to Training failed...
BP[00000002]
        Init DDR controller
        Init DDR PHY
Mem PHY IO PAD config
        Init DDR PI
        Config DDR Features
CH: 4 Rank: 1 DW: 16 Row: 16 Col: 10 BaBg: 4 Total Capacity: 16384MB
        Init Ddrss
Train LVL type: 105f
BP[00000004]
Proceeding Mem Training...
        CH0 start:
        CH1 start:
        CH2 start:
        CH3 start:
                CH0 Training Done st:0
                CH1 Training Done st:0
                CH2 Training Done st:0
fault_handler_lr: 0xfffffff9
fault_handler_sp: 0x2004bf40
====================================
#SE-FW version: beta2.0
#Compile Time: 2025-03-20-10-13-41
#Code start address: 0x20000000
#Code size : 0x0002c190
#Stack bttom is : 0x200480f0
#Stack size is : 0x00004000
#LR register is : 0xfffffff9
#SP register is : 0x2004bf40
#xPSR register is : 0x28000005
#Except info is : [0x00000005]- Bus Fault
====================================
Stack Status: Normal
====================================
Data in stack space:
  addr: 2004bf40    data: 0000000f
  addr: 2004bf44    data: fffffff9
  addr: 2004bf48    data: 4c070598
  addr: 2004bf4c    data: 00000003
  addr: 2004bf50    data: 00000008
  addr: 2004bf54    data: 0000000f
  addr: 2004bf58    data: 00000000
  addr: 2004bf5c    data: 20024a1f
  addr: 2004bf60    data: 2001e18a
  addr: 2004bf64    data: 89000000
  addr: 2004bf68    data: 0000000f
  addr: 2004bf6c    data: 00000003
  addr: 2004bf70    data: 00000003
  addr: 2004bf74    data: 2001be87
  addr: 2004bf78    data: 00000000
  addr: 2004bf7c    data: 000f423d
  addr: 2004bf80    data: 0651060c
  addr: 2004bf84    data: 00000000
  addr: 2004bf88    data: 0000000f
  addr: 2004bf8c    data: 00000000
  addr: 2004bf90    data: 00000001
  addr: 2004bf94    data: 2001c5cb
  addr: 2004bf98    data: 54455342
  addr: 2004bf9c    data: 2004bfe4
  addr: 2004bfa0    data: 2004c004
  addr: 2004bfa4    data: ffffdfff
  addr: 2004bfa8    data: 00000000
  addr: 2004bfac    data: 00015eab
  addr: 2004bfb0    data: 0000000f
  addr: 2004bfb4    data: 00000010
  addr: 2004bfb8    data: 00000010
  addr: 2004bfbc    data: 000000ff
  addr: 2004bfc0    data: 20030920
  addr: 2004bfc4    data: 20030908
  addr: 2004bfc8    data: 2003b264
  addr: 2004bfcc    data: 00013174
  addr: 2004bfd0    data: 00000000
  addr: 2004bfd4    data: 00000000
  addr: 2004bfd8    data: 00000000
  addr: 2004bfdc    data: 00000000
  addr: 2004bfe0    data: 00000000
  addr: 2004bfe4    data: 00000000
  addr: 2004bfe8    data: 00000000
  addr: 2004bfec    data: 00000000
  addr: 2004bff0    data: 00000000
  addr: 2004bff4    data: 00000000
  addr: 2004bff8    data: 00000000
  addr: 2004bffc    data: 00000000
  addr: 2004c000    data: 00000000
  addr: 2004c004    data: 00000000
  addr: 2004c008    data: 00000000
  addr: 2004c00c    data: 00000000
  addr: 2004c010    data: 00000000
  addr: 2004c014    data: 00000000
  addr: 2004c018    data: 00000000
  addr: 2004c01c    data: 00000000
  addr: 2004c020    data: 00000000
  addr: 2004c024    data: 00000000
  addr: 2004c028    data: 00000000
  addr: 2004c02c    data: 00000000
  addr: 2004c030    data: 00000000
  addr: 2004c034    data: 00000000
  addr: 2004c038    data: 00000000
  addr: 2004c03c    data: 00000000
  addr: 2004c040    data: 00000000
  addr: 2004c044    data: 00000000
  addr: 2004c048    data: 00000000
  addr: 2004c04c    data: 00000000
  addr: 2004c050    data: 00000014
  addr: 2004c054    data: 00000001
  addr: 2004c058    data: 20030920
  addr: 2004c05c    data: 20030908
  addr: 2004c060    data: 2003b264
  addr: 2004c064    data: 00013174
  addr: 2004c068    data: 00013188
  addr: 2004c06c    data: 00000598
  addr: 2004c070    data: 06510600
  addr: 2004c074    data: 2001df7b
  addr: 2004c078    data: 00000001
  addr: 2004c07c    data: 00000000
  addr: 2004c080    data: 00000000
  addr: 2004c084    data: 200167f1
  addr: 2004c088    data: 00000001
  addr: 2004c08c    data: 00000014
  addr: 2004c090    data: 00000004
  addr: 2004c094    data: 00000004
  addr: 2004c098    data: 200057f1
  addr: 2004c09c    data: 2004c0f0
  addr: 2004c0a0    data: 000143c8
  addr: 2004c0a4    data: 2002aee5
  addr: 2004c0a8    data: 2002aa43
  addr: 2004c0ac    data: 200329a8
  addr: 2004c0b0    data: 00000004
  addr: 2004c0b4    data: 2002aa5b
  addr: 2004c0b8    data: 2003aa40
  addr: 2004c0bc    data: 00000004
  addr: 2004c0c0    data: 00000000
  addr: 2004c0c4    data: 2002b1d5
  addr: 2004c0c8    data: 2002a965
  addr: 2004c0cc    data: 00000000
  addr: 2004c0d0    data: 00000000
  addr: 2004c0d4    data: 2002a97b
  addr: 2004c0d8    data: 20015717
  addr: 2004c0dc    data: 2002f644
  addr: 2004c0e0    data: 00000000
  addr: 2004c0e4    data: 00000000
  addr: 2004c0e8    data: 0001094c
  addr: 2004c0ec    data: 20005825
====================================
Saved register info:
  R0 : 0000000f  R1 : fffffff9  R2 : 4c070598  R3 : 00000003
  R12: 00000008  LR : 0000000f  PC : 00000000  PSR: 20024a1f
==============================================================
CFSR:00008200
HFSR:00000000
DFSR:00000000
BFAR:4c070598
==============================================================
Call back trace in stack is:
Max depth is: 0xe
call_stack_pc[0]: 0x00000000
call_stack_pc[1]: 0x20024a1e
call_stack_pc[2]: 0x2001be86
call_stack_pc[3]: 0x2001c5ca
call_stack_pc[4]: 0x2001df7a
call_stack_pc[5]: 0x200167f0
call_stack_pc[6]: 0x2002aee4
call_stack_pc[7]: 0x2002aa42
call_stack_pc[8]: 0x2002aa5a
call_stack_pc[9]: 0x2002b1d4
call_stack_pc[10]: 0x2002a964
call_stack_pc[11]: 0x2002a97a
call_stack_pc[12]: 0x20015716
call_stack_pc[13]: 0x20005824
==============================================================
Show more call stack info by run:
addr2line -e se_fw.elf -a -f 0x00000000 0x20024a1e 0x2001be86 0x2001c5ca 0x2001df7a 0x200167f0 0x2002aee4 0x2002aa42 0x2002aa5a 0x2002b1d4 0x2002a964 0x2002a97a 0x20015716 0x20005824 
==============================================================
Fault in r�[BROM]# CiX Bootrom Sky1 Alpha1.0
1 Like