

		    List of upstream coreboot maintainers
		     and how to submit coreboot changes

This represents the list of maintainers that work on the upstream coreboot
code base (on coreboot.org).  Maintainers are assigned to topics and when
applicable to subtrees of the source tree. You'll find some subtrees that
don't have a maintainer. If you are looking for reviewers for such a sub-
tree, it's often a good choice to look at the git history to see who worked
on it last.

Please try to follow the guidelines below.  This will make things
easier on the maintainers.  Not all of these guidelines matter for every
trivial patch so apply some common sense.


1.	Make sure your changes compile correctly in multiple configurations. In
	particular check that changes work for various boards in the tree that
	it affects:

	Test with: `util/abuild/abuild -c $(nproc) -t vendor/boardname`

2.	When you are happy with a change make it generally available for
	testing in gerrit and await feedback.

3.	Be prepared to get your changes sent back with seemingly
	silly requests about formatting and variable names.  These aren't
	as silly as they seem. One job the maintainers do is to keep
	things looking the same.  Sometimes this means that the clever
	hack in your mainboard or chipset to get around a problem actually
	needs to become a generalized coreboot feature ready for next time.

	PLEASE check your patch with the automated style checker
	(util/lint/checkpatch.pl) to catch trival style violations.
	See https://www.coreboot.org/Coding_Style for guidance here.

	PLEASE document known bugs. If it doesn't work for everything
	or does something very odd once a month document it.

	ALWAYS remember that submissions are made under the terms
	of the OSDL certificate of contribution and should include a
	Signed-off-by: line.  The current version of this "Developer's
	Certificate of Origin" (DCO) is listed at
	https://www.coreboot.org/Development_Guidelines#Sign-off_Procedure.

4.	Make sure you have the right to send any changes you make. If you
	do changes at work you may find your employer owns the patch
	not you.

5.	Happy hacking.

Descriptions of section entries:

	M: Maintainer: FullName <address@domain>
	   Must be registered to Gerrit (https://review.coreboot.org/).
	   Should have experience with upstream coreboot development and
	   +2 rights.
	R: Designated reviewer: FullName <address@domain>
	   These reviewers should be CCed on patches.
	L: Mailing list that is relevant to this area
	W: Web-page with status/info
	Q: Patchwork web based patch tracking system site
	T: SCM tree type and location.
	   Type is one of: git, hg, quilt, stgit, topgit
	S: Status, one of the following:
	   Supported:	Someone is continuously paid to look after this and
			a reaction to review requests can be expected
			within a few days, a month at most.
	   Maintained:	Someone actually looks after it and a reaction to
			review requests can usually be expected within a
			few weeks.
	   Odd Fixes:	It has a maintainer but they don't have time to do
			much other than throw the odd patch in. See below..
	   Orphan:	No current maintainer [but maybe you could take the
			role as you write your new code].
	   Obsolete:	Old code. Something tagged obsolete generally means
			it has been replaced by a better system and you
			should be using that.
	F: Files and directories with wildcard patterns.
	   A trailing slash includes all files and subdirectory files.
	   F:	drivers/net/	all files in and below drivers/net
	   F:	drivers/net/*	all files in drivers/net, but not below
	   F:	*/net/*		all files in "any top level directory"/net
	   One pattern per line.  Multiple F: lines acceptable.
	N: Files and directories with regex patterns.
	   N:	[^a-z]tegra	all files whose path contains the word tegra
	   One pattern per line.  Multiple N: lines acceptable.
	   scripts/get_maintainer.pl has different behavior for files that
	   match F: pattern and matches of N: patterns.  By default,
	   get_maintainer will not look at git log history when an F: pattern
	   match occurs.  When an N: match occurs, git log history is used
	   to also notify the people that have git commit signatures.
	X: Files and directories that are NOT maintained, same rules as F:
	   Files exclusions are tested before file matches.
	   Can be useful for excluding a specific subdirectory, for instance:
	   F:	net/
	   X:	net/ipv6/
	   matches all files in and below net excluding net/ipv6/
	K: Keyword perl extended regex pattern to match content in a
	   patch or file.  For instance:
	   K: of_get_profile
	      matches patches or files that contain "of_get_profile"
	   K: \b(printk|pr_(info|err))\b
	      matches patches or files that contain one or more of the words
	      printk, pr_info or pr_err
	   One regex pattern per line.  Multiple K: lines acceptable.

Note: For the hard of thinking, this list is meant to remain in alphabetical
order. If you could add yourselves to it in alphabetical order that would be
so much easier [Ed]

Maintainers List (try to look for most precise areas first)

		-----------------------------------

################################################################################
# Mainboards
################################################################################

51NB MAINBOARDS
S:	Orphan
F:	src/mainboard/51nb/



ACER MAINBOARDS
S:	Orphan
F:	src/mainboard/acer/



ADLINK MAINBOARDS
S:	Orphan
F:	src/mainboard/adlink/



AMD non-server family 17h and 19h reference boards
M:	Felix Held <felix-coreboot@felixheld.de>
M:	Jason Glenesk <jason.glenesk@gmail.com>
M:	Fred Reitberger <reitbergerfred@gmail.com>
L:	amd_coreboot_org_changes@googlegroups.com
S:	Maintained
F:	src/mainboard/amd/bilby/
F:	src/mainboard/amd/birman/
F:	src/mainboard/amd/chausie/
F:	src/mainboard/amd/majolica/
F:	src/mainboard/amd/mandolin/
F:	src/mainboard/amd/mayan/

AMD server family 19h reference boards
M:	Felix Held <felix-coreboot@felixheld.de>
M:	Martin Roth <gaumless@gmail.com>
M:	Varshit Pandya <pandyavarshit@gmail.com>
S:	Maintained
F:	src/mainboard/amd/onyx/

AMD reference boards outside of family 17h and 19h
S:	Odd Fixes
L:	amd_coreboot_org_changes@googlegroups.com
F:	src/mainboard/amd/gardenia/
F:	src/mainboard/amd/inagua/
F:	src/mainboard/amd/olivehill/
F:	src/mainboard/amd/pademelon/
F:	src/mainboard/amd/parmer/
F:	src/mainboard/amd/persimmon/
F:	src/mainboard/amd/south_station/
F:	src/mainboard/amd/thatcher/
F:	src/mainboard/amd/union_station/



AOPEN MAINBOARDS
S:	Orphan
F:	src/mainboard/aopen/



APPLE MAINBOARDS
M:	Evgeny Zinoviev <me@ch1p.io>
S:	Maintained
F:	src/mainboard/apple/



ASROCK B75M-ITX MAINBOARD
M:	Kevin Keijzer <kevin@quietlife.nl>
S:	Maintained
F:	src/mainboard/asrock/b75m-itx/

ASROCK B85M PRO4 MAINBOARD
M:	Angel Pons <th3fanbus@gmail.com>
S:	Maintained
F:	src/mainboard/asrock/b85m_pro4/

ASROCK G41C-GS MAINBOARD & VARIANTS
M:	Angel Pons <th3fanbus@gmail.com>
S:	Maintained
F:	src/mainboard/asrock/g41c-gs/



ASUS A88XM-E MAINBOARD
M:	Mike Banon <mikebdp2@gmail.com>
S:	Maintained
F:	src/mainboard/asus/a88xm-e/

ASUS AM1I-A MAINBOARD
M:	Mike Banon <mikebdp2@gmail.com>
S:	Maintained
F:	src/mainboard/asus/am1i-a/

ASUS H61 SERIES MAINBOARDS
M:	Angel Pons <th3fanbus@gmail.com>
S:	Maintained
F:	src/mainboard/asus/h61-series/

ASUS P5QC PRO MAINBOARD & VARIANTS
M:	Angel Pons <th3fanbus@gmail.com>
R:	Stefan Ott <coreboot@desire.ch>
S:	Maintained
F:	src/mainboard/asus/p5qc/

ASUS P5QPL-AM MAINBOARD & VARIANTS
M:	Angel Pons <th3fanbus@gmail.com>
S:	Maintained
F:	src/mainboard/asus/p5qpl-am/

ASUS P8Z77 SERIES MAINBOARDS
M:	Angel Pons <th3fanbus@gmail.com>
M:	Vlado Cibic <vladocb@protonmail.com>
S:	Maintained
F:	src/mainboard/asus/p8z77-series/



BAP MAINBOARDS
S:	Orphan
F:	src/mainboard/bap/



BIOSTAR MAINBOARDS
S:	Orphan
F:	src/mainboard/biostar/



BOSTENTECH MAINBOARDS
S:	Orphan
F:	src/mainboard/bostentech/



CAVIUM MAINBOARDS
S:	Orphan
F:	src/mainboard/cavium/



CLEVO MAINBOARDS
M:	Felix Singer <felixsinger@posteo.net>
M:	Michael Niewöhner <foss@mniewoehner.de>
S:	Supported
F:	src/mainboard/clevo/



COMPULAB MAINBOARDS
S:	Orphan
F:	src/mainboard/compulab/



DELL MAINBOARDS
S:	Orphan
F:	src/mainboard/dell/

DELL E6400 MAINBOARD
M:	Nicholas Chin <nic.c3.14@gmail.com>
S:	Maintained
F:	src/mainboard/dell/e6400/


ELMEX MAINBOARDS
S:	Orphan
F:	src/mainboard/elmex/



EMULATION MAINBOARDS
S:	Orphan
F:	src/mainboard/emulation/



EXAMPLE MAINBOARDS
S:	Orphan
F:	src/mainboard/example/



FACEBOOK FBG1701 MAINBOARD
M:	Frans Hendriks <fhendriks@eltan.com>
M:	Erik van den Bogaert <ebogaert@eltan.com>
S:	Maintained
F:	src/mainboard/facebook/fbg1701/

FACEBOOK MONOLITH MAINBOARD
M:	Frans Hendriks <fhendriks@eltan.com>
M:	Erik van den Bogaert <ebogaert@eltan.com>
S:	Maintained
F:	src/mainboard/facebook/monolith/



FOXCONN MAINBOARDS
S:	Orphan
F:	src/mainboard/foxconn/



GETAC MAINBOARDS
S:	Orphan
F:	src/mainboard/getac/



GIGABYTE GA-D510UD MAINBOARD
M:	Angel Pons <th3fanbus@gmail.com>
S:	Maintained
F:	src/mainboard/gigabyte/ga-d510ud/

GIGABYTE GA-H61M SERIES MAINBOARDS
M:	Angel Pons <th3fanbus@gmail.com>
S:	Maintained
F:	src/mainboard/gigabyte/ga-h61m-series/



GIZMOSPHERE MAINBOARDS
S:	Orphan
F:	src/mainboard/gizmosphere/



GOOGLE REX MAINBOARDS
M:	Subrata Banik <subratabanik@google.com>
M:	Tarun Tuli <tstuli@gmail.com>
M:	Kapil Porwal <kapilporwal@google.com>
M:	Jakub Czapiga <jacz@semihalf.com>
M:	Eran Mitrani <mitrani@google.com>
M:	Dinesh Gehlot <digehlot@google.com>
S:	Maintained
F:	src/mainboard/google/rex/

GOOGLE BRYA MAINBOARDS
M:	Subrata Banik <subratabanik@google.com>
M:	Nick Vaccaro <nvaccaro@chromium.org>
M:	Eric Lai <ericllai@google.com>
S:	Maintained
F:	src/mainboard/google/brya/

GOOGLE HATCH MAINBOARDS
M:	Subrata Banik <subratabanik@google.com>
M:	Nick Vaccaro <nvaccaro@chromium.org>
S:	Maintained
F:	src/mainboard/google/hatch/

GOOGLE VOLTEER MAINBOARDS
M:	Nick Vaccaro <nvaccaro@chromium.org>
S:	Maintained
F:	src/mainboard/google/volteer/

GOOGLE MAINBOARDS (Intel-based, legacy/inactive)
M:	Matt DeVillier <MrChromebox@gmail.com>
S:	Maintained
F:	src/mainboard/google/auron/
F:	src/mainboard/google/beltino/
F:	src/mainboard/google/butterfly/
F:	src/mainboard/google/cyan/
F:	src/mainboard/google/glados/
F:	src/mainboard/google/jecht/
F:	src/mainboard/google/link/
F:	src/mainboard/google/parrot/
F:	src/mainboard/google/slippy/
F:	src/mainboard/google/stout/

GOOGLE AMD-BASED MAINBOARDS
M:	Martin Roth <martin.roth@amd.corp-partner.google.com>
M:	Jason Nien <jason.nien@amd.corp-partner.google.com>
L:	amd_coreboot_org_changes@googlegroups.com
S:	Supported
F:	src/mainboard/google/kahlee/
F:	src/mainboard/google/zork/
F:	src/mainboard/google/guybrush/
F:	src/mainboard/google/skyrim/

GOOGLE MEDIATEK-BASED MAINBOARDS
M:	Hung-Te Lin <hungte@chromium.org>
M:	Yu-Ping Wu <yupingso@google.com>
M:	Yidi Lin <yidilin@google.com>
S:	Supported
F:	src/mainboard/google/asurada/
F:	src/mainboard/google/cherry/
F:	src/mainboard/google/corsola/
F:	src/mainboard/google/geralt/
F:	src/mainboard/google/kukui/
F:	src/mainboard/google/oak/



HP 280 G2 MAINBOARD
M:	Angel Pons <th3fanbus@gmail.com>
S:	Maintained
F:	src/mainboard/hp/280_g2/



IBASE MAINBOARDS
S:	Orphan
F:	src/mainboard/ibase/



INTEL HARCUVAR_CRB MAINBOARD
M:	Jeff Daly <jeffd@silicom-usa.com>
M:	Vanessa Eusebio <vanessa.f.eusebio@intel.com>
S:	Maintained
F:	src/mainboard/intel/harcuvar/

INVENTEC MAINBOARDS
M:	Annie Chen <Chen.AnnieET@inventec.com>
S:	Maintained
F:	src/mainboard/inventec/

JETWAY MAINBOARDS
S:	Orphan
F:	src/mainboard/jetway/



KONTRON BSL6 MAINBOARD
M:	Felix Singer <felixsinger@posteo.net>
M:	Nico Huber <nico.h@gmx.de>
S:	Supported
F:	src/mainboard/kontron/bsl6/

KONTRON MAL10 MAINBOARD
M:	Maxim Polyakov <max.senia.poliak@gmail.com>
M:	Nico Huber <nico.h@gmx.de>
M:	Felix Singer <felixsinger@posteo.net>
S:	Supported
F:	src/mainboard/kontron/mal10/



LENOVO MAINBOARDS
M:	Alexander Couzens <lynxis@fe80.eu>
S:	Maintained
F:	src/mainboard/lenovo/

LENOVO G505S MAINBOARD
M:	Mike Banon <mikebdp2@gmail.com>
S:	Maintained
F:	src/mainboard/lenovo/g505s/

LENOVO X200 MAINBOARD
R:	Stefan Ott <coreboot@desire.ch>
S:	Maintained
F:	src/mainboard/lenovo/x200/

LENOVO X201 MAINBOARD
R:	Stefan Ott <coreboot@desire.ch>
S:	Maintained
F:	src/mainboard/lenovo/x201/



LIBRETREND LT1000 MAINBOARD
M:	Piotr Król <piotr.krol@3mdeb.com>
M:	Michał Żygowski <michal.zygowski@3mdeb.com>
S:	Maintained
F:	src/mainboard/libretrend/lt1000/



LIPPERT MAINBOARDS (acquired by Adlink)
S:	Orphan
F:	src/mainboard/lippert/



MSI H81M-P33 MAINBOARD
M:	Angel Pons <th3fanbus@gmail.com>
S:	Maintained
F:	src/mainboard/msi/h81m-p33/

MSI MS-7D25 MAINBOARDS
M:	Michał Żygowski <michal.zygowski@3mdeb.com>
M:	Michał Kopeć <michal.kopec@3mdeb.com>
S:	Maintained
F:	src/mainboard/msi/ms7d25/



OCP DELTALAKE MAINBOARD
M:	Arthur Heymans <arthur@aheymans.xyz>
M:	Christian Walter <christian.walter@9elements.com>
M:	Johnny Lin <Johnny_Lin@wiwynn.com>
M:	Jonathan Zhang <jonzhang@fb.com>
M:	Tim Chu <Tim.Chu@quantatw.com>
S:	Supported
F:	src/mainboard/ocp/deltalake/

OCP TIOGAPASS MAINBOARD
M:	Jonathan Zhang <jonzhang@fb.com>
M:	Johnny Lin <Johnny_Lin@wiwynn.com>
M:	Morgan Jang <Morgan_Jang@wiwynn.com>
M:	Ryback Hung <<Ryback.Hung@quantatw.com>
M:	Bryant Ou <Bryant.Ou@quantatw.com>
S:	Maintained
F:	src/mainboard/ocp/tiogapass/



OPENCELLULAR MAINBOARDS
M:	Christian Walter <christian.walter@9elements.com>
M:	Patrick Rudolph <patrick.rudolph@9elements.com>
S:	Supported
F:	src/mainboard/opencellular/elgon/



PC ENGINES ALL MAINBOARDS
M:	Piotr Król <piotr.krol@3mdeb.com>
M:	Michał Żygowski <michal.zygowski@3mdeb.com>
S:	Supported
F:	src/mainboard/pcengines/



PINE64 MAINBOARDS
S:	Orphan
F:	src/mainboard/pine64/



PORTWELL PQ-M107 MAINBOARD
M:	Frans Hendriks <fhendriks@eltan.com>
M:	Erik van den Bogaert <ebogaert@eltan.com>
S:	Maintained
F:	src/mainboard/portwell/m107/



PROTECTLI ALL MAINBOARDS
M:	Piotr Król <piotr.krol@3mdeb.com>
M:	Michał Żygowski <michal.zygowski@3mdeb.com>
S:	Maintained
F:	src/mainboard/protectli/



PRODRIVE ATLAS MAINBOARD
M:	Angel Pons <th3fanbus@gmail.com>
M:	Christian Walter <christian.walter@9elements.com>
M:	Lean Sheng Tan <sheng.tan@9elements.com>
S:	Maintained
F:	src/mainboard/prodrive/atlas/

PRODRIVE HERMES MAINBOARD
M:	Christian Walter <christian.walter@9elements.com>
M:	Patrick Rudolph <patrick.rudolph@9elements.com>
S:	Maintained
F:	src/mainboard/prodrive/hermes/



PURISM MAINBOARDS
M:	Jonathon Hall <jonathon.hall@puri.sm>
S:	Supported
F:	src/mainboard/purism/



RAZER MAINBOARDS
S:	Orphan
F:	src/mainboard/razer/



RODA MAINBOARDS
S:	Orphan
F:	src/mainboard/roda/



SAMSUNG CHROMEOS MAINBOARDS
M:	Matt DeVillier <MrChromebox@gmail.com>
S:	Maintained
F:	src/mainboard/samsung/lumpy/
F:	src/mainboard/samsung/stumpy/



SAPPHIRE MAINBOARDS
S:	Orphan
F:	src/mainboard/sapphire/



SCALEWAY MAINBOARDS
S:	Orphan
F:	src/mainboard/scaleway/



SIEMENS CHILI MAINBAORD
M:	Felix Singer <felixsinger@posteo.net>
M:	Nico Huber <nico.h@gmx.de>
S:	Supported
F:	src/mainboard/siemens/chili/

SIEMENS MC_xxxx MAINBOARDS
M:	Werner Zeh <werner.zeh@siemens.com>
S:	Maintained
F:	src/mainboard/siemens/mc_apl1/
F:	src/mainboard/siemens/mc_ehl/



SIFIVE MAINBOARDS
S:	Orphan
F:	src/mainboard/sifive/



STAR LABS MAINBOARDS
M:	Sean Rhodes <sean@starlabs.systems>
S:	Maintained
F:	src/mainboard/starlabs/



SUPERMICRO X11-LGA1151-SERIES
M:	Michael Niewöhner <foss@mniewoehner.de>
S:	Maintained
F:	src/mainboard/supermicro/x11-lga1151-series/



SYSTEM76 MAINBOARDS
M:	Jeremy Soller <jeremy@system76.com>
M:	Tim Crawford <tcrawford@system76.com>
S:	Maintained
F:	src/mainboard/system76/



TI MAINBOARDS
S:	Orphan
F:	src/mainboard/ti/



UP MAINBOARDS
S:	Orphan
F:	src/mainboard/up/

################################################################################
# Architectures
################################################################################

ARM ARCHITECTURE
M:	Julius Werner <jwerner@chromium.org>
S:	Supported
F:	src/arch/arm/
F:	src/arch/arm64/
F:	src/soc/nvidia/
F:	src/soc/rockchip/
F:	util/nvidia/
F:	util/rockchip/

PPC64 ARCHITECTURE
M:	Ronald Minnich <rminnich@gmail.com>
M:	Timothy Pearson <tpearson@raptorengineeringinc.com>
S:	Maintained
F:	src/arch/ppc64/
F:	src/cpu/qemu-power8/
F:	src/mainboard/emulation/qemu-power8/

RISC-V ARCHITECTURE
M:	Ronald Minnich <rminnich@gmail.com>
R:	Philipp Hug <philipp@hug.cx>
S:	Maintained
F:	src/arch/riscv/
F:	src/soc/sifive/
F:	src/soc/ucb/
F:	src/mainboard/emulation/*-riscv/
F:	src/mainboard/sifive/
F:	util/riscv/

X86 ARCHITECTURE
M:	Jérémy Compostella <jeremy.compostella@intel.com>
S:	MAINTAINED
F:	src/arch/x86/
F:	src/cpu/x86/
F:	src/drivers/pc80/
F:	src/include/pc80/
F:	src/include/cpu/x86/

################################################################################
# Embedded Controllers
################################################################################

CHROME EC
M:	Boris Mittelberg <bmbm@google.com>
M:	Caveh Jalali <caveh@chromium.org>
S:	Maintained
F:	src/ec/google/

DELL SMSC MEC5035 EC
M:	Nicholas Chin <nic.c3.14@gmail.com>
W:	https://github.com/nic3-14159/E6400-EC-research
S:	Maintained
F:	src/ec/dell/mec5035/

LENOVO EC
M:	Alexander Couzens <lynxis@fe80.eu>
S:	Maintained
F:	src/ec/lenovo/

STARLABS EC
M:	Sean Rhodes <sean@starlabs.systems>
S:	Maintained
F:	src/ec/starlabs/

SYSTEM76 EC
M:	Jeremy Soller <jeremy@system76.com>
M:	Tim Crawford <tcrawford@system76.com>
S:	Maintained
F:	src/ec/system76/

ORPHANED ECS
S:	Orphan
F:	src/ec/51nb/
F:	src/ec/acpi/
F:	src/ec/apple/
F:	src/ec/compal/
F:	src/ec/hp/
F:	src/ec/kontron/
F:	src/ec/purism/
F:	src/ec/quanta/
F:	src/ec/roda/
F:	src/ec/smsc/

################################################################################
# Northbridges
################################################################################

INTEL HASWELL NORTHBRIDGE
M:	Angel Pons <th3fanbus@gmail.com>
S:	Maintained
F:	src/northbridge/intel/haswell/

INTEL PINEVIEW CHIPSET
M:	Angel Pons <th3fanbus@gmail.com>
S:	Odd Fixes
F:	src/northbridge/intel/pineview/

INTEL SANDYBRIDGE NORTHBRIDGE
M:	Angel Pons <th3fanbus@gmail.com>
S:	Maintained
F:	src/northbridge/intel/sandybridge/

INTEL X4X CHIPSET
M:	Angel Pons <th3fanbus@gmail.com>
S:	Odd Fixes
F:	src/northbridge/intel/x4x/

################################################################################
# Platforms
################################################################################

AMD SUPPORT
L:	amd_coreboot_org_changes@googlegroups.com
S:	Odd Fixes
F:	src/vendorcode/amd/
F:	src/cpu/amd/
F:	src/northbridge/amd/
F:	src/southbridge/amd/
F:	src/include/cpu/amd/

INTEL SUPPORT
R:	Intel_Coreboot_Reviewers <intel_coreboot_reviewers@intel.com>
S:	Maintained
F:	src/vendorcode/intel/
F:	src/cpu/intel/
F:	src/northbridge/intel/
F:	src/southbridge/intel/
F:	src/soc/intel/
F:	src/drivers/intel/
F:	src/include/cpu/intel/

INTEL FSP 1.1
M:	Huang Jin <huang.jin@intel.com>
S:	Supported
F:	src/drivers/intel/fsp1_1/

INTEL FSP 2.0
M:	Andrey Petrov <andrey.petrov@gmail.com>
M:	Ronak Kanabar <ronak.kanabar@intel.com>
S:	Maintained
F:	src/drivers/intel/fsp2_0/

################################################################################
# Systems on a Chip
################################################################################

AMD Cezanne
M:	Felix Held <felix-coreboot@felixheld.de>
M:	Jason Glenesk <jason.glenesk@gmail.com>
M:	Fred Reitberger <reitbergerfred@gmail.com>
M:	Matt DeVillier <matt.devillier@amd.corp-partner.google.com>
L:	amd_coreboot_org_changes@googlegroups.com
S:	Maintained
F:	src/soc/amd/cezanne/
F:	src/vendorcode/amd/fsp/cezanne/

AMD common SoC code
M:	Felix Held <felix-coreboot@felixheld.de>
M:	Jason Glenesk <jason.glenesk@gmail.com>
M:	Fred Reitberger <reitbergerfred@gmail.com>
M:	Matt DeVillier <matt.devillier@amd.corp-partner.google.com>
L:	amd_coreboot_org_changes@googlegroups.com
S:	Maintained
F:	src/soc/amd/common/

AMD Genoa
M:	Felix Held <felix-coreboot@felixheld.de>
M:	Martin Roth <gaumless@gmail.com>
M:	Varshit Pandya <pandyavarshit@gmail.com>
S:	Maintained
F:	src/soc/amd/genoa/

AMD Mendocino
M:	Felix Held <felix-coreboot@felixheld.de>
M:	Jason Glenesk <jason.glenesk@gmail.com>
M:	Fred Reitberger <reitbergerfred@gmail.com>
M:	Matt DeVillier <matt.devillier@amd.corp-partner.google.com>
L:	amd_coreboot_org_changes@googlegroups.com
S:	Supported
F:	src/soc/amd/mendocino/
F:	src/vendorcode/amd/fsp/mendocino/

AMD Picasso
M:	Felix Held <felix-coreboot@felixheld.de>
M:	Jason Glenesk <jason.glenesk@gmail.com>
M:	Fred Reitberger <reitbergerfred@gmail.com>
M:	Matt DeVillier <matt.devillier@amd.corp-partner.google.com>
L:	amd_coreboot_org_changes@googlegroups.com
S:	Maintained
F:	src/soc/amd/picasso/
F:	src/vendorcode/amd/fsp/picasso/

AMD Phoenix
M:	Felix Held <felix-coreboot@felixheld.de>
M:	Jason Glenesk <jason.glenesk@gmail.com>
M:	Fred Reitberger <reitbergerfred@gmail.com>
M:	Matt DeVillier <matt.devillier@amd.corp-partner.google.com>
L:	amd_coreboot_org_changes@googlegroups.com
S:	Supported
F:	src/soc/amd/phoenix/
F:	src/vendorcode/amd/fsp/phoenix/

AMD Stoneyridge
M:	Felix Held <felix-coreboot@felixheld.de>
M:	Matt DeVillier <matt.devillier@amd.corp-partner.google.com>
L:	amd_coreboot_org_changes@googlegroups.com
S:	Odd Fixes
F:	src/soc/amd/stoneyridge/

INTEL METEORLAKE SOC
M:	Subrata Banik <subratabanik@google.com>
M:	Tarun Tuli <tstuli@gmail.com>
M:	Kapil Porwal <kapilporwal@google.com>
M:	Jakub Czapiga <jacz@semihalf.com>
M:	Eran Mitrani <mitrani@google.com>
M:	Dinesh Gehlot <digehlot@google.com>
S:	Maintained
F:	src/soc/intel/meteorlake/

INTEL ALDERLAKE SOC
M:	Subrata Banik <subratabanik@google.com>
M:	Nick Vaccaro <nvaccaro@chromium.org>
S:	Maintained
F:	src/soc/intel/alderlake/

INTEL APOLLOLAKE_SOC
M:	Sean Rhodes <sean@starlabs.systems>
S:	Odd Fixes
F:	src/soc/intel/apollolake/

INTEL BRASWELL SOC
M:	Piotr Król <piotr.krol@3mdeb.com>
M:	Michał Żygowski <michal.zygowski@3mdeb.com>
M:	Frans Hendriks <fhendriks@eltan.com>
S:	Maintained
F:	/src/soc/intel/braswell/
F:	/src/vendorcode/intel/fsp/fsp1_1/braswell/

INTEL CANNONLAKE SOC
S:	Orphan
F:	src/soc/intel/cannonlake/

INTEL DENVERTON-NS SOC
M:	Jeff Daly <jeffd@silicom-usa.com>
M:	Vanessa Eusebio <vanessa.f.eusebio@intel.com>
S:	Maintained
F:	src/soc/intel/denverton_ns/

INTEL ELKHARTLAKE SOC
M:	Lean Sheng Tan <sheng.tan@9elements.com>
M:	Werner Zeh <werner.zeh@siemens.com>
S:	Maintained
F:	src/soc/intel/elkhartlake/

INTEL TIGERLAKE SOC
M:	Subrata Banik <subratabanik@google.com>
M:	Nick Vaccaro <nvaccaro@chromium.org>
S:	Maintained
F:	src/soc/intel/tigerlake/

INTEL Xeon Sacalable Processor Family
M:	Jonathan Zhang <jonzhang@fb.com>
M:	Johnny Lin <Johnny_Lin@wiwynn.com>
M:	Tim Chu <Tim.Chu@quantatw.com>
M:	Arthur Heymans <arthur@aheymans.xyz>
M:	Christian Walter <christian.walter@9elements.com>
S:	Supported
F:	src/soc/intel/xeon_sp/
F:	src/vendorcode/intel/fsp/fsp2_0/skylake_sp/
F:	src/vendorcode/intel/fsp/fsp2_0/copperlake_sp/

MEDIATEK SOCS
M:	Hung-Te Lin <hungte@chromium.org>
M:	Yu-Ping Wu <yupingso@google.com>
M:	Yidi Lin <yidilin@google.com>
S:	Supported
F:	src/soc/mediatek/

MEDIATEK MT8192
M:	Xi Chen <xixi.chen@mediatek.com>
S:	Maintained
F:	src/soc/mediatek/mt8192/
F:	src/vendorcode/mediatek/mt8192/

ORPHANED ARM SOCS
S:	Orphan
F:	src/cpu/armltd/
F:	src/soc/ti/
F:	src/soc/qualcomm/
F:	src/soc/samsung/
F:	util/exynos/
F:	util/ipqheader/

################################################################################
# Payloads
################################################################################

NVRAM
F:	util/nvramtool/
F:	payloads/nvramcui/

LIBPAYLOAD
F:	payloads/libpayload/

COREINFO PAYLOAD
F:	payloads/coreinfo/

EXTERNAL PAYLOADS INTEGRATION
M:	Stefan Reinauer <stefan.reinauer@coreboot.org>
M:	Martin Roth <gaumless@gmail.com>
F:	payloads/external/

COREDOOM PAYLOAD INTEGRATION
M:	Nicholas Chin <nic.c3.14@gmail.com>
W:	https://github.com/nic3-14159/coreDOOM
S:	Maintained
F:	payloads/external/coreDOOM/

LINUXBOOT PAYLOAD INTEGRATION
M:	Christian Walter <christian.walter@9elements.com>
M:	Marcello Sylvester Bauer <info@marcellobauer.com>
S:	Supported
F:	payloads/external/LinuxBoot/

EDK2 PAYLOAD INTEGRATION
M:	Benjamin Doron <benjamin.doron00@gmail.com>
M:	Matt DeVillier <matt.devillier@gmail.com>
M:	Sean Rhodes <sean@starlabs.systems>
M:	Lean Sheng Tan <sheng.tan@9elements.com>
S:	Supported
F:	payloads/external/edk2/

################################################################################
# Utilities
################################################################################

ABUILD
M:	Martin Roth <gaumless@gmail.com>
S:	Supported
F:	util/abuild/

BOARD STATUS
F:	util/board_status/

BUILD SYSTEM
M:	Martin Roth <gaumless@gmail.com>
S:	Supported
F:	Makefile
F:	*.inc
F:	src/include/kconfig.h
F:	util/kconfig/
F:	util/sconfig/
F:	util/xcompile/
F:	util/genbuild_h/

TOOLCHAIN
M:	Martin Roth <gaumless@gmail.com>
M:	Felix Singer <felixsinger@posteo.net>
S:	Supported
F:	util/crossgcc/

DOCKER
M:	Martin Roth <gaumless@gmail.com>
M:	Felix Singer <felixsinger@posteo.net>
S:	Supported
F:	util/docker/

GIT
F:	.git*
F:	/util/gitconfig

LINT SCRIPTS
M:	Martin Roth <gaumless@gmail.com>
S:	Supported
F:	util/lint/

IFDTOOL
M:	Stefan Reinauer <stefan.reinauer@coreboot.org>
F:	util/ifdtool/

INTELTOOL
M:	Stefan Reinauer <stefan.reinauer@coreboot.org>
M:	Pratik Prajapati <pratikkumar.v.prajapati@intel.com>
F:	util/inteltool/

INTELMETOOL
M:	Christian Walter <christian.walter@9elements.com>
F:	util/intelmetool/

INTELP2M
M:	Maxim Polyakov <max.senia.poliak@gmail.com>
S:	Maintained
F:	util/intelp2m/

ME_CLEANER
M:	Nicola Corna <nicola@corna.info>
W:	https://github.com/corna/me_cleaner
S:	Maintained
F:	util/me_cleaner/

LIVEISO
M:	Felix Singer <felixsinger@posteo.net>
S:	Supported
F:	util/liveiso/

################################################################################
# Miscellaneous
################################################################################

ASPEED AST2050 DRIVER & COMMON CODE
M:	Timothy Pearson <tpearson@raptorengineeringinc.com>
S:	Supported
F:	src/drivers/aspeed/common/
F:	src/drivers/aspeed/ast2050/

ACPI
R:	Cliff Huang <cliff.huang@intel.com>
M:	Lance Zhao <lance.zhao@gmail.com>
M:	Tim Wawrzynczak <inforichland@gmail.com>
S:	Supported
F:	src/acpi/
F:	src/arch/x86/acpi/
F:	util/acpi/

LZ4 COMPRESSION
M:	Julius Werner <jwerner@chromium.org>
S:	Supported
F:	src/commonlib/lz4*
F:	payloads/libpayload/liblz4/
F:	util/cbfstool/lz4/

BINARY OBJECTS
F:	3rdparty/blobs/

VERIFIED BOOT
M:	Julius Werner <jwerner@chromium.org>
M:	Yu-Ping Wu <yupingso@google.com>
S:	Supported
F:	3rdparty/vboot/
F:	src/security/vboot/
F:	src/include/tpm.h
F:	src/include/tpm_lite/

RESOURCE ALLOCATOR
F:	src/device/*
F:	src/include/device/
F:	src/include/cpu/cpu.h

OPTION ROM EXECUTION & X86EMU
F:	src/device/oprom/

CBFS
M:	Julius Werner <jwerner@chromium.org>
F:	src/include/cbfs*
F:	src/commonlib/bsd/include/commonlib/bsd/cbfs*
F:	src/commonlib/bsd/cbfs*
F:	src/lib/cbfs.c

CBFSTOOL
F:	util/cbfstool/

CBMEM
F:	src/include/cbmem.h
F:	src/include/cbmem_id.h
F:	util/cbmem/

CONSOLE
F:	src/console/
F:	src/include/console/
F:	src/drivers/uart/

TPM SUPPORT
M:	Christian Walter <christian.walter@9elements.com>
S:	Supported
F:	src/drivers/*/tpm/
F:	src/security/tpm/

SUPERIOS & SUPERIOTOOL
S:	Orphan
F:	src/superio/
F:	util/superiotool/

SPD UTILITIES
M:	Reka Norman <rekanorman@chromium.org>
S:	Maintained
F:	util/spd_tools/
F:	util/spdtool/

MEMLAYOUT
M:	Julius Werner <jwerner@chromium.org>
S:	Supported
F:	*/memlayout.h
F:	*.ld

ELTAN VENDORCODE
M:	Frans Hendriks <fhendriks@eltan.com>
M:	Erik van den Bogaert <ebogaert@eltan.com>
S:	Maintained
F:	src/vendorcode/eltan/

TAS5825M DRIVER
M:	Jeremy Soller <jeremy@system76.com>
M:	Tim Crawford <tcrawford@system76.com>
S:	Maintained
F:	src/drivers/i2c/tas5825m/

TESTS
M:	Jakub Czapiga <jacz@semihalf.com>
S:	Maintained
F:	tests/
F:	payloads/libpayload/tests/

COREBOOT RELEASES
M:	Felix Singer <felixsinger@posteo.net>
M:	Jason Glenesk <jason.glenesk@gmail.com>
M:	Angel Pons <th3fanbus@gmail.com>
M:	Martin Roth <gaumless@gmail.com>
M:	Matt DeVillier <MrChromebox@gmail.com>
S:	Maintained
F:	Documentation/releases/
F:	util/release/

MISSING: TIMERS / DELAYS

MISSING: TIMESTAMPS

MISSING: FMAP

MISSING: GPIO

MISSING: SMP

MISSING: DMP / QEMU-X86

MISSING: ELOG

MISSING: SPI

# *** Infrastructure Owners ***
# This is intended to let people know who they should contact for issues with various infrastructure pieces.
# Hardware
#	Owners: Stefan, Patrick
#	Backups:

# Web Server
#	Owners: Stefan, Patrick
#	Backups:

# Website
#	Owners: Martin
#	Backups: Patrick, Stefan

# Documentation Website
#	Owners: Patrick
#	Backups:

CODE OF CONDUCT
M:	Stefan Reinauer <stefan.reinauer@coreboot.org>
M:	Ronald Minnich <rminnich@gmail.com>
M:	Martin Roth <martin@coreboot.org>
S:	Maintained
F:	Documentation/community/code_of_conduct.md

# Wiki
#	Owners: Stefan, Patrick
#	Backups:

# Gerrit
#	Owners: Stefan, Patrick
#	Backups: Martin

# Jenkins
#	Owners: Patrick, Martin
#	Backups:

# Bug Tracker
#	Owners: Lynxis,
#	Backups: Martin,

# Mailing List
#	Owners: Stefan, Patrick
#	Backups: Martin,

# Software Freedom Conservancy
#	Main contact: Martin
#	“Official” contact: Stefan
