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