visor.h 5.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161
  1. /*
  2. * USB HandSpring Visor driver
  3. *
  4. * Copyright (C) 1999 - 2003
  5. * Greg Kroah-Hartman (greg@kroah.com)
  6. *
  7. * This program is free software; you can redistribute it and/or modify
  8. * it under the terms of the GNU General Public License as published by
  9. * the Free Software Foundation; either version 2 of the License, or
  10. * (at your option) any later version.
  11. *
  12. * See Documentation/usb/usb-serial.txt for more information on using this
  13. * driver.
  14. *
  15. */
  16. #ifndef __LINUX_USB_SERIAL_VISOR_H
  17. #define __LINUX_USB_SERIAL_VISOR_H
  18. #define HANDSPRING_VENDOR_ID 0x082d
  19. #define HANDSPRING_VISOR_ID 0x0100
  20. #define HANDSPRING_TREO_ID 0x0200
  21. #define HANDSPRING_TREO600_ID 0x0300
  22. #define PALM_VENDOR_ID 0x0830
  23. #define PALM_M500_ID 0x0001
  24. #define PALM_M505_ID 0x0002
  25. #define PALM_M515_ID 0x0003
  26. #define PALM_I705_ID 0x0020
  27. #define PALM_M125_ID 0x0040
  28. #define PALM_M130_ID 0x0050
  29. #define PALM_TUNGSTEN_T_ID 0x0060
  30. #define PALM_TREO_650 0x0061
  31. #define PALM_TUNGSTEN_Z_ID 0x0031
  32. #define PALM_ZIRE_ID 0x0070
  33. #define PALM_M100_ID 0x0080
  34. #define GSPDA_VENDOR_ID 0x115e
  35. #define GSPDA_XPLORE_M68_ID 0xf100
  36. #define SONY_VENDOR_ID 0x054C
  37. #define SONY_CLIE_3_5_ID 0x0038
  38. #define SONY_CLIE_4_0_ID 0x0066
  39. #define SONY_CLIE_S360_ID 0x0095
  40. #define SONY_CLIE_4_1_ID 0x009A
  41. #define SONY_CLIE_NX60_ID 0x00DA
  42. #define SONY_CLIE_NZ90V_ID 0x00E9
  43. #define SONY_CLIE_UX50_ID 0x0144
  44. #define SONY_CLIE_TJ25_ID 0x0169
  45. #define ACER_VENDOR_ID 0x0502
  46. #define ACER_S10_ID 0x0001
  47. #define SAMSUNG_VENDOR_ID 0x04E8
  48. #define SAMSUNG_SCH_I330_ID 0x8001
  49. #define SAMSUNG_SPH_I500_ID 0x6601
  50. #define TAPWAVE_VENDOR_ID 0x12EF
  51. #define TAPWAVE_ZODIAC_ID 0x0100
  52. #define GARMIN_VENDOR_ID 0x091E
  53. #define GARMIN_IQUE_3600_ID 0x0004
  54. #define ACEECA_VENDOR_ID 0x4766
  55. #define ACEECA_MEZ1000_ID 0x0001
  56. #define KYOCERA_VENDOR_ID 0x0C88
  57. #define KYOCERA_7135_ID 0x0021
  58. #define FOSSIL_VENDOR_ID 0x0E67
  59. #define FOSSIL_ABACUS_ID 0x0002
  60. /****************************************************************************
  61. * Handspring Visor Vendor specific request codes (bRequest values)
  62. * A big thank you to Handspring for providing the following information.
  63. * If anyone wants the original file where these values and structures came
  64. * from, send email to <greg@kroah.com>.
  65. ****************************************************************************/
  66. /****************************************************************************
  67. * VISOR_REQUEST_BYTES_AVAILABLE asks the visor for the number of bytes that
  68. * are available to be transferred to the host for the specified endpoint.
  69. * Currently this is not used, and always returns 0x0001
  70. ****************************************************************************/
  71. #define VISOR_REQUEST_BYTES_AVAILABLE 0x01
  72. /****************************************************************************
  73. * VISOR_CLOSE_NOTIFICATION is set to the device to notify it that the host
  74. * is now closing the pipe. An empty packet is sent in response.
  75. ****************************************************************************/
  76. #define VISOR_CLOSE_NOTIFICATION 0x02
  77. /****************************************************************************
  78. * VISOR_GET_CONNECTION_INFORMATION is sent by the host during enumeration to
  79. * get the endpoints used by the connection.
  80. ****************************************************************************/
  81. #define VISOR_GET_CONNECTION_INFORMATION 0x03
  82. /****************************************************************************
  83. * VISOR_GET_CONNECTION_INFORMATION returns data in the following format
  84. ****************************************************************************/
  85. struct visor_connection_info {
  86. __le16 num_ports;
  87. struct {
  88. __u8 port_function_id;
  89. __u8 port;
  90. } connections[2];
  91. };
  92. /* struct visor_connection_info.connection[x].port defines: */
  93. #define VISOR_ENDPOINT_1 0x01
  94. #define VISOR_ENDPOINT_2 0x02
  95. /* struct visor_connection_info.connection[x].port_function_id defines: */
  96. #define VISOR_FUNCTION_GENERIC 0x00
  97. #define VISOR_FUNCTION_DEBUGGER 0x01
  98. #define VISOR_FUNCTION_HOTSYNC 0x02
  99. #define VISOR_FUNCTION_CONSOLE 0x03
  100. #define VISOR_FUNCTION_REMOTE_FILE_SYS 0x04
  101. /****************************************************************************
  102. * PALM_GET_SOME_UNKNOWN_INFORMATION is sent by the host during enumeration to
  103. * get some information from the M series devices, that is currently unknown.
  104. ****************************************************************************/
  105. #define PALM_GET_EXT_CONNECTION_INFORMATION 0x04
  106. /**
  107. * struct palm_ext_connection_info - return data from a PALM_GET_EXT_CONNECTION_INFORMATION request
  108. * @num_ports: maximum number of functions/connections in use
  109. * @endpoint_numbers_different: will be 1 if in and out endpoints numbers are
  110. * different, otherwise it is 0. If value is 1, then
  111. * connections.end_point_info is non-zero. If value is 0, then
  112. * connections.port contains the endpoint number, which is the same for in
  113. * and out.
  114. * @port_function_id: contains the creator id of the application that opened
  115. * this connection.
  116. * @port: contains the in/out endpoint number. Is 0 if in and out endpoint
  117. * numbers are different.
  118. * @end_point_info: high nubbe is in endpoint and low nibble will indicate out
  119. * endpoint. Is 0 if in and out endpoints are the same.
  120. *
  121. * The maximum number of connections currently supported is 2
  122. */
  123. struct palm_ext_connection_info {
  124. __u8 num_ports;
  125. __u8 endpoint_numbers_different;
  126. __le16 reserved1;
  127. struct {
  128. __u32 port_function_id;
  129. __u8 port;
  130. __u8 end_point_info;
  131. __le16 reserved;
  132. } connections[2];
  133. };
  134. #endif