**********************************************
** F31 Bios Documentation and guide**
**********************************************
Name convention is 
 seco_XElite_F31_bios_<ORIGINAL_TAG>_<BIOS_VERSION>_<RELEASE_DATE>[_<ADDITIONAL>].bin

Where:
  ORIGINAL_TAG       Is original BIOS manufacturer version
  BIOS_VERSION       Is SECO BIOS version in the format Major.Minor.Patch
  RELEASE_DATE       Is BIOS Release Date in the format yyyymmdd
  ADDITIONAL         Is additional configuration(s) if needed

  
  
Within the BIOS package, you may find several binary files intended for different use cases. The following section describes each binary and explain when it should be used.

- bios_signed.bin: Signed BIOS image intended for internal flash programming. This binary can be used to update the BIOS using the Bios Tools.
- bios_unsigned.bin: Unsigned BIOS image that can be programmed directly using an external flash programmer.
- bios_external.bin/bios_external_signed.bin: BIOS intended for external flash. 
    - bios_external.bin: Unsigned BIOS image that can be programmed directly using an external flash programmer.
    - bios_external_signed.bin: Signed BIOS image that can be used to update the BIOS using the Bios Tools.
- bios_compliance.bin: BIOS used for system integrity tests.

***********************************************
- You can find the required Bios Tools for the update procedure at:
Bios Tools coming Soon 

- You can find your F31 general info at:
https://developer.seco.com/hardware/product/computer-on-modules/com-express-modules/som-come-ct6-dragonwing-iq-x-f31

***********************************************
**                BIOS update                **
***********************************************
-> AFU update via UEFI Shell (also called EFI Shell)
    - Copy the AFU EFI tool and the BIOS binary into your USB drive.
    - Note: To update your bios using UEFI Shell you need an UEFI bootable USB. You can create one by following this guide:
    https://developer.seco.com/how-to/uefi-bootable-usb
    - Boot the device and enter BIOS setup by pressing ESC.
    - Set and save bios settings according to the bios_tool readme 

    - In the UEFI Shell:
        - Identify the USB filesystem (fs0:, fs1:, â€¦) in the device mapping table (removable disk).
        - Enter the filesystem (example: fs1:).
        - Move to the folder containing the tool and BIOS file.
        - Run the update script: bios_update.nsh BIOSbinary.XXX
        - When the tool reports success, reboot the system.

-> AFU update using Windows
    - Copy the updater tool and the BIOS binary into a folder on the Windows disk.
    - Open Command Prompt as Administrator.
    - cd to the folder with the tools and BIOS file.
    - Run:
      bios_updater_YYY.bat BIOSbinary.XXX

    - note: Ensure the full package contents are present (script + driver + AFU Windows executable), as provided by SECO

-> AFU update using Linux
    - Copy the AFU Linux tool + script and BIOS binary into a folder on the Linux system.
    - Open a terminal as root (or use sudo) and cd to that folder.
    - Ensure dependencies are installed. You need gcc/build tools and the kernel headers for your running kernel. 
    - For example, in Debian/Ubuntu: 
      sudo apt install build-essential linux-headers-$(uname -r)

    - Make the updater script executable: 
      chmod +x bios_updater_YYY.sh

    - Run the update:
      ./bios_updater_YYY.sh BIOSbinary.XXX

    - note: YYY depends on 32-bit / 64-bit package.
      Ensure both bios_updater_YYY.sh and the corresponding EtaAfuOemLnxXX binary are present in the folder.

- If you need further informations on how to update your bios using AFU:
https://developer.seco.com/how-to/bios-update-afu
        




************************************************



