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!