#########################################################################
#									#
# Regular Maintainers for U-Boot board support:				#
#									#
# For any board without permanent maintainer, please contact		#
#	Wolfgang Denk <wd@denx.de>					#
# and Cc: the <U-Boot-Users@lists.sourceforge.net> mailing lists.	#
#									#
# Note: lists sorted by Maintainer Name					#
#########################################################################


#########################################################################
# PowerPC Systems:							#
#									#
# Maintainer Name, Email Address					#
#	Board		CPU						#
#########################################################################

Greg Allen <gallen@arlut.utexas.edu>

	UTX8245		MPC8245

Pantelis Antoniou <panto@intracom.gr>

	NETVIA		MPC8xx

Reinhard Arlt <reinhard.arlt@esd-electronics.com>

	cpci5200	MPC5200
	mecp5200	MPC5200
	pf5200		MPC5200

	CPCI750		PPC750FX/GX

Yuli Barcohen <yuli@arabellasw.com>

	Adder		MPC87x/MPC852T
	ep8248		MPC8248
	ISPAN		MPC8260
	MPC8260ADS	MPC826x/MPC827x/MPC8280
	Rattler		MPC8248
	ZPC1900		MPC8265

Michael Barkowski <michael.barkowski@freescale.com>

	MPC8323ERDB	MPC8323

Jerry Van Baren <gerald.vanbaren@smiths-aerospace.com>

	sacsng		MPC8260

Oliver Brown <obrown@adventnetworks.com>

	gw8260		MPC8260

Conn Clark <clark@esteem.com>

	ESTEEM192E	MPC8xx

Joe D'Abbraccio <ljd015@freescale.com>

	MPC837xERDB	MPC837x

K�ri Dav��sson <kd@flaga.is>

	FLAGADM		MPC823

Torsten Demke <torsten.demke@fci.com>

	eXalion		MPC824x

Wolfgang Denk <wd@denx.de>

	IceCube_5100	MGT5100
	IceCube_5200	MPC5200

	AMX860		MPC860
	ETX094		MPC850
	FPS850L		MPC850
	FPS860L		MPC860
	ICU862		MPC862
	IP860		MPC860
	IVML24		MPC860
	IVML24_128	MPC860
	IVML24_256	MPC860
	IVMS8		MPC860
	IVMS8_128	MPC860
	IVMS8_256	MPC860
	LANTEC		MPC850
	LWMON		MPC823
	NC650		MPC852
	R360MPI		MPC823
	RMU		MPC850
	RRvision	MPC823
	SM850		MPC850
	SPD823TS	MPC823
	TQM823L		MPC823
	TQM823L_LCD	MPC823
	TQM850L		MPC850
	TQM855L		MPC855
	TQM860L		MPC860
	TQM860L_FEC	MPC860
	c2mon		MPC855
	hermes		MPC860
	lwmon		MPC823
	pcu_e		MPC855

	CU824		MPC8240
	Sandpoint8240	MPC8240
	SL8245		MPC8245

	ATC		MPC8250
	PM825		MPC8250

	TQM8255		MPC8255

	CPU86		MPC8260
	PM826		MPC8260
	TQM8260		MPC8260

	P3G4		MPC7410

	PCIPPC2		MPC750
	PCIPPC6		MPC750

	EXBITGEN	PPC405GP

Jon Diekema <jon.diekema@smiths-aerospace.com>

	sbc8260		MPC8260

Dave Ellis <DGE@sixnetio.com>

	SXNI855T	MPC8xx

Thomas Frieden <ThomasF@hyperion-entertainment.com>

	AmigaOneG3SE	MPC7xx

Matthias Fuchs <matthias.fuchs@esd-electronics.com>

	ADCIOP		IOP480 (PPC401)
	APC405		PPC405GP
	AR405		PPC405GP
	ASH405		PPC405EP
	CANBT		PPC405CR
	CPCI2DP		PPC405GP
	CPCI405		PPC405GP
	CPCI4052	PPC405GP
	CPCI405AB	PPC405GP
	CPCI405DT	PPC405GP
	CPCIISER4	PPC405GP
	DASA_SIM	IOP480 (PPC401)
	DP405		PPC405EP
	DU405		PPC405GP
	DU440		PPC440EPx
	G2000		PPC405EP
	HH405		PPC405EP
	HUB405		PPC405EP
	OCRTC		PPC405GP
	ORSG		PPC405GP
	PCI405		PPC405GP
	PLU405		PPC405EP
	PMC405		PPC405GP
	PMC440		PPC440EPx
	VOH405		PPC405EP
	VOM405		PPC405EP
	WUH405		PPC405EP
	CMS700		PPC405EP

Niklaus Giger <niklaus.giger@netstal.com>

	HCU4		PPC405GPr
	MCU25		PPC405GPr
	HCU5		PPC440EPx

Frank Gottschling <fgottschling@eltec.de>

	MHPC		MPC8xx

	BAB7xx		MPC740/MPC750

Wolfgang Grandegger <wg@denx.de>

	CCM		MPC855

	PN62		MPC8240
	IPHASE4539	MPC8260
	SCM		MPC8260

Howard Gray <mvsensor@matrix-vision.de>

	MVS1		MPC823

Joe Hamman <joe.hamman@embeddedspecialties.com>

	sbc8548		MPC8548
	sbc8641d	MPC8641D

Klaus Heydeck <heydeck@kieback-peter.de>

	KUP4K		MPC855
	KUP4X		MPC859

Gary Jennejohn <garyj@denx.de>

	quad100hd	PPC405EP

Murray Jensen <Murray.Jensen@csiro.au>

	cogent_mpc8xx	MPC8xx

	cogent_mpc8260	MPC8260
	hymod		MPC8260

Larry Johnson <lrj@acm.org>

	korat		PPC440EPx

Brad Kemp <Brad.Kemp@seranoa.com>

	ppmc8260	MPC8260

Sangmoon Kim <dogoil@etinsys.com>

	debris		MPC8245
	KVME080		MPC8245

Thomas Lange <thomas@corelatus.se>

	GTH		MPC860

Robert Lazarski <robertlazarski@gmail.com>

	ATUM8548	MPC8548

The LEOX team <team@leox.org>

	ELPT860		MPC860T

Dave Liu <daveliu@freescale.com>

	MPC8315ERDB	MPC8315
	MPC832XEMDS	MPC832x
	MPC8360EMDS	MPC8360
	MPC837XEMDS	MPC837x

Nye Liu <nyet@zumanetworks.com>

	ZUMA		MPC7xx_74xx

Jon Loeliger <jdl@freescale.com>

	MPC8540ADS	MPC8540
	MPC8560ADS	MPC8560
	MPC8541CDS	MPC8541
	MPC8555CDS	MPC8555

	MPC8641HPCN	MPC8641D

Dan Malek <dan@embeddedalley.com>

	stxgp3		MPC85xx
	stxssa		MPC85xx
	stxxtc		MPC8xx

Eran Man <eran@nbase.co.il>

	EVB64260_750CX	MPC750CX

Andrea "llandre" Marson <andrea.marson@dave-tech.it>

	PPChameleonEVB	PPC405EP

Reinhard Meyer <r.meyer@emk-elektronik.de>

	TOP860		MPC860T
	TOP5200		MPC5200

Tolunay Orkun <torkun@nextio.com>

	csb272		PPC405GP
	csb472		PPC405GP

John Otken <jotken@softadvances.com>

	luan		PPC440SP
	taihu		PPC405EP

Keith Outwater <Keith_Outwater@mvis.com>

	GEN860T		MPC860T
	GEN860T_SC	MPC860T

Frank Panno <fpanno@delphintech.com>

	ep8260		MPC8260

Denis Peter <d.peter@mpl.ch>

	MIP405		PPC4xx
	PIP405		PPC4xx

Kim Phillips <kim.phillips@freescale.com>

	MPC8349EMDS	MPC8349

Daniel Poirot <dan.poirot@windriver.com>

	sbc8240		MPC8240
	sbc405		PPC405GP

Stefan Roese <sr@denx.de>

	P3M7448		MPC7448

	uc100		MPC857

	TQM85xx		MPC8540/8541/8555/8560

	acadia		PPC405EZ
	alpr		PPC440GX
	bamboo		PPC440EP
	bunbinga	PPC405EP
	canyonlands	PPC460EX
	ebony		PPC440GP
	glacier		PPC460GT
	haleakala	PPC405EXr
	katmai		PPC440SPe
	kilauea		PPC405EX
	lwmon5		PPC440EPx
	makalu		PPC405EX
	ocotea		PPC440GX
	p3p440		PPC440GP
	pcs440ep	PPC440EP
	rainier		PPC440GRx
	sequoia		PPC440EPx
	sycamore	PPC405GPr
	taishan		PPC440GX
	walnut		PPC405GP
	yellowstone	PPC440GR
	yosemite	PPC440EP
	zeus		PPC405EP

	P3M750		PPC750FX/GX/GL

Yusdi Santoso <yusdi_santoso@adaptec.com>

	HIDDEN_DRAGON	MPC8241/MPC8245

Travis Sawyer (travis.sawyer@sandburst.com>

	KAREF		PPC440GX
	METROBOX	PPC440GX
	XPEDITE1K	PPC440GX

Heiko Schocher <hs@denx.de>

	ids8247		MPC8247
	jupiter		MPC5200
	mgcoge		MPC8247
	mgsuvd		MPC852
	municse		MPC5200
	sc3		PPC405GP
	uc101		MPC5200


Peter De Schrijver <p2@mind.be>

	ML2		PPC4xx

Andre Schwarz <andre.schwarz@matrix-vision.de>

	mvbc_p		MPC5200
	mvblm7		MPC8343

Timur Tabi <timur@freescale.com>

	MPC8349E-mITX	MPC8349
	MPC8349E-mITX-GP MPC8349

Erik Theisen <etheisen@mindspring.com>

	W7OLMC		PPC4xx
	W7OLMG		PPC4xx

Jim Thompson <jim@musenki.com>

	MUSENKI		MPC8245/8241
	Sandpoint8245	MPC8245

Rune Torgersen <runet@innovsys.com>

	MPC8266ADS	MPC8266


David Updegraff <dave@cray.com>

	CRAYL1		PPC4xx

Anton Vorontsov <avorontsov@ru.mvista.com>

	MPC8360ERDK	MPC8360

Josef Wagner <Wagner@Microsys.de>

	CPC45		MPC8245
	PM520		MPC5200

Stephen Williams <steve@icarus.com>

	JSE		PPC405GPr

John Zhan <zhanz@sinovee.com>

	svm_sc8xx	MPC8xx

Guennadi Liakhovetski <g.liakhovetski@gmx.de>

	linkstation	MPC8241

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

Unknown / orphaned boards:

	ADS860		MPC8xx
	FADS823		MPC8xx
	FADS850SAR	MPC8xx
	FADS860T	MPC8xx
	GENIETV		MPC8xx
	IAD210		MPC8xx
	MBX		MPC8xx
	MBX860T		MPC8xx
	NX823		MPC8xx
	RPXClassic	MPC8xx
	RPXlite		MPC8xx

	ERIC		PPC4xx

	MOUSSE		MPC824x

	RPXsuper	MPC8260
	rsdproto	MPC8260

	EVB64260	MPC7xx_74xx


#########################################################################
# ARM Systems:								#
#									#
# Maintainer Name, Email Address					#
#	Board		CPU						#
#########################################################################

Rowel Atienza <rowel@diwalabs.com>

	armadillo	ARM720T

Rishi Bhattacharya <rishi@ti.com>

	omap5912osk	ARM926EJS

Cliff Brake <cliff.brake@gmail.com>

	pxa255_idp	xscale

Rick Bronson <rick@efn.org>

	AT91RM9200DK	at91rm9200

George G. Davis <gdavis@mvista.com>

	assabet		SA1100
	gcplus		SA1100

Thomas Elste <info@elste.org>

	modnet50	ARM720T (NET+50)

Peter Figuli <peposh@etc.sk>

	wepep250	xscale

Marius Gr�ger <mag@sysgo.de>

	impa7		ARM720T (EP7211)
	ep7312		ARM720T (EP7312)

Kshitij Gupta <kshitij@ti.com>

	omap1510inn	ARM925T
	omap1610inn	ARM926EJS

Gary Jennejohn <gj@denx.de>

	smdk2400	ARM920T
	trab		ARM920T

Konstantin Kletschke <kletschke@synertronixx.de>
	scb9328		ARM920T

Nishant Kamat <nskamat@ti.com>

	omap1610h2	ARM926EJS

Sergey Kubushyn <ksi@koi8.net>

	DV-EVM		ARM926EJS
	SONATA		ARM926EJS
	SCHMOOGIE	ARM926EJS

Prakash Kumar <prakash@embedx.com>

	cerf250		xscale

David M�ller <d.mueller@elsoft.ch>

	smdk2410	ARM920T
	VCMA9		ARM920T

Rolf Offermanns <rof@sysgo.de>

	shannon		SA1100

Peter Pearse <peter.pearse@arm.com>
	integratorcp	All current ARM supplied & supported core modules
			-see http://www.arm.com/products/DevTools/Hardware_Platforms.html
	versatile	ARM926EJ-S
	versatile	ARM926EJ-S

Dave Peverley <dpeverley@mpc-data.co.uk>

	omap730p2	ARM926EJS

Stelian Pop <stelian.pop@leadtechdesign.com>

	at91cap9adk	ARM926EJS (AT91CAP9 SoC)
	at91sam9260ek	ARM926EJS (AT91SAM9260 SoC)
	at91sam9261ek	ARM926EJS (AT91SAM9261 SoC)
	at91sam9263ek	ARM926EJS (AT91SAM9263 SoC)
	at91sam9rlek	ARM926EJS (AT91SAM9RL SoC)

Stefan Roese <sr@denx.de>

	ixdpg425	xscale
	pdnb3		xscale
	scpu		xscale

Robert Schwebel <r.schwebel@pengutronix.de>

	csb226		xscale
	innokom		xscale

Andrea Scian <andrea.scian@dave-tech.it>

	B2		ARM7TDMI (S3C44B0X)

Greg Ungerer <greg.ungerer@opengear.com>

	cm4008		ks8695p
	cm4116		ks8695p
	cm4148		ks8695p

Richard Woodruff <r-woodruff2@ti.com>

	omap2420h4	ARM1136EJS

Kyungmin Park <kyungmin.park@samsung.com>

	apollon		ARM1136EJS

Alex Z�pke <azu@sysgo.de>

	lart		SA1100
	dnp1110		SA1110

Michael Schwingen <michael@schwingen.org>

	actux1		xscale
	actux2		xscale
	actux3		xscale
	actux4		xscale

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

Unknown / orphaned boards:
 	Board		CPU	Last known maintainer / Comment
.........................................................................
	cradle		xscale	Kyle Harris <kharris@nexus-tech.net> / dead address
	ixdp425		xscale	Kyle Harris <kharris@nexus-tech.net> / dead address
	lubbock		xscale	Kyle Harris <kharris@nexus-tech.net> / dead address

#########################################################################
# x86 Systems:								#
#									#
# Maintainer Name, Email Address					#
#	Board		CPU						#
#########################################################################

Daniel Engstr�m <daniel@omicron.se>

	sc520_cdp	x86

#########################################################################
# MIPS Systems:								#
#									#
# Maintainer Name, Email Address					#
#	Board		CPU						#
#########################################################################

Wolfgang Denk <wd@denx.de>

	incaip		MIPS32 4Kc
	purple		MIPS64 5Kc

Thomas Lange <thomas@corelatus.se>
	dbau1x00	MIPS32 Au1000
	gth2		MIPS32 Au1000

Vlad Lungu <vlad.lungu@windriver.com>
	qemu_mips	MIPS32

#########################################################################
# Nios-32 Systems:							#
#									#
# Maintainer Name, Email Address					#
#	Board		CPU						#
#########################################################################

Stephan Linz <linz@li-pro.net>

	DK1S10		Nios-32
	ADNPESC1	Nios-32

Scott McNutt <smcnutt@psyent.com>

	DK1C20		Nios-32

#########################################################################
# Nios-II Systems:							#
#									#
# Maintainer Name, Email Address					#
#	Board		CPU						#
#########################################################################

Scott McNutt <smcnutt@psyent.com>

	PCI5441		Nios-II
	PK1C20		Nios-II
	EP1C20		Nios-II
	EP1S10		Nios-II
	EP1S40		Nios-II

#########################################################################
# MicroBlaze Systems:							#
#									#
# Maintainer Name, Email Address					#
#	Board		CPU						#
#########################################################################

Yasushi Shoji <yashi@atmark-techno.com>

	SUZAKU		MicroBlaze

Michal Simek <monstr@monstr.eu>

	ML401		MicroBlaze
	XUPV2P		MicroBlaze

#########################################################################
# Coldfire Systems:							#
#									#
# Maintainer Name, Email Address					#
#	Board		CPU						#
#########################################################################

Matthias Fuchs <matthias.fuchs@esd-electronics.com>

	TASREG		MCF5249

TsiChung Liew <Tsi-Chung.Liew@freescale.com>

	M52277EVB	mcf5227x
	M5235EVB	mcf52x2
	M5329EVB	mcf532x
	M5373EVB	mcf532x
	M54455EVB	mcf5445x
	M5475EVB	mcf547x_8x
	M5485EVB	mcf547x_8x

Hayden Fraser <Hayden.Fraser@freescale.com>

	M5253EVBE	mcf52x2

#########################################################################
# AVR32 Systems:							#
#									#
# Maintainer Name, Email Address					#
#	Board		CPU						#
#########################################################################

Hans-Christian Egtvedt <hans-christian.egtvedt@atmel.com>

	FAVR-32-EZKIT		AT32AP7000

Mark Jackson <mpfj@mimc.co.uk>

	MIMC200			AT32AP7000

Alex Raimondi <alex.raimondi@miromico.ch>
Julien May <julien.may@miromico.ch>

	HAMMERHEAD		AT32AP7000

Haavard Skinnemoen <haavard.skinnemoen@atmel.com>

	ATSTK1000	AT32AP7xxx
	ATSTK1002	AT32AP7000
	ATSTK1003	AT32AP7001
	ATSTK1004	AT32AP7002
	ATSTK1006	AT32AP7000
	ATNGW100	AT32AP7000

#########################################################################
# SuperH Systems:							#
#									#
# Maintainer Name, Email Address					#
#	Board		CPU						#
#########################################################################

Nobuhiro Iwamatsu <iwamatsu@nigauri.org>

	MS7750SE	SH7750
	MS7722SE	SH7722
	R7780MP		SH7780
	R2DPlus		SH7751R
	SH7763RDP	SH7763

Mark Jonas <mark.jonas@de.bosch.com>

	mpr2		SH7720

Yoshihiro Shimoda <shimoda.yoshihiro@renesas.com>

	MS7720SE	SH7720

Yusuke Goda <goda.yusuke@renesas.com>

	MIGO-R		SH7722

#########################################################################
# Blackfin Systems:							#
#									#
# Maintainer Name, Email Address					#
#	Board		CPU						#
#########################################################################

Mike Frysinger <vapier@gentoo.org>
Blackfin Team <u-boot-devel@blackfin.uclinux.org>

	BF533-EZKIT	BF533
	BF533-STAMP	BF533
	BF537-STAMP	BF537
	BF561-EZKIT	BF561

#########################################################################
# End of MAINTAINERS list						#
#########################################################################
