Skip to content

vangoghynot/FirmwareResources

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 

Repository files navigation

FirmwareResources

This document list all firmware related resources.

Firmware and OS Specifications/Standards Maintained by TonyLo

Official Sites

List of Organizations, Company, Govermant sites which are firmware and OS related.

Name URL Specifications
AMD https://www.amd.com
AMPERE Computing https://amperecomputing.com/
AMI https://www.ami.com Legacy BIOS
UEFI
BMC
OpenBMC
ARM https://www.arm.com ARM Architecture
ARM TrustZone
Bluetooth https://www.bluetooth.com Bluetooth Specifications
Bluetooth Profiles
Connectivity Standard Alliance https://csa-iot.org/ Zigbee
CoreBoot http://www.coreboot.org
CXL https://www.computeexpresslink.org/ Compute Express Link
DMTF https://www.dmtf.org -CADF
-CDM
-CLOUD
-CIM
-CMDBf
-DASH
-NETMAN
-OVF
-PMCI
-REDFISH
-SMASH
-SMBIOS
-VMAN
-WBEM
-WS-MAN
FIDO Alliance https://fidoalliance.org/ User Authentication
FiRa https://www.firaconsortium.org/ FiRa Consortium, UWB promoter group
IETF - Internet Exchange Task Force https://www.ietf.org/ WG list
GNU https://www.gnu.org/ GNU OS, Software, Tools, Compilers
HDMI https://www.hdmi.org HDMI
INCITS T10 https://www.t10.org SCSI
SAS
INCITS T13 https://www.t13.org ATA/ATAPI
Intel https://www.intel.com Intel Processor/Chipsets
XHCI
eSPI
AC97
ITE https://www.ite.com.tw/en EC, SensorHub
JEDEC https://www.jedec.org Microelectronics Standard
eMMC
UFS
Linaro https://www.linaro.org/ ARM and open source projects
MCC https://www.mcc-us.com/ I2C Bus Analyzer
Microchip https://www.microchip.com/ EC, AI
MIPI Alliance https://www.mipi.org MIPI
Microsoft https://www.microsoft.com Microsoft Windows
NIST https://www.nist.gov NIST Standards
NVM Express https://www.nvmexpress.org NVMe
Nuvoton https://www.nuvoton.com/ EC, AI
NXP https://www.nxp.com/
OCP https://www.opencompute.org/ Open Compute Project
Datacenter, 5G, Telco, DC-MHS
OpenBIOS https://www.openbios.info/
OpenBMC https://www.openbmc.org/ OpenBMC
Open Network https://opennetworking.org/
Open RAN https://telecominfraproject.com/openran/
Open RAN Policy Coalition
O-RAN Alliance https://www.o-ran.org/
PCI-SIG https://pcisig.com/ PCI
PCI Express
SATA-IO https://sata-io.org/ Serial ATA
SD Association https://www.sdcard.org SDCard
MicroSD
SD Express
SDIO
iSDIO
SOAFFE https://www.soafee.io/
Trusted Computing Group https://trustedcomputinggroup.org/ TPM
u-bmc https://u-bmc.readthedocs.io/
U-Boot https://www.denx.de/wiki/U-Boot
UEFI https://www.uefi.org UEFI
UEFI PI
UEFI SCT
ACPI
USB https://www.usb.org USB Specification
USB Device Classes
USB PD
VESA https://vesa.org/ VESA spec

Firmware AI

Sites URL Notes
LiteRT/Tensorflow Lite https://ai.google.dev/edge/litert
tinyML https://www.tinyml.org/ Tiny ML for MCUs
Pytorch https://pytorch.org/executorch-overview ExecuTorch
Rasberry Pi AI https://www.raspberrypi.org/courses/ai-and-machine-learning
Microchip AI https://www.microchip.com/en-us/solutions/technologies/machine-learning
Nuvoton AI https://www.nuvoton.com/ai/

Firmware and OS Architecture

Firmware and OS architecture sites

Firmware/OS Architecture URL Notes
ACRN Hypervisor https://projectacrn.org/ ACRN Hypervisor
ARM Trusted Firmware https://www.trustedfirmware.org/ TF-A, TF-M, OP-TEE, TF-RMM, Hafnium
Caliptra https://github.com/chipsalliance/Caliptra RoT
CoreBoot http://www.coreboot.org
Global Platform https://globalplatform.org/ TEE
Intel Slimboot https://www.intel.com.tw/content/www/tw/zh/design/products-and-solutions/technologies/slim-bootloader/overview.html
Linux Boot https://www.linuxboot.org/
OpenBIOS https://www.openbios.info/
OpenBMC https://www.openbmc.org/
Open System Firmware https://www.opencompute.org/projects/open-system-firmware
Project Mu https://microsoft.github.io/mu/ Microsoft Open Source Firmware
SeaBIOS https://www.seabios.org Legacy BIOS
SeaVGABios https://seabios.org/SeaVGABIOS Open Source VGA BIOS
u-bmc https://github.com/u-root/u-bmc
U-Boot https://www.denx.de/wiki/U-Boot
USF https://www.intel.com/content/www/us/en/developer/articles/technical/universal-scalable-firmware.html/ Universal Scalable Firmware
UEFI Firmware http://www.uefi.org
UWB Alliance https://uwballiance.org/
WiMedia Alliance https://www.wimedia.org
Zephyr https://zephyrproject.org/ Zephyr RTOS

Specifications

Bus Technology

Specification URL Notes
1394/Firewire OHCI v1.1
AC97 Specification ICH7 AC97 Programmers Manual
Access Bus Specification v3.0
AGP Specification v1.0
v3.0
AGP Pro Specification v1.1a
ATA/ATAPI Specification -ACS-4 Rev.14
-ATA8 ACS
ATA8 ACS2
-ATAPI for CDROM 8020i rev2.6
-ATA for Removable 8070i
Bluetooth -Bluetooth Specifications List
-Core Specification 6.0
-Core Specification 5.4
-Core Specification 5.3
-Core Specification 5.2
-CSS 9
CAN Bus/CAN-FD -CAN-FD Information
-CAN-FD v1.0
CXL https://www.computeexpresslink.org/ Compute Express Link
eMMC Specification v5.1a
HDAudio Specification v1.0a
HDMI Specification v2.1
I2C Bus Specification v6.0
I2S Specification June 5, 1996
I3C Specification] -MIPI I3C Basic v1.0
-MIPI I3C v1.1
-NXP I3C Training Video
LPC Specification v1.1
MIPI Specification click
NVM Express(NVMe) -All Specifications
-NVMe Command Set Specifications
-NVMe Transport Specificaions
-NVMe-MI Specifications
-NVM Express Base Specification 2.0a
-NVMe Management Interface v1.1a
PCI/PCIExpress -Specification List
-PCI Express Base Specification Revision 7.0
-PCI Express Base Specification Revision 6.2
-PCI Express M.2 Specification Revision 5.1
-PCI Express U.2 Specification Revision 5.0
-PCI Firmware Specification Revision 3.3
-PCI Code and ID Assignment Revision 1.16
SCSI Specification click
SD/SDIO/SD Express -All Specifications
-Latest WhitePapers
-SDIO Simplified Specification v3.0
-SD Host Controller Specification v4.20
-iSDIO Simplified Specification v1.10
Serial ATA -SATA rev3.5
-AHCI v1.3.1
-AHCI v1.3
-Port Multiplier
SMBus Specification -SMBus Specification v3.2
-SMBus Specification v3.1
-SMBus BIOS Specification v1.0
SPI Bus Specification click
Thunderbolt click
eSPI Bus Specification v1.0
UFS Specification click
USB Bus Specifications -USB Specifications List
-USB Bus Specifications v2.0
-USB Bus Specifications v3.2
-USB Bus Specifications v4.x
USB Device Class Specifications click
USB Host Controller Specification -UHCI
-OHCI v1.0a
-EHCI v1.1
-XHCI rev1.2
UWB UWB Wiki
UWB Standards and Organizations
WiFi Specification click
Zigbee click

Remote Management Specifications

Specification URL Notes
DASH Specification (DMTF) -Information
-DASH Implementation Requirements 1.2.1
-WS-Management CIM Binding Specification 1.2.0
-Systems Management Architecture for Mobile and Desktop Hardware White Paper 1.1.0
-DASH Delivers Multi-Vendor Management for Desktop and Mobile Systems 1.0.0
Intel AMT Information
IPMI Specification -Information
-IPMI v2.0 rev. 1.1
Redfish Specification (DMTF) -Information
-Redfish Release 2024.3 Overview
-Redfish Release 2024.2 Overview
-Redfish Release 2024.1 Overview


--------Other Redfish Specifications-----------------
-Redfish Specification 1.21.0
-Redfish Host Interface Specification 1.3.1
Swordfish Specification (SNIA) -Information
-click
Remote Desktop/Connection Protocol URL Notes
ANSI/VT100 click
SSH click
RDP click
VNC/RFB -IETF RFB Protocol
-RFB Protocol - Github

Industry Standard Specifications

Specification URL Notes
ACPI -ACPI Specification List
-(v6.5 PDF)-(v6.5 HTML)
-(v6.4 Errata A PDF)-(v6.4 Errata A HTML)
-v6.4 PDF - January 2021
acpi specifications, acpi tables
APM (Advanced Power Management) v1.2 - Feb 1996
ASF (Alert Standard Format)(DMTF) -ASF v2.0 - 23/Apr/2003
BBS (Bios Boot Specification) v1.01 - 11 Jan 1996
EDD (Enhanced Disk Drive) -EDD v4.0
EDK2 Specifications https://github.com/tianocore-docs/Docs
FIDO Alliance -Specification List
-User Authentication
-User Authentication Spec Download
PMM (Post Memory Manager) v1.01
PXE Tianocore Wiki
SMBIOS -SMBIOS Spec Info
-SMBIOS Specification List
-SMBIOS v3.8.0 - 5 Aug 2024
-SMBIOS v3.7.1 - 24 May 2024
-SMBIOS v3.7.0 - 21 Jul 2023
-SMBIOS v3.6.0 - 20 Jun 2022
-SMBIOS v3.5.0 - 21/Sep/2021
-SMBIOS v3.4.0 - 17/Jul/2020
TCG Specification List Trusted Computing Group
UEFI UEFI Specification
-UEFI Specification List
-UEFI Specification v2.10 Errata A - PDF-HTML
-UEFI Specification v2.10 - PDF-HTML
-UEFI Specification v2.9 Errata A - PDF-HTML
-UEFI Specification v2.9

UEFI Shell Specification
-UEFI Shell Specification v2.2

PI Specification
-UEFI PI v1.8 Errata A
-UEFI PI v1.8
-UEFI PI v1.7 Errata B
-UEFI PI v1.7 Errata A
uefi spec, PI spec, UEFI shell, UEFI SCT

File System and Disc Format

File System Type Specification URL Notes
Microsoft FAT32 1.03
Microsoft exFAT -Latest web version
-Latest pdf
NTFS wiki
El Torito Boot 1.0
UDF 2.60
ISO 9660 -1998(en)
-1988/Amd.1:2013(en)
Joliet Filesystem Extensions for Unicode Version 1
ext4 web
HFS Plus web

File Format

Specification Extension URL Notes
Executable and Linking Format (ELF) -v1.2
-v1.1
FLV .flv
JPG .jpg, .jpeg Standards
MPEG .mp3, mp4, .aac, .avc Standards
Microsoft PE/COFF Specification .dll
.exe
.sys
.obj
.efi
-8.0
-Latest web
-Latest pdf
PNG .png Specification
WAVE Audio Format .wav click

Tools

Tool Version OS Notes
PL 1.5.0.10 DOS PL Provides:
1. PCI Bus/Device Information(PCI register read/write)
2. USB host controller information
3. System memory read/write
4. I/O address read/write
5. Index IO read/write
6. HD-Audio Controller Information (Include immediate VERB command, save codec cmd sequence as c file)
7. AC97 Controller
8. ACPI Table
9. Disk read/write
10. Int15h E820 maps advanced browsing
11. Multi Processor(MP) Table dump.
12. Advanced Browsing experience.
    - Goto alternative view (Alt+G) Example: PCI<>IO or Memory, ACPI<>Memory
    - Go back previous view(Alt+B)
13. Save View data to file (Save as TXT, HTML, Binary)
(http://ubios.blogspot.com)
PLC 1.0.1.2 Windows 1. UEFI/BIOS Smart Debug Information
- Error/Checkpoint/Guid Message clarification and color highlight
- User defined message filter and color highight (Support two uder defined sets)
- Quick message search and locate debug message
- Save debug message on the fly (save to file)
- Load debug message and analysis
2. Addon Debug Message Functions
- Calculate the timeing between two marked debug messages, can be used to measure and tune the BIOS POST time.
(Click the 'Time' button on tool bar to open the 'Time' Windows, then use 'SPACE' key to mark the message.
- GUID and Meaniningful name translation
* Lookup the BIOS source code at startup. Once the GUID is displayed in the dbeug message, convert the GUID to the driver/protocol name of the GUID.
* (Need to set the 'GUID File Path' in the "Config" window to point to the UEFI/BIOS source code)
* (Click the 'Decode Messages' button in the tool bar to enable/disable the trsnslation.
3. USB
- USB topology map
- Save the USB topology map to TXT or ASL file
* - Compare the USB topology map. Can be utilize to check if any USB device loss cross system boots. (support command line mode)
- ACPI ASL _UPC and _PLD generation for USB devices.
4. Disk
- Need to launch the application in Administrator right.
- View GPT/MBR information
- Check disk boot capability.
5. Console Redirection
- Click 'Terminal' button in the tool bar to open the console window.
- Support ANSI/VT100 (Similar to Putty/Teraterm)
- Capture screen to file.
6. SUT Control (Control M/B)
- Need specific hardware
- Support Web http/https request or windows exe/bat to control the M/B - Support 'Level' or Pulse control
- Capable to control the M/B AC power or Power Button
7. UEFI Variable READ
- Need Administrator Right
- Read UEFI Variable in Windows
(http://ubios.blogspot.com)
IPMI Tools -Information-IPMI, V2.0, Conformance Test Suite (ICTS) Prototype, V6.02
-IPMI, V2.0, V1.5, and V1.0, Reference Drivers
-IPMI, V2.0, Command Test Tool
Redfish Tools (DMTF Github) Redfish Test Framework

Compilers/ToolChains

List all compilers and firmware build tools

Compiler/ToolChains Version OS Notes
Gnu GCC -All Versions
-Gnu GCC v11
Linux
Windows
Support Various Architectures
ARM Gnu ToolChain -All Versions Linux
Windows
GCC, GDB, BinTools, and libraries for ARM32 and Aarch64
Linaro GCC All Versions Linux
Windows
Linaro Monthly Build Gnu ToolChains for ARM32 and Aarch64
Linaro LLVM -All Versions
-v13.0.0.rc2
Linux
Windows
LLVM -Information
-v12.0.1
Linux
Windows
Microsoft Visual Studio Download Windows
Microsoft Build Tools -2015
-Build Tools for Visual Studio2019
-Build Tools Component
Windows
Microsoft EWDK -Windows 11 EWDK
-EWDK for Windows Server 2022
-EWDK for Windows 10 v2004
-EWDK for Windows 10 v1903
-EWDK for Windows 10 v1809
-EWDK for Windows 10 v1803
-EWDK for Windows 10 v1709
Windows
ACPICA -Information
-Downloads
-v2021_0730
Linux
Windows
ACPI ASL Language Compiler
NASM(Netwide Assembler) -Information
-Downloads
-v2.15.05
Linux
macOS
Windows
Python -Downloads Linux
macOS
Windows