Blame view

include/dm/uclass-id.h 3.61 KB
6494d708b   Simon Glass   dm: Add base driv...
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
  /*
   * Copyright (c) 2013 Google, Inc
   *
   * (C) Copyright 2012
   * Pavel Herrmann <morpheus.ibis@gmail.com>
   *
   * SPDX-License-Identifier:	GPL-2.0+
   */
  
  #ifndef _DM_UCLASS_ID_H
  #define _DM_UCLASS_ID_H
  
  /* TODO(sjg@chromium.org): this could be compile-time generated */
  enum uclass_id {
  	/* These are used internally by driver model */
  	UCLASS_ROOT = 0,
  	UCLASS_DEMO,
  	UCLASS_TEST,
  	UCLASS_TEST_FDT,
1ca7e2062   Simon Glass   dm: Provide a fun...
20
  	UCLASS_TEST_BUS,
985615725   Simon Glass   dm: core: Test uc...
21
  	UCLASS_TEST_PROBE,
a315da0f3   Mario Six   core: ofnode: Fix...
22
  	UCLASS_TEST_DUMMY,
c60e1f254   Simon Glass   dm: sandbox: Add ...
23
  	UCLASS_SPI_EMUL,	/* sandbox SPI device emulator */
c70c71d83   Simon Glass   dm: i2c: Add I2C ...
24
  	UCLASS_I2C_EMUL,	/* sandbox I2C device emulator */
36d0d3b4b   Simon Glass   dm: sandbox: pci:...
25
  	UCLASS_PCI_EMUL,	/* sandbox PCI device emulator */
019808f97   Simon Glass   dm: usb: sandbox:...
26
  	UCLASS_USB_EMUL,	/* sandbox USB bus device emulator */
3d7cf4192   Simon Glass   dm: core: Sort th...
27
  	UCLASS_SIMPLE_BUS,	/* bus with child devices */
6494d708b   Simon Glass   dm: Add base driv...
28

3d7cf4192   Simon Glass   dm: core: Sort th...
29
  	/* U-Boot uclasses start here - in alphabetical order */
5decbf530   Przemyslaw Marczak   dm: adc: add simp...
30
  	UCLASS_ADC,		/* Analog-to-digital converter */
a219639d4   Simon Glass   dm: Rename disk u...
31
  	UCLASS_AHCI,		/* SATA disk controller */
09d71aac7   Simon Glass   dm: blk: Add a bl...
32
  	UCLASS_BLK,		/* Block device */
f26c8a8e7   Simon Glass   dm: Add a clock u...
33
  	UCLASS_CLK,		/* Clock source, e.g. used by peripherals */
3d7cf4192   Simon Glass   dm: core: Sort th...
34
35
  	UCLASS_CPU,		/* CPU, typically part of an SoC */
  	UCLASS_CROS_EC,		/* Chrome OS EC */
2dcf14339   Simon Glass   dm: video: Repurp...
36
  	UCLASS_DISPLAY,		/* Display (e.g. DisplayPort, HDMI) */
a0594cefb   Mugunthan V N   dm: implement a D...
37
  	UCLASS_DMA,		/* Direct Memory Access */
05ef48a24   Heinrich Schuchardt   efi_driver: EFI b...
38
  	UCLASS_EFI,		/* EFI managed devices */
3d7cf4192   Simon Glass   dm: core: Sort th...
39
  	UCLASS_ETH,		/* Ethernet device */
0040b9442   Simon Glass   dm: Tidy up some ...
40
  	UCLASS_GPIO,		/* Bank of general-purpose I/O pins */
573a3811e   Masahiro Yamada   sysreset: psci: s...
41
  	UCLASS_FIRMWARE,	/* Firmware */
c6202d857   Simon Glass   dm: i2c: Add a uc...
42
  	UCLASS_I2C,		/* I2C bus */
20142019a   Simon Glass   dm: Add a simple ...
43
  	UCLASS_I2C_EEPROM,	/* I2C EEPROM device */
3d7cf4192   Simon Glass   dm: core: Sort th...
44
  	UCLASS_I2C_GENERIC,	/* Generic I2C device */
3d1957f0e   Simon Glass   dm: i2c: Add supp...
45
  	UCLASS_I2C_MUX,		/* I2C multiplexer */
68e6f221e   Bin Meng   block: ide: Fix b...
46
  	UCLASS_IDE,		/* IDE device */
e76187a35   Simon Glass   dm: x86: Create a...
47
  	UCLASS_IRQ,		/* Interrupt controller */
34ab37eef   Simon Glass   dm: usb: Add supp...
48
  	UCLASS_KEYBOARD,	/* Keyboard input device */
5917112c9   Simon Glass   dm: Add support f...
49
  	UCLASS_LED,		/* Light-emitting diode (LED) */
3d7cf4192   Simon Glass   dm: core: Sort th...
50
  	UCLASS_LPC,		/* x86 'low pin count' interface */
6238935d0   Stephen Warren   Add a mailbox dri...
51
  	UCLASS_MAILBOX,		/* Mailbox controller */
3d7cf4192   Simon Glass   dm: core: Sort th...
52
  	UCLASS_MASS_STORAGE,	/* Mass storage device */
4395e06eb   Thomas Chou   dm: implement a M...
53
  	UCLASS_MISC,		/* Miscellaneous device */
e7ecf7cb5   Simon Glass   dm: mmc: Add an M...
54
  	UCLASS_MMC,		/* SD / MMC card or chip */
31d2b4fd9   Ruchika Gupta   DM: crypto/rsa_mo...
55
  	UCLASS_MOD_EXP,		/* RSA Mod Exp device */
d85879938   Thomas Chou   dm: implement a M...
56
  	UCLASS_MTD,		/* Memory Technology Device (MTD) device */
5544757ce   Simon Glass   dm: x86: Add a no...
57
  	UCLASS_NORTHBRIDGE,	/* Intel Northbridge / SDRAM controller */
ffab6945e   Zhikang Zhang   dm: blk: part: Ad...
58
  	UCLASS_NVME,		/* NVM Express device */
f563dc1d1   Simon Glass   dm: panel: Add a ...
59
  	UCLASS_PANEL,		/* Display panel, such as an LCD */
363bf77ac   Simon Glass   dm: backlight: Ad...
60
  	UCLASS_PANEL_BACKLIGHT,	/* Backlight controller for panel */
3d7cf4192   Simon Glass   dm: core: Sort th...
61
  	UCLASS_PCH,		/* x86 platform controller hub */
ff3e077bd   Simon Glass   dm: pci: Add a uc...
62
63
  	UCLASS_PCI,		/* PCI bus */
  	UCLASS_PCI_GENERIC,	/* Generic PCI bus device */
72e5016f8   Jean-Jacques Hiblot   drivers: phy: add...
64
  	UCLASS_PHY,		/* Physical Layer (PHY) device */
d90a5a30d   Masahiro Yamada   pinctrl: add pin ...
65
  	UCLASS_PINCONFIG,	/* Pin configuration node device */
6f0e7a36e   Bin Meng   dm: Sort the ucla...
66
  	UCLASS_PINCTRL,		/* Pinctrl (pin muxing/configuration) device */
4e389366e   Simon Glass   dm: Sort the ucla...
67
  	UCLASS_PMIC,		/* PMIC I/O device */
fc760cb8c   Simon Glass   dm: pwm: Add a PW...
68
  	UCLASS_PWM,		/* Pulse-width modulator */
61f5ddcb7   Stephen Warren   Add a power domai...
69
  	UCLASS_POWER_DOMAIN,	/* (SoC) Power domains */
5fd6badbd   Simon Glass   dm: Add a power s...
70
  	UCLASS_PWRSEQ,		/* Power sequence device */
6f0e7a36e   Bin Meng   dm: Sort the ucla...
71
  	UCLASS_RAM,		/* RAM controller */
4e389366e   Simon Glass   dm: Sort the ucla...
72
  	UCLASS_REGULATOR,	/* Regulator device */
ddf56bc7e   Nishanth Menon   drivers: Introduc...
73
  	UCLASS_REMOTEPROC,	/* Remote Processor device */
89c1e2da7   Stephen Warren   Add a reset drive...
74
  	UCLASS_RESET,		/* Reset controller device */
3d7cf4192   Simon Glass   dm: core: Sort th...
75
  	UCLASS_RTC,		/* Real time clock device */
e8a016b53   Michal Simek   dm: Add support f...
76
  	UCLASS_SCSI,		/* SCSI device */
3d7cf4192   Simon Glass   dm: core: Sort th...
77
78
  	UCLASS_SERIAL,		/* Serial UART */
  	UCLASS_SPI,		/* SPI bus */
04868b407   Mateusz Kulikowski   drivers: Add SPMI...
79
  	UCLASS_SPMI,		/* System Power Management Interface bus */
3d7cf4192   Simon Glass   dm: core: Sort th...
80
  	UCLASS_SPI_FLASH,	/* SPI flash */
4e389366e   Simon Glass   dm: Sort the ucla...
81
  	UCLASS_SPI_GENERIC,	/* Generic SPI flash target */
572512850   Simon Glass   dm: Add support f...
82
  	UCLASS_SYSCON,		/* System configuration device */
116362589   Stephen Warren   Rename reset to s...
83
  	UCLASS_SYSRESET,	/* System reset device */
3d7cf4192   Simon Glass   dm: core: Sort th...
84
  	UCLASS_THERMAL,		/* Thermal sensor */
c8a7ba9e6   Thomas Chou   dm: implement a T...
85
  	UCLASS_TIMER,		/* Timer device */
f255d31f9   Simon Glass   dm: tpm: Add a uc...
86
  	UCLASS_TPM,		/* Trusted Platform Module TIS interface */
de31213fb   Simon Glass   dm: usb: Add a uc...
87
  	UCLASS_USB,		/* USB bus */
449230f03   Simon Glass   dm: usb: Bind gen...
88
  	UCLASS_USB_DEV_GENERIC,	/* USB generic device */
3d7cf4192   Simon Glass   dm: core: Sort th...
89
  	UCLASS_USB_HUB,		/* USB hub */
1acafc73b   Simon Glass   dm: video: Add a ...
90
  	UCLASS_VIDEO,		/* Video or LCD device */
801ab9e93   Simon Glass   dm: video: Add su...
91
  	UCLASS_VIDEO_BRIDGE,	/* Video bridge, e.g. DisplayPort to LVDS */
83510766c   Simon Glass   dm: video: Add a ...
92
  	UCLASS_VIDEO_CONSOLE,	/* Text console driver for video device */
0753bc2d3   maxims@google.com   dm: Simple Watchd...
93
  	UCLASS_WDT,		/* Watchdot Timer driver */
6494d708b   Simon Glass   dm: Add base driv...
94
95
96
97
98
99
  
  	UCLASS_COUNT,
  	UCLASS_INVALID = -1,
  };
  
  #endif