5 _Scripts and programs found in the `./util` directory_
6 * __abuild__ - coreboot autobuild script builds coreboot images for all
7 available targets. `bash`
8 * __acpi__ - Walk through all ACPI tables with their addresses. `bash`
9 * __amdfwtool__ - Create AMD Firmware combination `C`
10 * __amdtools__ - A set of tools to compare extended) K8 memory
12 * __archive__ - Concatenate files and create an archive `C`
13 * __autoport__ - Automated porting coreboot to Sandy Bridge/Ivy Bridge
15 * __bincfg__ - Compiler/Decompiler for data blobs with specs `Lex`
17 * __board_status__ - Tools to collect logs and upload them to the board
18 status repository `Bash` `Go`
19 * __bucts__ - A tool to manipulate the BUC.TS bit on Intel targets. `C`
20 * __cavium__ - Devicetree_convert Tool to convert a DTB to a static C
23 * _cbfstool_ - For manipulating CBFS file `C`
24 * _fmaptool_ - Converts plaintext fmd files into fmap blobs `C`
25 * _rmodtool_ - Creates rmodules `C`
26 * _ifwitool_ - For manipulating IFWI `C`
27 * __cbmem__ - CBMEM parser to read e.g. timestamps and console log `C`
28 * __chromeos__ - These scripts can be used to access Chrome OS
29 resources, for example to extract System Agent reference code and other
30 blobs (e.g. mrc.bin, refcode, VGA option roms) from a Chrome OS
32 * __crossgcc__ - A cross toolchain builder for -elf toolchains (ie. no
34 * __docker__ - Dockerfiles for _coreboot-sdk_, _coreboot-jenkins-node_,
35 _coreboot.org-status_ and _docs.coreboot.org_
36 * __dtd_parser__ - DTD structure parser `Python2`
37 * __ectool__ - Dumps the RAM of a laptop's Embedded/Environmental
39 * __exynos__ - Computes and fills Exynos ROM checksum (for BL1 or BL2).
41 * __find_usbdebug__ - Help find USB debug ports
42 * __futility__ - Firmware utility for signing ChromeOS images `Make`
43 * __fuzz-tests__ - Create test cases that crash the jpeg code. `C`
44 * __genbuild_h__ - Generate build system definitions `Shell`
45 * __genprof__ - Format function tracing logs `Bash` `C`
46 * __gitconfig__ - Initialize git repository submodules install git
48 * [__ifdtool__](ifdtool/index.md) - Extract and dump Intel Firmware Descriptor information
50 * __intelmetool__ - Dump interesting things about Management Engine
52 * __inteltool__ - Provides information about the Intel CPU/chipset
53 hardware configuration (register contents, MSRs, etc). `C`
54 * __intelvbttool__ - Parse VBT from VGA BIOS `C`
56 * _createxbl.py_ - Concatentates XBL segments into one ELF
58 * _ipqheader.py_ - Returns a packed MBN header image with the
59 specified base and size `Python`
60 * _mbncat.py_ - Generate ipq8064 uber SBL `Python`
61 * *mbn_tools.py* - Contains all MBN Utilities for image
63 * __kbc1126__ - Tools used to dump the two blobs from the factory
64 firmware of many HP laptops with 8051-based SMSC KBC1098/KBC1126
65 embedded controller and insert them to the firmware image. `C`
66 * __kconfig__ - Build system `Make`
67 * __lint__ - Source linter and linting rules `Shell`
68 * __marvell__ - Add U-Boot boot loader for Marvell ARMADA38X `C`
69 * __[me_cleaner](https://github.com/corna/me_cleaner)__ - Tool for
70 partial deblobbing of Intel ME/TXE firmware images `Python`
71 * __mma__ - Memory Margin Analysis automation tests `Bash`
72 * __msrtool__ - Dumps chipset-specific MSR registers. `C`
73 * __mtkheader__ - Generate MediaTek bootload header. `Python2`
74 * __nvidia__ - nvidia blob parsers
75 * __nvramtool__ - Reads and writes coreboot parameters and displaying
76 information from the coreboot table in CMOS/NVRAM. `C`
77 * __pgtblgen__ - Generates page tables based on fixed physical address.
79 * __pmh7tool__ - Dumps, reads and writes PMH7 registers on Lenovo
80 ThinkPads. PMH7 is used for switching on and off the power of some
81 devices on the board such as dGPU. `C`
82 * __post__ - Userspace utility that can be used to test POST cards. `C`
83 * __qualcomm__ - CMM script to debug Qualcomm coreboot environments.
85 * __release__ - Generate coreboot release `Bash`
87 * _make-spike-elf.sh_ - Converts a flat file into an ELF, that
88 can be passed to SPIKE, the RISC-V reference emulator.`Bash`
89 * _sifive-gpt.py_ - Wraps the bootblock in a GPT partition for
90 SiFive's bootrom. `Python3`
91 * __rockchip__ - Generate Rockchip idblock bootloader. `Python2`
92 * __sconfig__ - coreboot device tree compiler `Lex` `Yacc`
94 * _config_ - Manipulate options in a .config file from the
96 * _cross-repo-cherrypick_ - Pull in patches from another tree
97 from a gerrit repository. `Shell`
98 * _decode_spd.sh_ - Decodes Serial Presence Detect (SPD) files
99 into various human readable formats.
100 * _dts-to-fmd.sh_ -Converts a depthcharge fmap.dts into an
101 fmaptool compatible .fmd format `Bash`
102 * _find-unused-kconfig-symbols.sh_ - Points out Kconfig
103 variables that may be unused. There are some false positives, but it
104 serves as a starting point `Shell`
105 * _gerrit-rebase_ - Applies all commits that from-branch has
106 over to-branch, based on a common ancestor and gerrit meta-data `Bash`
107 * _get_maintainer.pl_ - Print selected MAINTAINERS information
108 for the files modified in a patch or for a file `Perl`
109 * _maintainers.go_ - Build subsystem Maintainers `Go`
110 * _no-fsf-addresses.sh_ - Removes various FSF addresses from
111 license headers `Shell`
112 * _parse-maintainers.pl_ - Script to alphabetize MAINTAINERS
114 * _ucode_h_to_bin.sh_ - Microcode conversion tool `Bash`
115 * _update_submodules_ - Check all submodules for updates `Bash`
116 * __showdevicetree__ - Compile and dump the device tree `C`
117 * __spdtool__ - Dumps SPD ROMs from a given blob to separate files
118 using known patterns and reserved bits. Useful for analysing firmware
119 that holds SPDs on boards that have soldered down DRAM. `python`
120 * __spkmodem_recv__ - Decode spkmodem signals `C`
121 * __superiotool__ - A user-space utility to detect Super I/O of a
122 mainboard and provide detailed information about the register contents
123 of the Super I/O. `C`
124 * __smcbiosinfo__ - Generates SMC biosinfo for BMC BIOS updates `C`
125 * __testing__ - coreboot test targets `Make`
126 * __uio_usbdebug__ - Debug coreboot's usbdebug driver inside a running
127 operating system (only Linux at this time). `C`
128 * __util_readme__ - Creates README.md of description files in `./util`
129 subdirectories `Bash`
130 * __vboot_list__ - Tools to generate a list of vboot enabled devices to
131 the documentation `Bash`
132 * __vgabios__ - emulated vga driver for qemu `C`
133 * __x86__ - Generates 32-bit PAE page tables based on a CSV input file.
135 * __xcompile__ - Cross compile setup `Bash`
138 ## In depth documentation
140 * [ifdtool](ifdtool/index.md)