1 // Copyright 2016 The Fuchsia Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 // clang-format off
6 
7 #ifndef DDK_PROTOCOL_DEF
8 #error Internal use only. Do not include.
9 #else
10 #ifndef PF_NOPUB
11 // Do not publish aliases in /dev/class/...
12 #define PF_NOPUB 1
13 #endif
14 DDK_PROTOCOL_DEF(BLOCK,          'pBLK', "block", 0)
15 DDK_PROTOCOL_DEF(BLOCK_IMPL,     'pBKC', "block-impl", 0)
16 DDK_PROTOCOL_DEF(CONSOLE,        'pCON', "console", 0)
17 DDK_PROTOCOL_DEF(DEVICE,         'pDEV', "device", 0)
18 DDK_PROTOCOL_DEF(DISPLAY_CONTROLLER, 'pDSC', "display-controller", 0)
19 DDK_PROTOCOL_DEF(DISPLAY_CONTROLLER_IMPL, 'pDCI', "display-controller-impl", PF_NOPUB)
20 DDK_PROTOCOL_DEF(ETHERNET,       'pETH', "ethernet", 0)
21 DDK_PROTOCOL_DEF(ETHMAC,         'pEMA', "ethmac", 0)
22 DDK_PROTOCOL_DEF(FRAMEBUFFER,    'pFRB', "framebuffer", 0)
23 DDK_PROTOCOL_DEF(GPIO,           'pGPO', "gpio", PF_NOPUB)
24 DDK_PROTOCOL_DEF(GPIO_IMPL,      'pGPI', "gpio-impl", PF_NOPUB)
25 DDK_PROTOCOL_DEF(HIDBUS,         'pHID', "hidbus", 0)
26 DDK_PROTOCOL_DEF(I2C,            'pI2C', "i2c", 0)
27 DDK_PROTOCOL_DEF(I2C_IMPL ,      'pI2I', "i2c-impl", 0)
28 DDK_PROTOCOL_DEF(INPUT,          'pINP', "input", 0)
29 DDK_PROTOCOL_DEF(ROOT,           'pAAA', "root", PF_NOPUB)
30 DDK_PROTOCOL_DEF(MISC,           'pMSC', "misc", PF_NOPUB)
31 DDK_PROTOCOL_DEF(MISC_PARENT,    'pMSP', "misc-parent", PF_NOPUB)
32 DDK_PROTOCOL_DEF(ACPI,           'pACP', "acpi", 0)
33 DDK_PROTOCOL_DEF(PCI,            'pPCI', "pci", 0)
34 DDK_PROTOCOL_DEF(PCIROOT,        'pPRT', "pci-root", PF_NOPUB)
35 DDK_PROTOCOL_DEF(TPM,            'pTPM', "tpm", 0)
36 DDK_PROTOCOL_DEF(USB,            'pUSB', "usb", PF_NOPUB)
37 DDK_PROTOCOL_DEF(USB_BUS,        'pUBS', "usb-bus", PF_NOPUB)
38 DDK_PROTOCOL_DEF(USB_COMPOSITE,  'pUBC', "usb-composite", PF_NOPUB)
39 DDK_PROTOCOL_DEF(USB_DCI,        'pUDC', "usb-dci", 0)  // Device Controller Interface
40 DDK_PROTOCOL_DEF(USB_DEVICE,     'pUSD', "usb-device", 0)
41 DDK_PROTOCOL_DEF(USB_PERIPHERAL, 'pUSP', "usb-peripheral", 0)
42 DDK_PROTOCOL_DEF(USB_FUNCTION,   'pUSF', "usb-function", 0)
43 DDK_PROTOCOL_DEF(USB_HCI,        'pUHI', "usb-hci", 0)  // Host Controller Interface
44 DDK_PROTOCOL_DEF(USB_MODE_SWITCH,'pUMS', "usb-mode-switch", 0)
45 DDK_PROTOCOL_DEF(USB_DBC,        'pUDB', "usb-dbc", 0) // Debug Capability
46 DDK_PROTOCOL_DEF(USB_TESTER,     'pUTR', "usb-tester", 0)
47 DDK_PROTOCOL_DEF(USB_TEST_FWLOADER, 'pUTF', "usb-test-fwloader", 0)
48 DDK_PROTOCOL_DEF(BT_HCI,         'pBHC', "bt-hci", 0)
49 DDK_PROTOCOL_DEF(BT_TRANSPORT,   'pBTR', "bt-transport", 0)
50 DDK_PROTOCOL_DEF(BT_HOST,        'pBTH', "bt-host", 0)
51 DDK_PROTOCOL_DEF(BT_GATT_SVC,    'pBGS', "bt-gatt-svc", 0)
52 DDK_PROTOCOL_DEF(AUDIO,          'pAUD', "audio", 0)
53 DDK_PROTOCOL_DEF(MIDI,           'pMID', "midi", 0)
54 DDK_PROTOCOL_DEF(SDHCI,          'pSDH', "sdhci", 0)
55 DDK_PROTOCOL_DEF(SDMMC,          'pSDM', "sdmmc", 0)
56 DDK_PROTOCOL_DEF(SDIO,           'pSDI', "sdio", 0)
57 DDK_PROTOCOL_DEF(WLANPHY,        'pWLP', "wlanphy", 0)
58 DDK_PROTOCOL_DEF(WLANPHY_IMPL,   'pWPI', "wlanphy-impl", 0)
59 DDK_PROTOCOL_DEF(WLANIF,         'pWLI', "wlanif", 0)
60 DDK_PROTOCOL_DEF(WLANIF_IMPL,    'pWII', "wlanif-impl", 0)
61 DDK_PROTOCOL_DEF(WLANMAC,        'pWLM', "wlanmac", 0)
62 DDK_PROTOCOL_DEF(AUDIO_INPUT,    'pAUI', "audio-input", 0)
63 DDK_PROTOCOL_DEF(AUDIO_OUTPUT,   'pAUO', "audio-output", 0)
64 DDK_PROTOCOL_DEF(CAMERA,         'pCAM', "camera", 0)
65 DDK_PROTOCOL_DEF(MEDIA_CODEC,    'pMCF', "media-codec", 0)
66 DDK_PROTOCOL_DEF(BATTERY,        'pBAT', "battery", 0)
67 DDK_PROTOCOL_DEF(POWER,          'pPWR', "power", 0)
68 DDK_PROTOCOL_DEF(THERMAL,        'pTHM', "thermal", 0)
69 DDK_PROTOCOL_DEF(GPU_THERMAL,    'pGPT', "gpu-thermal", 0)
70 DDK_PROTOCOL_DEF(PTY,            'pPTY', "pty", 0)
71 DDK_PROTOCOL_DEF(IHDA,           'pHDA', "intel-hda", 0)
72 DDK_PROTOCOL_DEF(IHDA_CODEC,     'pIHC', "intel-hda-codec", 0)
73 DDK_PROTOCOL_DEF(IHDA_DSP,       'piHD', "intel-hda-dsp", 0)
74 DDK_PROTOCOL_DEF(AUDIO_CODEC,    'pAUC', "audio-codec", 0)
75 DDK_PROTOCOL_DEF(TEST,           'pTST', "test", 0)
76 DDK_PROTOCOL_DEF(TEST_PARENT,    'pTSP', "test-parent", PF_NOPUB)
77 DDK_PROTOCOL_DEF(PBUS,           'pPBU', "platform-bus", 0)
78 DDK_PROTOCOL_DEF(PDEV,           'pPDV', "platform-dev", 0)
79 DDK_PROTOCOL_DEF(PLATFORM_PROXY, 'pPPR', "platform-proxy", PF_NOPUB)
80 DDK_PROTOCOL_DEF(I2C_HID,        'pIHD', "i2c-hid", 0)
81 DDK_PROTOCOL_DEF(SERIAL,         'pSer', "serial", 0)
82 DDK_PROTOCOL_DEF(SERIAL_IMPL,    'pSri', "serial-impl", 0)
83 DDK_PROTOCOL_DEF(CLK,            'pCLK', "clock", 0)
84 DDK_PROTOCOL_DEF(INTEL_GPU_CORE, 'pIGC', "intel-gpu-core", 0)
85 DDK_PROTOCOL_DEF(IOMMU,          'pIOM', "iommu", 0)
86 DDK_PROTOCOL_DEF(NAND,           'pNND', "nand", 0)
87 DDK_PROTOCOL_DEF(RAW_NAND,       'pRND', "rawnand", 0)
88 DDK_PROTOCOL_DEF(BAD_BLOCK,      'pBBL', "bad-block", PF_NOPUB)
89 DDK_PROTOCOL_DEF(MAILBOX,        'pMHU', "mailbox", PF_NOPUB)
90 DDK_PROTOCOL_DEF(SCPI,           'pSCP', "scpi", PF_NOPUB)
91 DDK_PROTOCOL_DEF(BACKLIGHT,      'pBKL', "backlight", 0)
92 DDK_PROTOCOL_DEF(AMLOGIC_CANVAS, 'pCAN', "aml-canvas", PF_NOPUB)
93 DDK_PROTOCOL_DEF(SKIP_BLOCK,     'pSKB', "skip-block", 0)
94 DDK_PROTOCOL_DEF(ETH_BOARD,      'pETB', "ethernet-board", PF_NOPUB)
95 DDK_PROTOCOL_DEF(ETH_MAC,        'pETM', "ethernet-mac", PF_NOPUB)
96 DDK_PROTOCOL_DEF(QMI_TRANSPORT,  'pQMI', "qmi-transport", 0)
97 DDK_PROTOCOL_DEF(MIPI_CSI,       'pMIP', "mipi-csi", PF_NOPUB)
98 // Protocol definition at garnet/magma/src/magma_util/platform/zircon/zircon_platform_ioctl.h
99 DDK_PROTOCOL_DEF(GPU,            'pGPU', "gpu", 0)
100 DDK_PROTOCOL_DEF(RTC,            'pRTC', "rtc", 0)
101 DDK_PROTOCOL_DEF(TEE,            'pTEE', "tee", 0)
102 DDK_PROTOCOL_DEF(VSOCK,          'pVSK', "vsock", 0)
103 #undef DDK_PROTOCOL_DEF
104 #endif
105