#
#   Parts of the development effort for this project have been
#   sponsored by SIEMENS AG, Austria. Thanks to SIEMENS for
#   supporting an Open Source project!
#
#
#   This is at least a partial credits-file of individual people that
#   have contributed to the U-Boot project. It is sorted by name and
#   formatted to allow easy grepping and beautification by scripts.
#   The fields are: name (N), email (E), web-address (W), PGP key ID
#   and fingerprint (P), description (D), and snail-mail address (S).
#   Thanks,
#
#                       Wolfgang Denk
#----------

N: Dr. Bruno Achauer
E: bruno@exet-ag.de
D: Support for NetBSD (both as host and target system)

N: Guillaume Alexandre
E: guillaume.alexandre@gespac.ch
D: Add PCIPPC6 configuration

N: Pantelis Antoniou
E: panto@intracom.gr
D: NETVIA & NETPHONE board support, ARTOS support.
D: Support for Silicon Turnkey eXpress XTc

N: Pierre Aubert
E: <p.aubert@staubli.com>
D: Support for RPXClassic board

N: Yuli Barcohen
E: yuli@arabellasw.com
D: Unified support for Motorola MPC826xADS/MPC8272ADS/PQ2FADS boards.
D: Support for Zephyr Engineering ZPC.1900 board.
D: Support for Interphase iSPAN boards.
D: Support for Analogue&Micro Adder boards.
D: Support for Analogue&Micro Rattler boards.
W: http://www.arabellasw.com

N: Jerry van Baren
E: <vanbaren@cideas.com>
D: BedBug port to 603e core (MPC82xx). Code for enhanced memory test.

N: Pavel Bartusek
E: <pba@sysgo.com>
D: Reiserfs support
W: http://www.elinos.com

N: Andre Beaudin
E: <andre.beaudin@colubris.com>
D: PCMCIA, Ethernet, TFTP

N: Jon Benediktsson
E: jonb@marel.is
D: Support for Marel V37 board

N: Raphael Bossek
E: raphael.bossek@solutions4linux.de
D: 8xxrom-0.3.0

N: Cliff Brake
E: cliff.brake@gmail.com
D: Port to Vibren PXA255 IDP platform
W: http://www.vibren.com
W: http://bec-systems.com

N: Rick Bronson
E: rick@efn.org
D: Atmel AT91RM9200DK and NAND support

N: David Brown
E: DBrown03@harris.com
D: Extensions to 8xxrom-0.3.0

N: Oliver Brown
E: obrown@adventnetworks.com
D: Port to the gw8260 board

N: Jonathan De Bruyne
E: jonathan.debruyne@siemens.atea.be
D: Port to Siemens IAD210 board

N: Ken Chou
E: kchou@ieee.org
D: Support for A3000 SBC board

N: Conn Clark
E: clark@esteem.com
D: ESTEEM192E support

N: Magnus Damm
E: damm@opensource.se
D: 8xxrom

N: Richard Danter
E: richard.danter@windriver.com
D: Support for Wind River PPMC 7xx/74xx boards

N: George G. Davis
E: gdavis@mvista.com
D: Board ports for ADS GraphicsClient+ and Intel Assabet

N: Arun Dharankar
E: ADharankar@ATTBI.Com
D: threads / scheduler example code

N: K?ri Dav??sson
E: kd@flaga.is
D: FLAGA DM Support

N: Wolfgang Denk
E: wd@denx.de
D: U-Boot initial version, continuing maintenance, ARMBoot merge
W: http://www.denx.de

N: Dan A. Dickey
E: ddickey@charter.net
D: FADS Support

N: James F. Dougherty
E: jfd@GigabitNetworks.COM
D: Port to the MOUSSE board

N: Dave Ellis
E: DGE@sixnetio.com
D: EEPROM Speedup, SXNI855T port

N: Daniel Engstr?m
E: daniel@omicron.se
D: x86 port, Support for sc520_cdp board

N: Hayden Fraser
E: Hayden.Fraser@freescale.com
D: Support for ColdFire MCF5253
W: www.freescale.com

N: Dr. Wolfgang Grandegger
E: wg@denx.de
D: Support for Interphase 4539 T1/E1/J1 PMC, PN62, CCM, SCM boards
W: www.denx.de

N: Peter Figuli
E: peposh@etc.sk
D: Support for WEP EP250 (PXA) board

N: Thomas Frieden
E: ThomasF@hyperion-entertainment.com
D: Support for AmigaOne

N: Paul Gortmaker
E: paul.gortmaker@windriver.com
D: Support for WRS SBC8347/8349 boards

N: Frank Gottschling
E: fgottschling@eltec.de
D: Support for ELTEC MHPC/ELPPC boards, cfb-console, i8042, SMI LynxEM
W: www.eltec.de

N: Marius Groeger
E: mgroeger@sysgo.de
D: MBX Support, board specific function interface, EST SBC8260 support; initial support for StrongARM (LART), ARM720TDMI (implementa A7)
W: www.elinos.com

N: Kirk Haderlie
E: khaderlie@vividimage.com
D: Added TFTP to 8xxrom (-> 0.3.1)

N: Chris Hallinan
E: clh@net1plus.com
D: DHCP Support

N: Anne-Sophie Harnois
E: Anne-Sophie.Harnois@nextream.fr
D: Port to Walnut405 board

N: Andreas Heppel
E: aheppel@sysgo.de
D: CPU Support for MPC 75x

N: Josh Huber
E: huber@alum.wpi.edu
D: Port to the Galileo Evaluation Board, and the MPC74xx cpu series.
W: http://www.mclx.com/

H: Stuart Hughes
E: stuarth@lineo.com
D: Port to MPC8260ADS board

H: Rich Ireland
E: r.ireland@computer.org
D: FPGA device configuration driver

H: Mark Jackson
E: mpfj@mimc.co.uk
D: Port to MIMC200 board

N: Gary Jennejohn
E: garyj@jennejohn.org
D: Support for Samsung ARM920T S3C2400X, ARM920T "TRAB"
W: www.denx.de

N: Murray Jensen
E: Murray.Jensen@csiro.au
D: Initial 8260 support; GDB support
D: Port to Cogent+Hymod boards; Hymod Board Database

N: Yoo. Jonghoon
E: yooth@ipone.co.kr
D: Added port to the RPXlite board

N: Mark Jonas
E: mark.jonas@freescale.com
D: Support for Freescale Total5200 platform
W: http://www.mobilegt.com/

N: Mark Jonas
E: mark.jonas@de.bosch.com
D: Support for MPR2 board

N: Sam Song
E: samsongshu@yahoo.com.cn
D: Port to the RPXlite_DW board

N: Brad Kemp
E: Brad.Kemp@seranoa.com
D: Port to Windriver ppmc8260 board

N: Sangmoon Kim
E: dogoil@etinsys.com
D: Support for debris board
D: Support for KVME080 board

N: Frederick W. Klatt
E: fred.klatt@windriver.com
D: Support for Wind River SBC8540/SBC8560 boards

N: Thomas Koeller
E: tkoeller@gmx.net
D: Port to Motorola Sandpoint 3 (MPC8240)

N: Raghu Krishnaprasad
E: Raghu.Krishnaprasad@fci.com
D: Support for Adder-II MPC852T evaluation board
W: http://www.forcecomputers.com

N: Sergey Kubushyn
E: ksi@koi8.net
D: Support for various TI DaVinci based boards.

N: Bernhard Kuhn
E: bkuhn@metrowerks.com
D Support for Coldfire CPU; Support for Motorola M5272C3 and M5282EVB boards

N: Prakash Kumar
E: prakash@embedx.com
D  Support for Intrinsyc CERF PXA250 board.

N: Thomas Lange
E: thomas@corelatus.se
D: Support for GTH, GTH2 and dbau1x00 boards; lots of PCMCIA fixes

N: The LEOX team
E: team@leox.org
D: Support for LEOX boards, DS164x RTC
W: http://www.leox.org

N: TsiChung Liew
E: Tsi-Chung.Liew@freescale.com
D: Support for ColdFire MCF523x, MCF532x, MCF5445x, MCF547x_8x
W: www.freescale.com

N: Leif Lindholm
E: leif.lindholm@i3micro.com
D: Support for AMD dbau1550 board.

N: Stephan Linz
E: linz@li-pro.net
D: Support for Nios Stratix Development Kit (DK-1S10)
D: Support for SSV ADNP/ESC1 (Nios Cyclone)
W: http://www.li-pro.net

N: Dave Liu
E: daveliu@freescale.com
D: Support for MPC8315, MPC832x, MPC8360, MPC837x
W: www.freescale.com

N: Raymond Lo
E: lo@routefree.com
D: Support for DOS partitions

N: James MacAulay
E: james.macaulay@amirix.com
D: Suppport for Amirix AP1000
W: www.amirix.com

N: Dan Malek
E: dan@embeddedalley.com
D: FADSROM, the grandfather of all of this
D: Support for Silicon Turnkey eXpress XTc

N: Andrea "llandre" Marson
E: andrea.marson@dave-tech.it
D: Port to PPChameleonEVB board
W: www.dave-tech.it

N: Reinhard Meyer
E: r.meyer@emk-elektronik.de
D: Port to EMK TOP860 Module

N: Jay Monkman
E: jtm@smoothsmoothie.com
D: EST SBC8260 support

N: Frank Morauf
E: frank.morauf@salzbrenner.com
D: Support for Embedded Planet RPX Super Board

N: David M?ller
E: d.mueller@elsoft.ch
D: Support for Samsung ARM920T SMDK2410 eval board

N: Scott McNutt
E: smcnutt@psyent.com
D: Support for Altera Nios-32 CPU
D: Support for Altera Nios-II CPU
D: Support for Nios Cyclone Development Kit (DK-1C20)
W: http://www.psyent.com

N: Rolf Offermanns
E: rof@sysgo.de
D: Initial support for SSV-DNP1110, SMC91111 driver
W: www.elinos.com

N: John Otken
E: jotken@softadvances.com
D: Support for AMCC Luan 440SP board

N: Tolunay Orkun
E: torkun@nextio.com
D: Support for Cogent CSB272 & CSB472 boards

N: Keith Outwater
E: keith_outwater@mvis.com
D: Support for generic/custom MPC860T boards (GEN860T, GEN860T_SC)

N: Frank Panno
E: fpanno@delphintech.com
D: Support for Embedded Planet EP8260 Board

N: Denis Peter
E: d.peter@mpl.ch
D: Support for 4xx SCSI, floppy, CDROM, CT69000 video, ...
D: Support for PIP405 board
D: Support for MIP405 board

N: Dave Peverley
E: dpeverley@mpc-data.co.uk
W: http://www.mpc-data.co.uk
D: OMAP730 P2 board support

N: Bill Pitts
E: wlp@mindspring.com
D: BedBug embedded debugger code

N: Daniel Poirot
E: dan.poirot@windriver.com
D: Support for the Wind River sbc405, sbc8240 board
W: http://www.windriver.com

N: Stelian Pop
E: stelian@popies.net
D: Atmel AT91CAP9ADK support

N: Ricardo Ribalda Delgado
E: ricardo.ribalda@uam.es
D: PPC440x5 (Virtex5), ML507 Board, eeprom_simul, adt7460, v5fx30teval
D: Virtex ppc440 generic architecture
D: Virtex ppc405 generic architecture
W: http://www.ii.uam.es/~rribalda

N: Stefan Roese
E: sr@denx.de
D: AMCC PPC4xx Support
W: http://www.denx.de

N: Erwin Rol
E: erwin@muffin.org
D: boot support for RTEMS

N: Paul Ruhland
E: pruhland@rochester.rr.com
D: Port to Logic Zoom LH7A40x SDK board(s)

N: Neil Russell
E: caret@c-side.com
D: Author of LiMon-1.4.2, which contributed some ideas

N: Travis B. Sawyer
E: travis.sawyer@sandburst.com
D: Support for AMCC PPC440GX, XES XPedite1000 440GX PrPMC board.  AMCC 440gx Ref Platform (Ocotea)

N: Paolo Scaffardi
E: arsenio@tin.it
D: FADS823 configuration, MPC823 video support, I2C, wireless keyboard, lots more

N: Andre Schwarz
E: andre.schwarz@matrix-vision.de
D: Support for Matrix Vision boards (MVBLM7/MVBC_P/MVSMR)

N: Robert Schwebel
E: r.schwebel@pengutronix.de
D: Support for csb226 and innokom boards (PXA2xx)

N: Aaron Sells
E: sellsa@embeddedplanet.com
D: Support for EP82xxM

N: Art Shipkowski
E: art@videon-central.com
D: Support for NetSilicon NS7520
D: Support for ColdFire MCF5275

N: Jeremy C. Andrus
E: jeremy@jeremya.com
D: ColdFire MCF5249 initialization code
W: jeremya.com

N: Michal Simek
E: monstr@monstr.eu
D: Support for Microblaze, ML401, XUPV2P board
W: www.monstr.eu

N: Yasushi Shoji
E: yashi@atmark-techno.com
D: Support for Xilinx MicroBlaze, for Atmark Techno SUZAKU FPGA board

N: Kurt Stremerch
E: kurt@exys.be
D: Support for Exys XSEngine board

N: Andrea Scian
E: andrea.scian@dave-tech.it
D: Port to B2 board
W: www.dave-tech.it

N: Timur Tabi
E: timur@freescale.com
D: Support for MPC8349E-mITX
W: www.freescale.com

N: Rob Taylor
E: robt@flyingpig.com
D: Port to MBX860T and Sandpoint8240

N: Erik Theisen
E: etheisen@mindspring.com
D: MBX8xx and many other patches

N: Jim Thompson
E: jim@musenki.com
D: Support for MUSENKI board

N: Rune Torgersen
E: <runet@innovsys.com>
D: Support for Motorola MPC8266ADS board

N: Greg Ungerer
E: greg.ungerer@opengear.com
D: Support for ks8695 CPU, and OpenGear cmXXXX boards

N: David Updegraff
E: dave@cray.com
D: Port to Cray L1 board; DHCP vendor extensions

N: Christian Vejlbo
E: christian.vejlbo@tellabs.com
D: FADS860T ethernet support

N: Robert Whaley
E: rwhaley@applieddata.net
D: Port to ARM PXA27x adsvix SBC

N: Martin Winistoerfer
E: martinwinistoerfer@gmx.ch
D: Port to MPC555/556 microcontrollers and support for cmi board

N: David Wu
E: support@arcturusnetworks.com
D: Mercury Security EP2500
W: http://www.arcturusnetworks.com

N: Ming-Len Wu
E: minglen_wu@techware.com.tw
D: Motorola MX1ADS board support
W: http://www.techware.com.tw/

N: Xianghua Xiao
E: x.xiao@motorola.com
D: Support for Motorola 85xx(PowerQUICC III) chip, MPC8540ADS and MPC8560ADS boards.

N: John Zhan
E: zhanz@sinovee.com
D: Support for SinoVee Microsystems SC8xx SBC

N: Alex Zuepke
E: azu@sysgo.de
D: Overall improvements on StrongARM, ARM720TDMI; Support for Tuxscreen; initial PCMCIA support for ARM
W: www.elinos.com

N: Nobuhiro Iwamatsu
E: iwamatsu@nigauri.org
D: Support for SuperH, MS7750SE01 and  MS7722SE01 boards.
W: http://www.nigauri.org/~iwamatsu/

N: Alan Lu
E: alnalu001@gmail.com
D: Support for Artila M-501 starter kit
W: http://www.artila.com/

N: Kimmo Leppala
E: kimmo.leppala@sysart.fi
D: Support for Artila M-501 starter kit
W: http://www.sysart.fi/

N: Timo Tuunainen
E: timo.tuunainen@sysart.fi
D: Support for Artila M-501 starter kit
W: http://www.sysart.fi/

N: Philip Balister
E: philip@opensdr.com
D: Port to Lyrtech SFFSDR development board.
W: www.opensdr.com
