Project

General

Profile

Bug #8047

XG-2758 - Coreboot Upgrade - Different ROM size

Added by Clinton Cory over 2 years ago. Updated 10 months ago.

Status:
Resolved
Priority:
Normal
Category:
Coreboot
Target version:
-
Start date:
11/03/2017
Due date:
% Done:

0%

Estimated time:
Affected Version:
2.4.x
Affected Architecture:

Description

XG-2758s have 8M and 16M ROMs. There is a J24 jumper to set the coreboot BIOS to either 8M or 16M. By default, the XG-2758 comes in with J24 configured for 8M. The build team upgrades the BIOS on both 8M and 16M during the build/install process. After both are upgraded, the system should have J24 set for 16M.

At least two individuals have reported issue when trying to upgrade their coreboot on the XG-2758 through the Coreboot Upgrade package. The first report (#32447) sounded like either the BIOS failed over to 8M (which I don't think happens automatically without changing J24 configuration) and the second report ($32910) was definitely a sizing issue.

The coreboot upgrade package should differentiate between 8M and 16M coreboot so that it applies the proper coreboot upgrade ROM. Currently we're assuming all XG-2758s are set to 16M but it appears that's not the case across the board.

If J24 is configured for 8M and you attempt to upgrade with the coreboot upgrade package it will fail to upgrade with the following error: "Incorrect Flash Image Size"
16M coreboot ROMs appear like so in kenv
smbios.bios.version="ADI_RCC-01.00.00.18-nodebug-16m"

8M coreboot ROMs do not include the "-16m" part

capture_pfsense.jpg (60.2 KB) capture_pfsense.jpg 16M Clinton Cory, 11/13/2017 09:53 AM
pfsense.jpg (67.1 KB) pfsense.jpg 8M Clinton Cory, 11/13/2017 09:53 AM
J30_2.jpg (141 KB) J30_2.jpg Clinton Cory, 11/13/2017 10:40 AM
J30.jpg (223 KB) J30.jpg Clinton Cory, 11/13/2017 10:40 AM

History

#1 Updated by Renato Botelho over 2 years ago

  • Target version set to 2.4.2

#2 Updated by Clinton Cory over 2 years ago

Example screenshots attached.

#3 Updated by Clinton Cory over 2 years ago

Example report from a customer (serial omitted):
Running 2.4.1 and trying to update Netgate Coreboot from 01.00.00.09 to 01.00.00.18.

Incorrect flash image file size.
Failed to update OEM section, exiting ...
Updating flashing ...
SN: XXXXX
Serial Number Read from Flash XXXXX

Another report from the same customer - may indicate a deeper issue at play, odd since we didn't receive reports of this prior to .18*:

The Coreboot of the other unit upgraded succesfully from 01.00.00.14 to 01.00.00.15. I'm doing the firmware upgrade in couple of minutes on that one too.

After firmware upgrade on other unit, the Coreboot version is now downgraded to 01.00.00.09. After trying to update, the same problem occurs.

Incorrect flash image file size.
Failed to update OEM section, exiting ...
Updating flashing ...
SN: XXXXXXXX
Serial Number Read from Flash XXXXXXXX

Serial omitted

#4 Updated by Clinton Cory over 2 years ago

Here is an older report from another customer who initially reported this:
After trying to upgrade coreboot from 01.00.00.15 to 01.00.00.18. The system displays question marks on the serial number (in the dashboard):
Serial: ����������
And appears to go backwards on the firmware version. It says it is currently running version 01.00.00.09.

The customer provided screenshots of their jumper configuration and it appears to be correct (see attached photos).

It seems as though the v18 upgrade is triggering a downgrade or fail-over to 8M for some reason.

#5 Updated by Jose Luis Duran over 2 years ago

After powering off/on the equipment, the system shows the latest version number with the proper serial (I had no physical access to the device at that time).

I suspect, for this platform (RCC -- not RCCVE, RCCVE works perfectly), the adi_powercycle is not working properly.

EDIT: Sorry, I see there is no adi_powercycle for the RCC platform (that reboot apparently is not good enough):

https://github.com/pfsense/FreeBSD-ports/blob/237f203ce317a86824bd4544babf750d2a7c7412/sysutils/pfSense-pkg-Netgate_Coreboot_Upgrade/files/usr/local/www/netgate_coreboot_upgrade.php#L97

#6 Updated by Clinton Cory over 2 years ago

Update from the customer in my previous comment:

The BIOS now shows the latest version. Apparently a physical shutdown (restart) is required. Or the adi_powercycle is not working properly for that platform.

The “scrambled” serial number appeared after the reboot initiated by the firmware upgrade process of the Netgate_Coreboot_Upgrade pfSense-package, as I had no physical access to the device.

Today, the person who took the pictures had to power off and unplug the device, producing the needed power cycle. After that, it showed the serial number and firmware version correctly.

#7 Updated by Clinton Cory over 2 years ago

Update from the customer in my initial post:

Confirmed. After power cycling, the version reported was 01.00.00.18.

#8 Updated by Renato Botelho over 2 years ago

According ADI engineers XG-2758 requires a physical power cycle after upgrade coreboot and because package tries to reboot it, it ends up booting on 2nd flash (8m).

Package must be changed to doesn't reboot but instead add a warning on dashboard asking user to power cycle it.

#9 Updated by Jim Pingle over 2 years ago

  • Category set to Coreboot
  • Target version deleted (2.4.2)

#10 Updated by Tino Zidore over 2 years ago

I am experiencing a problem similar to this.

except my XG-2758 is rebooting by it self after upgrade. And it stays on version ADI_RCC-01.00.00.09-nodebug, not ADI_RCC-01.00.00.18.

I have tried manual power cycle but no luck.

#11 Updated by Tino Zidore over 2 years ago

It worked just had to unplug the power instead of pushing the red button the back.

#12 Updated by Jim Pingle 10 months ago

  • Status changed from New to Resolved

Also available in: Atom PDF