Simon Glass | 6494d70 | 2014-02-26 15:59:18 -0700 | [diff] [blame] | 1 | /* |
| 2 | * Copyright (c) 2013 Google, Inc |
| 3 | * |
| 4 | * (C) Copyright 2012 |
| 5 | * Pavel Herrmann <morpheus.ibis@gmail.com> |
| 6 | * |
| 7 | * SPDX-License-Identifier: GPL-2.0+ |
| 8 | */ |
| 9 | |
| 10 | #ifndef _DM_UCLASS_ID_H |
| 11 | #define _DM_UCLASS_ID_H |
| 12 | |
| 13 | /* TODO(sjg@chromium.org): this could be compile-time generated */ |
| 14 | enum uclass_id { |
| 15 | /* These are used internally by driver model */ |
| 16 | UCLASS_ROOT = 0, |
| 17 | UCLASS_DEMO, |
| 18 | UCLASS_TEST, |
| 19 | UCLASS_TEST_FDT, |
Simon Glass | 1ca7e20 | 2014-07-23 06:55:18 -0600 | [diff] [blame] | 20 | UCLASS_TEST_BUS, |
Simon Glass | c60e1f2 | 2014-10-13 23:41:53 -0600 | [diff] [blame] | 21 | UCLASS_SPI_EMUL, /* sandbox SPI device emulator */ |
Simon Glass | c70c71d | 2014-12-10 08:55:49 -0700 | [diff] [blame] | 22 | UCLASS_I2C_EMUL, /* sandbox I2C device emulator */ |
Simon Glass | 36d0d3b | 2015-03-05 12:25:28 -0700 | [diff] [blame] | 23 | UCLASS_PCI_EMUL, /* sandbox PCI device emulator */ |
Simon Glass | 019808f | 2015-03-25 12:22:37 -0600 | [diff] [blame] | 24 | UCLASS_USB_EMUL, /* sandbox USB bus device emulator */ |
Simon Glass | 3d7cf41 | 2015-04-14 21:03:19 -0600 | [diff] [blame] | 25 | UCLASS_SIMPLE_BUS, /* bus with child devices */ |
Simon Glass | 6494d70 | 2014-02-26 15:59:18 -0700 | [diff] [blame] | 26 | |
Simon Glass | 3d7cf41 | 2015-04-14 21:03:19 -0600 | [diff] [blame] | 27 | /* U-Boot uclasses start here - in alphabetical order */ |
| 28 | UCLASS_CPU, /* CPU, typically part of an SoC */ |
| 29 | UCLASS_CROS_EC, /* Chrome OS EC */ |
Simon Glass | 51f2c99 | 2015-04-14 21:03:38 -0600 | [diff] [blame] | 30 | UCLASS_DISPLAY_PORT, /* Display port video */ |
Simon Glass | 3d7cf41 | 2015-04-14 21:03:19 -0600 | [diff] [blame] | 31 | UCLASS_ETH, /* Ethernet device */ |
Simon Glass | 0040b94 | 2014-07-23 06:55:17 -0600 | [diff] [blame] | 32 | UCLASS_GPIO, /* Bank of general-purpose I/O pins */ |
Simon Glass | 3d7cf41 | 2015-04-14 21:03:19 -0600 | [diff] [blame] | 33 | UCLASS_I2C, /* I2C bus */ |
| 34 | UCLASS_I2C_EEPROM, /* I2C EEPROM device */ |
| 35 | UCLASS_I2C_GENERIC, /* Generic I2C device */ |
| 36 | UCLASS_LPC, /* x86 'low pin count' interface */ |
| 37 | UCLASS_MASS_STORAGE, /* Mass storage device */ |
| 38 | UCLASS_MOD_EXP, /* RSA Mod Exp device */ |
| 39 | UCLASS_PCH, /* x86 platform controller hub */ |
| 40 | UCLASS_PCI, /* PCI bus */ |
| 41 | UCLASS_PCI_GENERIC, /* Generic PCI bus device */ |
| 42 | UCLASS_RTC, /* Real time clock device */ |
Simon Glass | 57d9275 | 2014-09-04 16:27:26 -0600 | [diff] [blame] | 43 | UCLASS_SERIAL, /* Serial UART */ |
Simon Glass | d7af6a4 | 2014-10-13 23:41:52 -0600 | [diff] [blame] | 44 | UCLASS_SPI, /* SPI bus */ |
| 45 | UCLASS_SPI_GENERIC, /* Generic SPI flash target */ |
Simon Glass | 4c2dbef | 2014-10-13 23:42:06 -0600 | [diff] [blame] | 46 | UCLASS_SPI_FLASH, /* SPI flash */ |
Ye.Li | e3568d2 | 2014-11-20 21:14:13 +0800 | [diff] [blame] | 47 | UCLASS_THERMAL, /* Thermal sensor */ |
Simon Glass | de31213 | 2015-03-25 12:21:59 -0600 | [diff] [blame] | 48 | UCLASS_USB, /* USB bus */ |
Simon Glass | 449230f | 2015-03-25 12:22:31 -0600 | [diff] [blame] | 49 | UCLASS_USB_DEV_GENERIC, /* USB generic device */ |
Simon Glass | 3d7cf41 | 2015-04-14 21:03:19 -0600 | [diff] [blame] | 50 | UCLASS_USB_HUB, /* USB hub */ |
Simon Glass | 6494d70 | 2014-02-26 15:59:18 -0700 | [diff] [blame] | 51 | |
Przemyslaw Marczak | 4d9057e | 2015-04-20 20:07:41 +0200 | [diff] [blame] | 52 | /* Power Management */ |
| 53 | UCLASS_PMIC, /* PMIC I/O device */ |
Przemyslaw Marczak | af41e8d | 2015-04-20 20:07:42 +0200 | [diff] [blame] | 54 | UCLASS_REGULATOR, /* REGULATOR device */ |
Przemyslaw Marczak | 4d9057e | 2015-04-20 20:07:41 +0200 | [diff] [blame] | 55 | |
Simon Glass | 6494d70 | 2014-02-26 15:59:18 -0700 | [diff] [blame] | 56 | UCLASS_COUNT, |
| 57 | UCLASS_INVALID = -1, |
| 58 | }; |
| 59 | |
| 60 | #endif |