User:MartinRoth: Difference between revisions

From coreboot
Jump to navigation Jump to search
 
(2 intermediate revisions by the same user not shown)
Line 10: Line 10:
:martinr (usually)
:martinr (usually)
:gaumless (occasionally)
:gaumless (occasionally)
==Useful commands==
=== See what Kconfig symbols are used in a platform ===
make clean; make filelist; for file in $(grep -v 'config\.h' build/project_filelist.txt); do grep CONFIG_ "$file"; done | grep -Ev '[_A-Za-z]CONFIG' | sed 's/.*[-(\)\[\$!"[:space:]]CONFIG_/CONFIG_/'|sed 's/[^A-Z0-9_].*//' | sort | uniq
===Find hex encoded binaries in coreboot===
git grep -c '0x' | grep src/ | grep -v ':.\?.\?.$' | sort -n -k2 -t ':'
===Find binary files in src tree===
find src -type f -exec file -i '{}' \; | grep 'charset=binary' | grep -v 'x-empty'
===run checkpatch on files ===
DIR=src/lib;for file in $(git ls-files | grep "${DIR}"); do util/lint/checkpatch.pl --file $file --terse; done


==Platforms supported by coreboot==
==Platforms supported by coreboot==
Line 31: Line 44:
| AMD || Olive Hill || || || || 1 || ||
| AMD || Olive Hill || || || || 1 || ||
|-
|-
| AMD || Parmer || AMD Family 15h || AMD Hudson || || 2 || ||
| AMD || Parmer || AMD Family 15TN || AMD Hudson || || 2 || ||
|-
|-
| AMD || Pistachio || AMD Family F || AMD SB600|| || 1 || ||
| AMD || Pistachio || AMD Family F || AMD SB600|| || 1 || ||
Line 39: Line 52:
| AMD || Pumori || || || || 1 || ||
| AMD || Pumori || || || || 1 || ||
|-
|-
| AMD || Thatcher || AMD Family 15h || AMD Hudson || || 1 || ||
| AMD || Thatcher || AMD Family 15TN || AMD Hudson || || 1 || ||
|-
|-
| AMD || Torpedo || AMD Family 12h || AMD SB900 || || 1 || ||
| AMD || Torpedo || AMD Family 12h || AMD SB900 || || 1 || ||
Line 47: Line 60:
| Asrock || IMB-A180 || || || || 2 || ||
| Asrock || IMB-A180 || || || || 2 || ||
|-
|-
| ASUS || F2A85-M || || || || 1 || ||
| ASUS || F2A85-M || AMD Family 15TN || || || 1 || ||
|-
|-
| ASUS || KGPE-D16 || AMD Family 10h / 15h || || || 1 || None || Lumberingbuilder
| ASUS || KGPE-D16 || AMD Family 10h / 15h || || || 1 || None || Lumberingbuilder
Line 94: Line 107:
|-
|-
| Lenovo || T530 || Intel Ivybridge || || 2 DDR-3 SODIMMS || 1 || ME ||
| Lenovo || T530 || Intel Ivybridge || || 2 DDR-3 SODIMMS || 1 || ME ||
|-
| Lenovo || X230 || Intel Ivybridge || || 2 DDR-3 SODIMMS || 1 || ME ||
|-
|-
| Lenovo || W530 || Intel Ivybridge || || 4 DDR-3 SODIMMS || 2 || ME || Grumpybuilder
| Lenovo || W530 || Intel Ivybridge || || 4 DDR-3 SODIMMS || 2 || ME || Grumpybuilder

Latest revision as of 21:51, 23 July 2017

Martin Roth

Email:

gaumless@gmail.com
martinroth@google.com

IRC:

martinr (usually)
gaumless (occasionally)

Useful commands

See what Kconfig symbols are used in a platform

make clean; make filelist; for file in $(grep -v 'config\.h' build/project_filelist.txt); do grep CONFIG_ "$file"; done | grep -Ev '[_A-Za-z]CONFIG' | sed 's/.*[-(\)\[\$!"[:space:]]CONFIG_/CONFIG_/'|sed 's/[^A-Z0-9_].*//' | sort | uniq

Find hex encoded binaries in coreboot

git grep -c '0x' | grep src/ | grep -v ':.\?.\?.$' | sort -n -k2 -t ':'

Find binary files in src tree

find src -type f -exec file -i '{}' \; | grep 'charset=binary' | grep -v 'x-empty'

run checkpatch on files

DIR=src/lib;for file in $(git ls-files | grep "${DIR}"); do util/lint/checkpatch.pl --file $file --terse; done

Platforms supported by coreboot

Vendor Board Processor Southbridge Memory Count Blobs Used as
ADI SG-2220 Intel Rangeley - 2GB DDR3L Soldered Down 1 FSP
ADI SG-2440 Intel Rangeley - 4GB DDR3L Soldered Down 1 FSP
AMD Bettong (DB-FP4) 1 Yes
AMD Kino AMD Family 10h 1
AMD Lamar 1
AMD Mahogony AMD Family F AMD SB700 4 DDR2 UDIMMs 1
AMD Mahogony AMD Family 10h AMD SB700 4 DDR2 UDIMMs 1
AMD Olive Hill 1
AMD Parmer AMD Family 15TN AMD Hudson 2
AMD Pistachio AMD Family F AMD SB600 1
AMD Persimmon [DB-FT1] AMD Family 14h AMD SB800 3
AMD Pumori 1
AMD Thatcher AMD Family 15TN AMD Hudson 1
AMD Torpedo AMD Family 12h AMD SB900 1
Asrock E350M1/USB3 AMD Family 14h 1
Asrock IMB-A180 2
ASUS F2A85-M AMD Family 15TN 1
ASUS KGPE-D16 AMD Family 10h / 15h 1 None Lumberingbuilder
ASUS KFSN4-DRE 1
ASUS P5GC-MX 2 DDR2 UDIMMs 1 None
Gigabyte GA-B75M-D3H Intel Ivybridge 4 DDR3 UDIMMs 1 ME Happybuilder
Gigabyte GA-G41M-ES2L 2 DDR2 UDIMMs 1 None
Gigabyte GA-945-GCM-S2L 2 DDR2 UDIMMs 1 None
Gigabyte GA-MA78GM AMD AM2+ socket AMD SB700 4 DDR2 UDIMMs 1
Gizmosphere Gizmo AMD Family 14h Soldered down 3
Gizmosphere Gizmo2 Soldered down 1 Yes
Intel Bakersport Intel Bay Trail I SOC - 1 ECC DDR-3 SODIMM 1 FSP, ME
Intel Bayley Bay Intel Bay Trail I SOC - 2 DDR-3 SODIMM 1 FSP, ME
Intel Camelback Mountain Broadwell DE SOC - 2 DDR-4 UDIMMs 1 FSP, ME
Intel Cougar Canyon Intel Ivybridge 1 FSP, ME
Intel D510MO I82801GB (ICH7) 2 DDR-2 UDIMMs 1 None
Intel Galileo 2 None
Intel Galileo Gen 2 1 None
Intel/Circuitco Minnowboard Max Intel Bay Trail I 1 FSP, ME
Intel/ADI Minnowboard Turbot Intel Bay Trail I 1 FSP, ME
Intel Mohon Peak Intel Rangeley 1 FSP
Lenovo T500 1 None
Lenovo W500 1 None
Lenovo T520 Intel Sandybridge 1 ME
Lenovo T530 Intel Ivybridge 2 DDR-3 SODIMMS 1 ME
Lenovo X230 Intel Ivybridge 2 DDR-3 SODIMMS 1 ME
Lenovo W530 Intel Ivybridge 4 DDR-3 SODIMMS 2 ME Grumpybuilder
PC Engines APU2C4 1
Supermicro H8SCM AMD Family 10h / 15h AMD SP5100 4 DDR3 DIMMs 1

Links

General Hardware & BIOS

_HID & EisaID

Payloads


Fedora setup

Tested on Fedora 20 & 21

sudo yum install git gcc gcc-c++ flex bison ncurses-devel acpica-tools wget patch pciutils-devel
git clone http://review.coreboot.org/coreboot
cd coreboot
git submodule update --init --checkout
make crossgcc-i386

Optional installs:

sudo yum install ccache clang


Flashing 3MB of 8MB ROM on minnowboard max

echo 00500000:007fffff cb-region > 8mb ; flashrom -p dediprog:voltage=1.8v -l 8mb -i cb-region -w build/coreboot.rom


Coreboot lessons

Lesson1 - Starting from scratch. Download coreboot, build it, and test the image on QEMU.