Skip to content

Support system can re-init flash at any time after booting up#258

Closed
DelphineChiu wants to merge 1 commit into
facebook:main_v2from
Wiwynn:Ren/main_v2/BIOS_flash_binding
Closed

Support system can re-init flash at any time after booting up#258
DelphineChiu wants to merge 1 commit into
facebook:main_v2from
Wiwynn:Ren/main_v2/BIOS_flash_binding

Conversation

@DelphineChiu

Copy link
Copy Markdown

Summary:

  1. Add a kernel patch to support the re-init-support property for re-initing spi flash at runtime
  2. Set the default status of the BIOS SPI selection pin to "L"(connected to PCH)
  3. BIC sets the BIOS SPI selection pin to "H" while updating BIOS firmware.
    And then BIC sets to default status after updating successfully.

Test Plan:

  1. Build Code: pass
  2. Update BIOS firmware: pass
  3. Check ME self test result after clearing CMOS: pass

Log:

  1. Update BIOS firmware
    root@bmc-oob:# fw-util slot3 --version|grep BIOS
    BIOS Version: Y35CLE12
    root@bmc-oob:
    # fw-util slot3 --update bios /tmp/Y35CLE11.bin
    Checking if the server is ready...
    Server power status: 1
    Powering off the server (cmd 4)...
    Server power status: 0
    Putting ME into recovery mode...
    Switching BIOS SPI MUX for update...
    slot_id: 3, comp: 9, intf: 0, img: /tmp/Y35CLE11.bin, force: 0
    Init libusb Successful!
    ...
    Updating BIOS, dedup is off, verification is off.
    1024 blocks (1024 written, 0 skipped)...finished.
    Elapsed time: 265 sec.
    Switching BIOS SPI MUX for default value...
    Doing ME Reset...
    Power-cycling the server...
    Upgrade of slot3 : bios succeeded
    root@bmc-oob:~# fw-util slot3 --version|grep BIOS
    BIOS Version: Y35CLE11
  2. Check ME self test result after clearing CMOS
    root@bmc-oob:# bic-util slot3 --clear_cmos
    Performing CMOS clear
    root@bmc-oob:
    # me-util slot3 0x18 0x04
    55 00
@facebook-github-bot facebook-github-bot added the CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. label Apr 20, 2022
@facebook-github-bot

Copy link
Copy Markdown
Contributor

@GoldenBug has imported this pull request. If you are a Meta employee, you can view this diff on Phabricator.

Comment thread common/lib/util_spi.c Outdated
Summary:
1. Add a kernel patch to support the re-init-support property for re-initing spi flash at runtime
2. Set the default status of the BIOS SPI selection pin to "L"(connected to PCH)
3. BIC sets the BIOS SPI selection pin to "H" while updating BIOS firmware.
   And then BIC sets to default status after updating successfully.

Test Plan:
1. Build Code: pass
2. Update BIOS firmware: pass
3. Check ME self test result after clearing CMOS: pass

Log:
1. Update BIOS firmware
root@bmc-oob:~# fw-util slot3 --version|grep BIOS
BIOS Version: Y35CLE12
root@bmc-oob:~# fw-util slot3 --update bios /tmp/Y35CLE11.bin
Checking if the server is ready...
Server power status: 1
Powering off the server (cmd 4)...
Server power status: 0
Putting ME into recovery mode...
Switching BIOS SPI MUX for update...
slot_id: 3, comp: 9, intf: 0, img: /tmp/Y35CLE11.bin, force: 0
Init libusb Successful!
...
Updating BIOS, dedup is off, verification is off.
1024 blocks (1024 written, 0 skipped)...finished.
Elapsed time:  265   sec.
Switching BIOS SPI MUX for default value...
Doing ME Reset...
Power-cycling the server...
Upgrade of slot3 : bios succeeded
root@bmc-oob:~# fw-util slot3 --version|grep BIOS
BIOS Version: Y35CLE11
2. Check ME self test result after clearing CMOS
root@bmc-oob:~# bic-util slot3 --clear_cmos
Performing CMOS clear
root@bmc-oob:~# me-util slot3 0x18 0x04
55 00
@RenChen-wiwynn RenChen-wiwynn force-pushed the Ren/main_v2/BIOS_flash_binding branch from b476186 to 7872292 Compare April 22, 2022 00:13
@facebook-github-bot

Copy link
Copy Markdown
Contributor

@DelphineChiu has updated the pull request. You must reimport the pull request before landing.

facebook-github-bot pushed a commit that referenced this pull request Apr 22, 2022
Summary:
1. Add a kernel patch to support the re-init-support property for re-initing spi flash at runtime
2. Set the default status of the BIOS SPI selection pin to "L"(connected to PCH)
3. BIC sets the BIOS SPI selection pin to "H" while updating BIOS firmware.
   And then BIC sets to default status after updating successfully.

Pull Request resolved: #258

Test Plan:
1. Build Code: pass
2. Update BIOS firmware: pass
3. Check ME self test result after clearing CMOS: pass

Log:
1. Update BIOS firmware
root@bmc-oob:~# fw-util slot3 --version|grep BIOS
BIOS Version: Y35CLE12
root@bmc-oob:~# fw-util slot3 --update bios /tmp/Y35CLE11.bin
Checking if the server is ready...
Server power status: 1
Powering off the server (cmd 4)...
Server power status: 0
Putting ME into recovery mode...
Switching BIOS SPI MUX for update...
slot_id: 3, comp: 9, intf: 0, img: /tmp/Y35CLE11.bin, force: 0
Init libusb Successful!
...
Updating BIOS, dedup is off, verification is off.
1024 blocks (1024 written, 0 skipped)...finished.
Elapsed time:  265   sec.
Switching BIOS SPI MUX for default value...
Doing ME Reset...
Power-cycling the server...
Upgrade of slot3 : bios succeeded
root@bmc-oob:~# fw-util slot3 --version|grep BIOS
BIOS Version: Y35CLE11
2. Check ME self test result after clearing CMOS
root@bmc-oob:~# bic-util slot3 --clear_cmos
Performing CMOS clear
root@bmc-oob:~# me-util slot3 0x18 0x04
55 00

Reviewed By: garnermic

Differential Revision: D35820093

Pulled By: GoldenBug

fbshipit-source-id: 99c07e8743bcaf27c2c07af8f3a42fa9f3da7690
@GoldenBug GoldenBug closed this Apr 22, 2022
LoraLin1 pushed a commit to Wiwynn/OpenBIC that referenced this pull request Apr 25, 2022
…ok#258)

Summary:
1. Add a kernel patch to support the re-init-support property for re-initing spi flash at runtime
2. Set the default status of the BIOS SPI selection pin to "L"(connected to PCH)
3. BIC sets the BIOS SPI selection pin to "H" while updating BIOS firmware.
   And then BIC sets to default status after updating successfully.

Pull Request resolved: facebook#258

Test Plan:
1. Build Code: pass
2. Update BIOS firmware: pass
3. Check ME self test result after clearing CMOS: pass

Log:
1. Update BIOS firmware
root@bmc-oob:~# fw-util slot3 --version|grep BIOS
BIOS Version: Y35CLE12
root@bmc-oob:~# fw-util slot3 --update bios /tmp/Y35CLE11.bin
Checking if the server is ready...
Server power status: 1
Powering off the server (cmd 4)...
Server power status: 0
Putting ME into recovery mode...
Switching BIOS SPI MUX for update...
slot_id: 3, comp: 9, intf: 0, img: /tmp/Y35CLE11.bin, force: 0
Init libusb Successful!
...
Updating BIOS, dedup is off, verification is off.
1024 blocks (1024 written, 0 skipped)...finished.
Elapsed time:  265   sec.
Switching BIOS SPI MUX for default value...
Doing ME Reset...
Power-cycling the server...
Upgrade of slot3 : bios succeeded
root@bmc-oob:~# fw-util slot3 --version|grep BIOS
BIOS Version: Y35CLE11
2. Check ME self test result after clearing CMOS
root@bmc-oob:~# bic-util slot3 --clear_cmos
Performing CMOS clear
root@bmc-oob:~# me-util slot3 0x18 0x04
55 00

Reviewed By: garnermic

Differential Revision: D35820093

Pulled By: GoldenBug

fbshipit-source-id: 99c07e8743bcaf27c2c07af8f3a42fa9f3da7690
facebook-github-bot pushed a commit that referenced this pull request Apr 26, 2022
Summary:
1. Add a kernel patch to support the re-init-support property for re-initing spi flash at runtime
2. Set the default status of the BIOS SPI selection pin to "L"(connected to PCH)
3. BIC sets the BIOS SPI selection pin to "H" while updating BIOS firmware.
   And then BIC sets to default status after updating successfully.

Pull Request resolved: #258

Test Plan:
1. Build Code: pass
2. Update BIOS firmware: pass
3. Check ME self test result after clearing CMOS: pass

Log:
1. Update BIOS firmware
root@bmc-oob:~# fw-util slot3 --version|grep BIOS
BIOS Version: Y35CLE12
root@bmc-oob:~# fw-util slot3 --update bios /tmp/Y35CLE11.bin
Checking if the server is ready...
Server power status: 1
Powering off the server (cmd 4)...
Server power status: 0
Putting ME into recovery mode...
Switching BIOS SPI MUX for update...
slot_id: 3, comp: 9, intf: 0, img: /tmp/Y35CLE11.bin, force: 0
Init libusb Successful!
...
Updating BIOS, dedup is off, verification is off.
1024 blocks (1024 written, 0 skipped)...finished.
Elapsed time:  265   sec.
Switching BIOS SPI MUX for default value...
Doing ME Reset...
Power-cycling the server...
Upgrade of slot3 : bios succeeded
root@bmc-oob:~# fw-util slot3 --version|grep BIOS
BIOS Version: Y35CLE11
2. Check ME self test result after clearing CMOS
root@bmc-oob:~# bic-util slot3 --clear_cmos
Performing CMOS clear
root@bmc-oob:~# me-util slot3 0x18 0x04
55 00

Reviewed By: garnermic

Differential Revision: D35941627

Pulled By: GoldenBug

fbshipit-source-id: 851b060ccd91e92d3bc3e45fd3194e0540c32205
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed.

4 participants