[O6N] BIOS changelog

Hi, where can i find changelog on bios versions (especialy new one 1.2.3) for orion o6n ?

You can check the changes in github.
From what I saw, there is only a few line to add the support of another ram manufacturer:

  • add new Hive 48G config
  • increase Hive mem to 5500 MT/s

So I think safe to say that you do not need to upgrade your board.

Since the firmware source is spread across several repos and changes can be subtle, I don’t subscribe to the “just check GitHub” position, so I’ve been trying to summarise changes for everyone’s benefit!

  • O6N firmware 1.2.1 → 1.3.0 user-visible changes:

    1.2.1 → 1.2.2:

    • CPU performance reporting was updated per cluster, so Linux gets more accurate data for scaling and monitoring;

    • M.2 fan control was enabled for O6N hardware v1.20+, improving cooling for SSDs or add-in cards;

    • Some Hive Semi memory profiles were raised to DDR5500, giving affected 16GB/48GB units more potential bandwidth.

    1.2.2 → 1.2.3:

    • A 48GB Hive Semi v1.2 memory profile was added, while the generic 48GB profile was reverted.

    1.2.3 → 1.2.4:

    • That special 48GB profile was removed and several Hive Semi profiles were lowered to DDR5000;

    • PCIe bus numbering was corrected, reducing risk of PCIe resource/enumeration problems;

    • The SCMI setup text now explains that the ACPI SCMI option is needed for CIX PPA kernels.

    1.2.4 → 1.3.0:

    • The platform moves to the newer 26Q2 firmware base, affecting low-level boot, power, memory, and secure-world behaviour;

    • Firmware updates now protect the SPI variable area, making updates less likely to lose BIOS settings or boot entries;

    • PCIe is no longer exposed behind an OS-visible SMMU/IOMMU, which reduces DMA isolation and IOMMU passthrough options;

    • Display, timer, thermal, USB, PCIe power, and device-tree CPU-pruning descriptions were improved for cleaner Linux hardware handling;

    • SMBIOS firmware inventory reporting was fixed, so tools like dmidecode should show firmware component versions more accurately.

  • O6 firmware 1.2.1 → 1.3.0 user-visible changes:

    1.2.1 → 1.2.2:

    • CPU performance reporting updated corrected per cluster, so Linux gets more accurate data for scaling and monitoring;

    • UFS setup text was clarified, warning that UFS is unavailable on newer hardware revisions.

    1.2.2 → 1.2.3:

    1.2.3 → 1.2.4:

    • PCIe bus numbering was corrected, reducing risk of PCIe resource/enumeration problems;

    • The SCMI setup text now explains that the ACPI SCMI option is needed for CIX PPA kernels.

    1.2.4 → 1.3.0:

    • The platform moves to the newer 26Q2 firmware base, affecting low-level boot, power, memory, and secure-world behaviour;

    • A structured TrustZone/TFA config blob is now present, giving firmware a defined place to carry secure-world settings;

    • Firmware updates now protect the SPI variable area, making updates less likely to lose BIOS settings or boot entries;

    • PCIe is no longer exposed behind an OS-visible SMMU/IOMMU, which reduces DMA isolation and IOMMU passthrough options;

    • Timer, display, thermal, USB, PCIe power, and device-tree CPU-pruning descriptions were improved for cleaner Linux hardware handling;

    • O6 audio exposure changed, with HDA enabled and some I2S resources no longer advertised, so Linux may show different audio devices/routes;

    • GPU thermal reporting now includes a critical trip point;

    • Hard-coded Radxa SMBIOS CPU/cache tables were removed in favour of common generated data, avoiding stale duplicate inventory strings;

    • SMBIOS firmware inventory reporting was fixed, so tools such as dmidecode should show firmware component versions more accurately;

    • O6 now enables memory-configuration update support, so firmware can update the memory-config payload;

    • Reset and boot-phase bookkeeping changed, improving fallback reset behaviour and diagnostic tracking.

  • Common firmware 1.3.0 → 1.3.1 user-visible changes:

    • Display ACPI endpoint names were corrected, improving the chance that Linux binds the display pipeline cleanly;

    • The Radxa EFI Advanced menu now exposes an SMMU Enable option, letting users switch between normal IORT and no-SMMU IORT; PCIe SMMU nodes still remain compile-time disabled, so this does not restore PCIe IOMMU support;

    • The bootloader3 package size was tightened to match the smaller UEFI image layout, improving flash/update image consistency.

    O6N firmware 1.3.0 → 1.3.1 user-visible changes:

    • O6N now enables memory-configuration update support, so firmware has the backend needed to update the memory-config payload;

    • O6N now enables more capsule/FMP firmware-update plumbing, making OS-visible firmware inventory/update support more complete;

    • O6N audio plumbing was expanded: the I2S MC driver is enabled, sound clock/reset data is described, and 40-pin MAX98357A support is staged but disabled by default;

    • O6N camera and IOMUX descriptions were corrected, reducing camera power/pinmux issues and avoiding conflicts with the new I2S4 pin group;

    • The UEFI/bootloader3 image sizes were tightened, improving flash/update image layout consistency;

    • O6N now records boot-phase end at ReadyToBoot, improving boot diagnostics and performance logging.

    O6 firmware 1.3.0 → 1.3.1 visible changes:

    • O6 USB VBUS GPIOs were split into separate ACPI pin groups, making USB port power control easier for firmware and the OS to describe correctly.

    Personal recommendation: Since PCIe SMMU is disabled, use of 1.3.x firmware may to lead to silent data corruption.

4 Likes