xref: /rk3399_rockchip-uboot/include/dm/uclass-id.h (revision e7ecf7cb5a6b873daf2d88daf03034d51fad4acc)
16494d708SSimon Glass /*
26494d708SSimon Glass  * Copyright (c) 2013 Google, Inc
36494d708SSimon Glass  *
46494d708SSimon Glass  * (C) Copyright 2012
56494d708SSimon Glass  * Pavel Herrmann <morpheus.ibis@gmail.com>
66494d708SSimon Glass  *
76494d708SSimon Glass  * SPDX-License-Identifier:	GPL-2.0+
86494d708SSimon Glass  */
96494d708SSimon Glass 
106494d708SSimon Glass #ifndef _DM_UCLASS_ID_H
116494d708SSimon Glass #define _DM_UCLASS_ID_H
126494d708SSimon Glass 
136494d708SSimon Glass /* TODO(sjg@chromium.org): this could be compile-time generated */
146494d708SSimon Glass enum uclass_id {
156494d708SSimon Glass 	/* These are used internally by driver model */
166494d708SSimon Glass 	UCLASS_ROOT = 0,
176494d708SSimon Glass 	UCLASS_DEMO,
186494d708SSimon Glass 	UCLASS_TEST,
196494d708SSimon Glass 	UCLASS_TEST_FDT,
201ca7e206SSimon Glass 	UCLASS_TEST_BUS,
21c60e1f25SSimon Glass 	UCLASS_SPI_EMUL,	/* sandbox SPI device emulator */
22c70c71d8SSimon Glass 	UCLASS_I2C_EMUL,	/* sandbox I2C device emulator */
2336d0d3b4SSimon Glass 	UCLASS_PCI_EMUL,	/* sandbox PCI device emulator */
24019808f9SSimon Glass 	UCLASS_USB_EMUL,	/* sandbox USB bus device emulator */
253d7cf419SSimon Glass 	UCLASS_SIMPLE_BUS,	/* bus with child devices */
266494d708SSimon Glass 
273d7cf419SSimon Glass 	/* U-Boot uclasses start here - in alphabetical order */
283d7cf419SSimon Glass 	UCLASS_CPU,		/* CPU, typically part of an SoC */
293d7cf419SSimon Glass 	UCLASS_CROS_EC,		/* Chrome OS EC */
3051f2c99eSSimon Glass 	UCLASS_DISPLAY_PORT,	/* Display port video */
313d7cf419SSimon Glass 	UCLASS_ETH,		/* Ethernet device */
320040b944SSimon Glass 	UCLASS_GPIO,		/* Bank of general-purpose I/O pins */
333d7cf419SSimon Glass 	UCLASS_I2C,		/* I2C bus */
343d7cf419SSimon Glass 	UCLASS_I2C_EEPROM,	/* I2C EEPROM device */
353d7cf419SSimon Glass 	UCLASS_I2C_GENERIC,	/* Generic I2C device */
365917112cSSimon Glass 	UCLASS_LED,		/* Light-emitting diode (LED) */
373d7cf419SSimon Glass 	UCLASS_LPC,		/* x86 'low pin count' interface */
383d7cf419SSimon Glass 	UCLASS_MASS_STORAGE,	/* Mass storage device */
39*e7ecf7cbSSimon Glass 	UCLASS_MMC,		/* SD / MMC card or chip */
403d7cf419SSimon Glass 	UCLASS_MOD_EXP,		/* RSA Mod Exp device */
413d7cf419SSimon Glass 	UCLASS_PCH,		/* x86 platform controller hub */
423d7cf419SSimon Glass 	UCLASS_PCI,		/* PCI bus */
433d7cf419SSimon Glass 	UCLASS_PCI_GENERIC,	/* Generic PCI bus device */
444e389366SSimon Glass 	UCLASS_PMIC,		/* PMIC I/O device */
454e389366SSimon Glass 	UCLASS_REGULATOR,	/* Regulator device */
463d7cf419SSimon Glass 	UCLASS_RTC,		/* Real time clock device */
4757d92753SSimon Glass 	UCLASS_SERIAL,		/* Serial UART */
48d7af6a48SSimon Glass 	UCLASS_SPI,		/* SPI bus */
494c2dbefdSSimon Glass 	UCLASS_SPI_FLASH,	/* SPI flash */
504e389366SSimon Glass 	UCLASS_SPI_GENERIC,	/* Generic SPI flash target */
5157251285SSimon Glass 	UCLASS_SYSCON,		/* System configuration device */
52e3568d2eSYe.Li 	UCLASS_THERMAL,		/* Thermal sensor */
53de31213fSSimon Glass 	UCLASS_USB,		/* USB bus */
54449230f0SSimon Glass 	UCLASS_USB_DEV_GENERIC,	/* USB generic device */
553d7cf419SSimon Glass 	UCLASS_USB_HUB,		/* USB hub */
566494d708SSimon Glass 
576494d708SSimon Glass 	UCLASS_COUNT,
586494d708SSimon Glass 	UCLASS_INVALID = -1,
596494d708SSimon Glass };
606494d708SSimon Glass 
616494d708SSimon Glass #endif
62