Device tree binding vendor prefix registry.  Keep list in alphabetical order.

This isn't an exhaustive list, but you should add new prefixes to it before
using them to avoid name-space collisions.

abilis	Abilis Systems
abracon	Abracon Corporation
actions	Actions Semiconductor Co., Ltd.
active-semi	Active-Semi International Inc
ad	Avionic Design GmbH
adapteva	Adapteva, Inc.
adaptrum	Adaptrum, Inc.
adh	AD Holdings Plc.
adi	Analog Devices, Inc.
advantech	Advantech Corporation
aeroflexgaisler	Aeroflex Gaisler AB
al	Annapurna Labs
allo	Allo.com
allwinner	Allwinner Technology Co., Ltd.
alphascale	AlphaScale Integrated Circuits Systems, Inc.
altr	Altera Corp.
amarula	Amarula Solutions
amazon	Amazon.com, Inc.
amcc	Applied Micro Circuits Corporation (APM, formally AMCC)
amd	Advanced Micro Devices (AMD), Inc.
amlogic	Amlogic, Inc.
ampire	Ampire Co., Ltd.
ams	AMS AG
amstaos	AMS-Taos Inc.
analogix	Analogix Semiconductor, Inc.
andestech	Andes Technology Corporation
apm	Applied Micro Circuits Corporation (APM)
aptina	Aptina Imaging
arasan	Arasan Chip Systems
archermind ArcherMind Technology (Nanjing) Co., Ltd.
arctic	Arctic Sand
aries	Aries Embedded GmbH
arm	ARM Ltd.
armadeus	ARMadeus Systems SARL
arrow	Arrow Electronics
artesyn	Artesyn Embedded Technologies Inc.
asahi-kasei	Asahi Kasei Corp.
aspeed	ASPEED Technology Inc.
atlas	Atlas Scientific LLC
atmel	Atmel Corporation
auo	AU Optronics Corporation
auvidea Auvidea GmbH
avago	Avago Technologies
avia	avia semiconductor
avic	Shanghai AVIC Optoelectronics Co., Ltd.
avnet	Avnet, Inc.
axentia	Axentia Technologies AB
axis	Axis Communications AB
bananapi BIPAI KEJI LIMITED
bhf	Beckhoff Automation GmbH & Co. KG
boe	BOE Technology Group Co., Ltd.
bosch	Bosch Sensortec GmbH
boundary	Boundary Devices Inc.
brcm	Broadcom Corporation
buffalo	Buffalo, Inc.
bticino Bticino International
calxeda	Calxeda
capella	Capella Microsystems, Inc
cascoda	Cascoda, Ltd.
cavium	Cavium, Inc.
cdns	Cadence Design Systems Inc.
ceva	Ceva, Inc.
chipidea	Chipidea, Inc
chipone		ChipOne
chipspark	ChipSPARK
chrp	Common Hardware Reference Platform
chunghwa	Chunghwa Picture Tubes Ltd.
ciaa	Computadora Industrial Abierta Argentina
cirrus	Cirrus Logic, Inc.
cloudengines	Cloud Engines, Inc.
cnm	Chips&Media, Inc.
cnxt	Conexant Systems, Inc.
compulab	CompuLab Ltd.
cortina	Cortina Systems, Inc.
cosmic	Cosmic Circuits
crane	Crane Connectivity Solutions
creative	Creative Technology Ltd
crystalfontz	Crystalfontz America, Inc.
cubietech	Cubietech, Ltd.
cypress	Cypress Semiconductor Corporation
cznic	CZ.NIC, z.s.p.o.
dallas	Maxim Integrated Products (formerly Dallas Semiconductor)
davicom	DAVICOM Semiconductor, Inc.
delta	Delta Electronics, Inc.
denx	Denx Software Engineering
devantech	Devantech, Ltd.
dh	DH electronics GmbH
digi	Digi International Inc.
digilent	Diglent, Inc.
dioo	Dioo Microcircuit Co., Ltd
dlg	Dialog Semiconductor
dlink	D-Link Corporation
dmo	Data Modul AG
domintech	Domintech Co., Ltd.
dongwoon	Dongwoon Anatech
dptechnics	DPTechnics
dragino	Dragino Technology Co., Limited
ea	Embedded Artists AB
ebv	EBV Elektronik
eckelmann	Eckelmann AG
edt	Emerging Display Technologies
eeti	eGalax_eMPIA Technology Inc
elan	Elan Microelectronic Corp.
embest	Shenzhen Embest Technology Co., Ltd.
emmicro	EM Microelectronic
emtrion	emtrion GmbH
energymicro	Silicon Laboratories (formerly Energy Micro AS)
engicam	Engicam S.r.l.
epcos	EPCOS AG
epfl	Ecole Polytechnique Fédérale de Lausanne
epson	Seiko Epson Corp.
est	ESTeem Wireless Modems
ettus	NI Ettus Research
eukrea  Eukréa Electromatique
everest	Everest Semiconductor Co. Ltd.
everspin	Everspin Technologies, Inc.
exar	Exar Corporation
excito	Excito
ezchip	EZchip Semiconductor
fairphone	Fairphone B.V.
faraday	Faraday Technology Corporation
fcs	Fairchild Semiconductor
firefly	Firefly
focaltech	FocalTech Systems Co.,Ltd
friendlyarm	Guangzhou FriendlyARM Computer Tech Co., Ltd
fsl	Freescale Semiconductor
fujitsu	Fujitsu Ltd.
gcw Game Consoles Worldwide
ge	General Electric Company
geekbuying	GeekBuying
gef	GE Fanuc Intelligent Platforms Embedded Systems, Inc.
GEFanuc	GE Fanuc Intelligent Platforms Embedded Systems, Inc.
geniatech	Geniatech, Inc.
giantplus	Giantplus Technology Co., Ltd.
globalscale	Globalscale Technologies, Inc.
gmt	Global Mixed-mode Technology, Inc.
goodix	Shenzhen Huiding Technology Co., Ltd.
google	Google, Inc.
grinn	Grinn
grmn	Garmin Limited
gumstix	Gumstix, Inc.
gw	Gateworks Corporation
hannstar	HannStar Display Corporation
haoyu	Haoyu Microelectronic Co. Ltd.
hardkernel	Hardkernel Co., Ltd
hideep	HiDeep Inc.
himax	Himax Technologies, Inc.
hisilicon	Hisilicon Limited.
hit	Hitachi Ltd.
hitex	Hitex Development Tools
holt	Holt Integrated Circuits, Inc.
honeywell	Honeywell
hp	Hewlett Packard
holtek	Holtek Semiconductor, Inc.
hwacom	HwaCom Systems Inc.
i2se	I2SE GmbH
ibm	International Business Machines (IBM)
idt	Integrated Device Technologies, Inc.
ifi	Ingenieurburo Fur Ic-Technologie (I/F/I)
ilitek	ILI Technology Corporation (ILITEK)
img	Imagination Technologies Ltd.
infineon Infineon Technologies
inforce	Inforce Computing
ingenic	Ingenic Semiconductor
innolux	Innolux Corporation
inside-secure	INSIDE Secure
intel	Intel Corporation
intercontrol	Inter Control Group
invensense	InvenSense Inc.
inversepath	Inverse Path
iom	Iomega Corporation
isee	ISEE 2007 S.L.
isil	Intersil
issi	Integrated Silicon Solutions Inc.
itead	ITEAD Intelligent Systems Co.Ltd
iwave  iWave Systems Technologies Pvt. Ltd.
jdi	Japan Display Inc.
jedec	JEDEC Solid State Technology Association
jianda	Jiandangjing Technology Co., Ltd.
karo	Ka-Ro electronics GmbH
keithkoep	Keith & Koep GmbH
keymile	Keymile GmbH
khadas	Khadas
kiebackpeter    Kieback & Peter GmbH
kinetic Kinetic Technologies
kingnovel	Kingnovel Technology Co., Ltd.
koe	Kaohsiung Opto-Electronics Inc.
kosagi	Sutajio Ko-Usagi PTE Ltd.
kyo	Kyocera Corporation
lacie	LaCie
lantiq	Lantiq Semiconductor
lattice	Lattice Semiconductor
lego	LEGO Systems A/S
lenovo	Lenovo Group Ltd.
lg	LG Corporation
libretech	Shenzhen Libre Technology Co., Ltd
licheepi	Lichee Pi
linaro	Linaro Limited
linksys	Belkin International, Inc. (Linksys)
linux	Linux-specific binding
lltc	Linear Technology Corporation
logicpd	Logic PD, Inc.
lsi	LSI Corp. (LSI Logic)
lwn	Liebherr-Werk Nenzing GmbH
macnica	Macnica Americas
marvell	Marvell Technology Group Ltd.
maxim	Maxim Integrated Products
mbvl	Mobiveil Inc.
mcube	mCube
meas	Measurement Specialties
mediatek	MediaTek Inc.
megachips	MegaChips
mele	Shenzhen MeLE Digital Technology Ltd.
melexis	Melexis N.V.
melfas	MELFAS Inc.
mellanox	Mellanox Technologies
memsic	MEMSIC Inc.
merrii	Merrii Technology Co., Ltd.
micrel	Micrel Inc.
microchip	Microchip Technology Inc.
microcrystal	Micro Crystal AG
micron	Micron Technology Inc.
minix	MINIX Technology Ltd.
miramems	MiraMEMS Sensing Technology Co., Ltd.
mitsubishi	Mitsubishi Electric Corporation
mosaixtech	Mosaix Technologies, Inc.
motorola	Motorola, Inc.
moxa	Moxa Inc.
mpl	MPL AG
mqmaker	mqmaker Inc.
mscc	Microsemi Corporation
msi	Micro-Star International Co. Ltd.
mti	Imagination Technologies Ltd. (formerly MIPS Technologies Inc.)
multi-inno	Multi-Inno Technology Co.,Ltd
mundoreader	Mundo Reader S.L.
murata	Murata Manufacturing Co., Ltd.
mxicy	Macronix International Co., Ltd.
myir	MYIR Tech Limited
national	National Semiconductor
nec	NEC LCD Technologies, Ltd.
neonode		Neonode Inc.
netgear	NETGEAR
netlogic	Broadcom Corporation (formerly NetLogic Microsystems)
netron-dy	Netron DY
netxeon		Shenzhen Netxeon Technology CO., LTD
nexbox	Nexbox
nextthing	Next Thing Co.
newhaven	Newhaven Display International
ni	National Instruments
nintendo	Nintendo
nlt	NLT Technologies, Ltd.
nokia	Nokia
nordic	Nordic Semiconductor
nutsboard	NutsBoard
nuvoton	Nuvoton Technology Corporation
nvd	New Vision Display
nvidia	NVIDIA
nxp	NXP Semiconductors
okaya	Okaya Electric America, Inc.
oki	Oki Electric Industry Co., Ltd.
olimex	OLIMEX Ltd.
onion	Onion Corporation
onnn	ON Semiconductor Corp.
ontat	On Tat Industrial Company
opalkelly	Opal Kelly Incorporated
opencores	OpenCores.org
openrisc	OpenRISC.io
option	Option NV
ORCL	Oracle Corporation
orisetech	Orise Technology
ortustech	Ortus Technology Co., Ltd.
ovti	OmniVision Technologies
oxsemi	Oxford Semiconductor, Ltd.
panasonic	Panasonic Corporation
parade	Parade Technologies Inc.
pericom	Pericom Technology Inc.
pervasive	Pervasive Displays, Inc.
phytec	PHYTEC Messtechnik GmbH
picochip	Picochip Ltd
pine64	Pine64
pixcir  PIXCIR MICROELECTRONICS Co., Ltd
plathome	Plat'Home Co., Ltd.
plda	PLDA
portwell	Portwell Inc.
poslab	Poslab Technology Co., Ltd.
powervr	PowerVR (deprecated, use img)
probox2	PROBOX2 (by W2COMP Co., Ltd.)
pulsedlight	PulsedLight, Inc
qca	Qualcomm Atheros, Inc.
qcom	Qualcomm Technologies, Inc
qemu	QEMU, a generic and open source machine emulator and virtualizer
qi	Qi Hardware
qiaodian	QiaoDian XianShi Corporation
qnap	QNAP Systems, Inc.
radxa	Radxa
raidsonic	RaidSonic Technology GmbH
ralink	Mediatek/Ralink Technology Corp.
ramtron	Ramtron International
raspberrypi	Raspberry Pi Foundation
raydium	Raydium Semiconductor Corp.
realtek Realtek Semiconductor Corp.
renesas	Renesas Electronics Corporation
richtek	Richtek Technology Corporation
ricoh	Ricoh Co. Ltd.
rikomagic	Rikomagic Tech Corp. Ltd
riscv	RISC-V Foundation
rockchip	Fuzhou Rockchip Electronics Co., Ltd
rohm	ROHM Semiconductor Co., Ltd
roofull	Shenzhen Roofull Technology Co, Ltd
samsung	Samsung Semiconductor
samtec	Samtec/Softing company
sandisk	Sandisk Corporation
sbs	Smart Battery System
schindler	Schindler
seagate	Seagate Technology PLC
semtech	Semtech Corporation
sensirion	Sensirion AG
sff	Small Form Factor Committee
sgd	Solomon Goldentek Display Corporation
sgx	SGX Sensortech
sharp	Sharp Corporation
shimafuji	Shimafuji Electric, Inc.
si-en	Si-En Technology Ltd.
sifive	SiFive, Inc.
sigma	Sigma Designs, Inc.
sii	Seiko Instruments, Inc.
sil	Silicon Image
silabs	Silicon Laboratories
silead	Silead Inc.
silergy	Silergy Corp.
siliconmitus	Silicon Mitus, Inc.
simtek
sirf	SiRF Technology, Inc.
sis	Silicon Integrated Systems Corp.
sitronix	Sitronix Technology Corporation
skyworks	Skyworks Solutions, Inc.
smsc	Standard Microsystems Corporation
snps	Synopsys, Inc.
socionext	Socionext Inc.
solidrun	SolidRun
solomon        Solomon Systech Limited
sony	Sony Corporation
spansion	Spansion Inc.
sprd	Spreadtrum Communications Inc.
sst	Silicon Storage Technology, Inc.
st	STMicroelectronics
starry	Starry Electronic Technology (ShenZhen) Co., LTD
startek	Startek
ste	ST-Ericsson
stericsson	ST-Ericsson
summit	Summit microelectronics
sunchip	Shenzhen Sunchip Technology Co., Ltd
SUNW	Sun Microsystems, Inc
swir	Sierra Wireless
syna	Synaptics Inc.
synology	Synology, Inc.
tbs	TBS Technologies
tbs-biometrics	Touchless Biometric Systems AG
tcg	Trusted Computing Group
tcl	Toby Churchill Ltd.
technexion	TechNexion
technologic	Technologic Systems
tempo	Tempo Semiconductor
terasic	Terasic Inc.
thine	THine Electronics, Inc.
ti	Texas Instruments
tianma	Tianma Micro-electronics Co., Ltd.
tlm	Trusted Logic Mobility
tmt	Tecon Microprocessor Technologies, LLC.
topeet  Topeet
toradex	Toradex AG
toshiba	Toshiba Corporation
toumaz	Toumaz
tpk	TPK U.S.A. LLC
tplink	TP-LINK Technologies Co., Ltd.
tpo	TPO
tronfy	Tronfy
tronsmart	Tronsmart
truly	Truly Semiconductors Limited
tsd	Theobroma Systems Design und Consulting GmbH
tyan	Tyan Computer Corporation
ucrobotics	uCRobotics
ubnt	Ubiquiti Networks
udoo	Udoo
uniwest	United Western Technologies Corp (UniWest)
upisemi	uPI Semiconductor Corp.
urt	United Radiant Technology Corporation
usi	Universal Scientific Industrial Co., Ltd.
v3	V3 Semiconductor
variscite	Variscite Ltd.
via	VIA Technologies, Inc.
virtio	Virtual I/O Device Specification, developed by the OASIS consortium
vivante	Vivante Corporation
vocore VoCore Studio
voipac	Voipac Technologies s.r.o.
vot	Vision Optical Technology Co., Ltd.
wd	Western Digital Corp.
wetek	WeTek Electronics, limited.
wexler	Wexler
wi2wi	Wi2Wi, Inc.
winbond Winbond Electronics corp.
winstar	Winstar Display Corp.
wlf	Wolfson Microelectronics
wm	Wondermedia Technologies, Inc.
x-powers	X-Powers
xes	Extreme Engineering Solutions (X-ES)
xillybus	Xillybus Ltd.
xlnx	Xilinx
xunlong	Shenzhen Xunlong Software CO.,Limited
zarlink	Zarlink Semiconductor
zeitec	ZEITEC Semiconductor Co., LTD.
zidoo	Shenzhen Zidoo Technology Co., Ltd.
zii	Zodiac Inflight Innovations
zte	ZTE Corp.
zyxel	ZyXEL Communications Corp.
