]> git.kernelconcepts.de Git - karo-tx-uboot.git/blob - include/dm/uclass-id.h
3eff895ab7abb4ceab65dd0105b085b3e7790798
[karo-tx-uboot.git] / include / dm / uclass-id.h
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,
20         UCLASS_TEST_BUS,
21         UCLASS_SPI_EMUL,        /* sandbox SPI device emulator */
22         UCLASS_I2C_EMUL,        /* sandbox I2C device emulator */
23         UCLASS_PCI_EMUL,        /* sandbox PCI device emulator */
24         UCLASS_USB_EMUL,        /* sandbox USB bus device emulator */
25         UCLASS_SIMPLE_BUS,      /* bus with child devices */
26
27         /* U-Boot uclasses start here - in alphabetical order */
28         UCLASS_CLK,             /* Clock source, e.g. used by peripherals */
29         UCLASS_CPU,             /* CPU, typically part of an SoC */
30         UCLASS_CROS_EC,         /* Chrome OS EC */
31         UCLASS_DISPLAY_PORT,    /* Display port video */
32         UCLASS_RAM,             /* RAM controller */
33         UCLASS_ETH,             /* Ethernet device */
34         UCLASS_GPIO,            /* Bank of general-purpose I/O pins */
35         UCLASS_I2C,             /* I2C bus */
36         UCLASS_I2C_EEPROM,      /* I2C EEPROM device */
37         UCLASS_I2C_GENERIC,     /* Generic I2C device */
38         UCLASS_I2C_MUX,         /* I2C multiplexer */
39         UCLASS_LED,             /* Light-emitting diode (LED) */
40         UCLASS_LPC,             /* x86 'low pin count' interface */
41         UCLASS_MASS_STORAGE,    /* Mass storage device */
42         UCLASS_MMC,             /* SD / MMC card or chip */
43         UCLASS_MOD_EXP,         /* RSA Mod Exp device */
44         UCLASS_PCH,             /* x86 platform controller hub */
45         UCLASS_PCI,             /* PCI bus */
46         UCLASS_PCI_GENERIC,     /* Generic PCI bus device */
47         UCLASS_PMIC,            /* PMIC I/O device */
48         UCLASS_REGULATOR,       /* Regulator device */
49         UCLASS_RESET,           /* Reset device */
50         UCLASS_RTC,             /* Real time clock device */
51         UCLASS_SERIAL,          /* Serial UART */
52         UCLASS_SPI,             /* SPI bus */
53         UCLASS_SPI_FLASH,       /* SPI flash */
54         UCLASS_SPI_GENERIC,     /* Generic SPI flash target */
55         UCLASS_SYSCON,          /* System configuration device */
56         UCLASS_THERMAL,         /* Thermal sensor */
57         UCLASS_TPM,             /* Trusted Platform Module TIS interface */
58         UCLASS_USB,             /* USB bus */
59         UCLASS_USB_DEV_GENERIC, /* USB generic device */
60         UCLASS_USB_HUB,         /* USB hub */
61         UCLASS_VIDEO_BRIDGE,    /* Video bridge, e.g. DisplayPort to LVDS */
62
63         UCLASS_COUNT,
64         UCLASS_INVALID = -1,
65 };
66
67 #endif