linux/include/uapi/linux/adb.h
<<
>>
Prefs
   1/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
   2/*
   3 * Definitions for ADB (Apple Desktop Bus) support.
   4 */
   5#ifndef _UAPI__ADB_H
   6#define _UAPI__ADB_H
   7
   8/* ADB commands */
   9#define ADB_BUSRESET            0
  10#define ADB_FLUSH(id)           (0x01 | ((id) << 4))
  11#define ADB_WRITEREG(id, reg)   (0x08 | (reg) | ((id) << 4))
  12#define ADB_READREG(id, reg)    (0x0C | (reg) | ((id) << 4))
  13
  14/* ADB default device IDs (upper 4 bits of ADB command byte) */
  15#define ADB_DONGLE      1       /* "software execution control" devices */
  16#define ADB_KEYBOARD    2
  17#define ADB_MOUSE       3
  18#define ADB_TABLET      4
  19#define ADB_MODEM       5
  20#define ADB_MISC        7       /* maybe a monitor */
  21
  22#define ADB_RET_OK      0
  23#define ADB_RET_TIMEOUT 3
  24
  25/* The kind of ADB request. The controller may emulate some
  26   or all of those CUDA/PMU packet kinds */
  27#define ADB_PACKET      0
  28#define CUDA_PACKET     1
  29#define ERROR_PACKET    2
  30#define TIMER_PACKET    3
  31#define POWER_PACKET    4
  32#define MACIIC_PACKET   5
  33#define PMU_PACKET      6
  34#define ADB_QUERY       7
  35
  36/* ADB queries */
  37
  38/* ADB_QUERY_GETDEVINFO
  39 * Query ADB slot for device presence
  40 * data[2] = id, rep[0] = orig addr, rep[1] = handler_id
  41 */
  42#define ADB_QUERY_GETDEVINFO    1
  43
  44
  45#endif /* _UAPI__ADB_H */
  46