v4l2-chip-ident.h 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168
  1. /*
  2. v4l2 chip identifiers header
  3. This header provides a list of chip identifiers that can be returned
  4. through the VIDIOC_G_CHIP_IDENT ioctl.
  5. Copyright (C) 2007 Hans Verkuil <hverkuil@xs4all.nl>
  6. This program is free software; you can redistribute it and/or modify
  7. it under the terms of the GNU General Public License as published by
  8. the Free Software Foundation; either version 2 of the License, or
  9. (at your option) any later version.
  10. This program is distributed in the hope that it will be useful,
  11. but WITHOUT ANY WARRANTY; without even the implied warranty of
  12. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  13. GNU General Public License for more details.
  14. You should have received a copy of the GNU General Public License
  15. along with this program; if not, write to the Free Software
  16. Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
  17. */
  18. #ifndef V4L2_CHIP_IDENT_H_
  19. #define V4L2_CHIP_IDENT_H_
  20. /* VIDIOC_G_CHIP_IDENT: identifies the actual chip installed on the board */
  21. enum {
  22. /* general idents: reserved range 0-49 */
  23. V4L2_IDENT_NONE = 0, /* No chip matched */
  24. V4L2_IDENT_AMBIGUOUS = 1, /* Match too general, multiple chips matched */
  25. V4L2_IDENT_UNKNOWN = 2, /* Chip found, but cannot identify */
  26. /* module tvaudio: reserved range 50-99 */
  27. V4L2_IDENT_TVAUDIO = 50, /* A tvaudio chip, unknown which it is exactly */
  28. /* module saa7110: just ident 100 */
  29. V4L2_IDENT_SAA7110 = 100,
  30. /* module saa7111: just ident 101 */
  31. V4L2_IDENT_SAA7111 = 101,
  32. /* module saa7115: reserved range 102-149 */
  33. V4L2_IDENT_SAA7113 = 103,
  34. V4L2_IDENT_SAA7114 = 104,
  35. V4L2_IDENT_SAA7115 = 105,
  36. V4L2_IDENT_SAA7118 = 108,
  37. /* module saa7127: reserved range 150-199 */
  38. V4L2_IDENT_SAA7127 = 157,
  39. V4L2_IDENT_SAA7129 = 159,
  40. /* module cx25840: reserved range 200-249 */
  41. V4L2_IDENT_CX25836 = 236,
  42. V4L2_IDENT_CX25837 = 237,
  43. V4L2_IDENT_CX25840 = 240,
  44. V4L2_IDENT_CX25841 = 241,
  45. V4L2_IDENT_CX25842 = 242,
  46. V4L2_IDENT_CX25843 = 243,
  47. /* OmniVision sensors: reserved range 250-299 */
  48. V4L2_IDENT_OV7670 = 250,
  49. /* Conexant MPEG encoder/decoders: reserved range 410-420 */
  50. V4L2_IDENT_CX23415 = 415,
  51. V4L2_IDENT_CX23416 = 416,
  52. V4L2_IDENT_CX23418 = 418,
  53. /* module vp27smpx: just ident 2700 */
  54. V4L2_IDENT_VP27SMPX = 2700,
  55. /* module cs5345: just ident 5345 */
  56. V4L2_IDENT_CS5345 = 5345,
  57. /* module wm8739: just ident 8739 */
  58. V4L2_IDENT_WM8739 = 8739,
  59. /* module wm8775: just ident 8775 */
  60. V4L2_IDENT_WM8775 = 8775,
  61. /* module cs53132a: just ident 53132 */
  62. V4L2_IDENT_CS53l32A = 53132,
  63. /* module upd64031a: just ident 64031 */
  64. V4L2_IDENT_UPD64031A = 64031,
  65. /* module upd64083: just ident 64083 */
  66. V4L2_IDENT_UPD64083 = 64083,
  67. /* module m52790: just ident 52790 */
  68. V4L2_IDENT_M52790 = 52790,
  69. /* module msp3400: reserved range 34000-34999 and 44000-44999 */
  70. V4L2_IDENT_MSPX4XX = 34000, /* generic MSPX4XX identifier, only
  71. use internally (tveeprom.c). */
  72. V4L2_IDENT_MSP3400B = 34002,
  73. V4L2_IDENT_MSP3410B = 34102,
  74. V4L2_IDENT_MSP3400C = 34003,
  75. V4L2_IDENT_MSP3410C = 34103,
  76. V4L2_IDENT_MSP3400D = 34004,
  77. V4L2_IDENT_MSP3410D = 34104,
  78. V4L2_IDENT_MSP3405D = 34054,
  79. V4L2_IDENT_MSP3415D = 34154,
  80. V4L2_IDENT_MSP3407D = 34074,
  81. V4L2_IDENT_MSP3417D = 34174,
  82. V4L2_IDENT_MSP3400G = 34007,
  83. V4L2_IDENT_MSP3410G = 34107,
  84. V4L2_IDENT_MSP3420G = 34207,
  85. V4L2_IDENT_MSP3430G = 34307,
  86. V4L2_IDENT_MSP3440G = 34407,
  87. V4L2_IDENT_MSP3450G = 34507,
  88. V4L2_IDENT_MSP3460G = 34607,
  89. V4L2_IDENT_MSP3401G = 34017,
  90. V4L2_IDENT_MSP3411G = 34117,
  91. V4L2_IDENT_MSP3421G = 34217,
  92. V4L2_IDENT_MSP3431G = 34317,
  93. V4L2_IDENT_MSP3441G = 34417,
  94. V4L2_IDENT_MSP3451G = 34517,
  95. V4L2_IDENT_MSP3461G = 34617,
  96. V4L2_IDENT_MSP3402G = 34027,
  97. V4L2_IDENT_MSP3412G = 34127,
  98. V4L2_IDENT_MSP3422G = 34227,
  99. V4L2_IDENT_MSP3442G = 34427,
  100. V4L2_IDENT_MSP3452G = 34527,
  101. V4L2_IDENT_MSP3405G = 34057,
  102. V4L2_IDENT_MSP3415G = 34157,
  103. V4L2_IDENT_MSP3425G = 34257,
  104. V4L2_IDENT_MSP3435G = 34357,
  105. V4L2_IDENT_MSP3445G = 34457,
  106. V4L2_IDENT_MSP3455G = 34557,
  107. V4L2_IDENT_MSP3465G = 34657,
  108. V4L2_IDENT_MSP3407G = 34077,
  109. V4L2_IDENT_MSP3417G = 34177,
  110. V4L2_IDENT_MSP3427G = 34277,
  111. V4L2_IDENT_MSP3437G = 34377,
  112. V4L2_IDENT_MSP3447G = 34477,
  113. V4L2_IDENT_MSP3457G = 34577,
  114. V4L2_IDENT_MSP3467G = 34677,
  115. /* module msp3400: reserved range 34000-34999 and 44000-44999 */
  116. V4L2_IDENT_MSP4400G = 44007,
  117. V4L2_IDENT_MSP4410G = 44107,
  118. V4L2_IDENT_MSP4420G = 44207,
  119. V4L2_IDENT_MSP4440G = 44407,
  120. V4L2_IDENT_MSP4450G = 44507,
  121. V4L2_IDENT_MSP4408G = 44087,
  122. V4L2_IDENT_MSP4418G = 44187,
  123. V4L2_IDENT_MSP4428G = 44287,
  124. V4L2_IDENT_MSP4448G = 44487,
  125. V4L2_IDENT_MSP4458G = 44587,
  126. /* Micron CMOS sensor chips: 45000-45099 */
  127. V4L2_IDENT_MT9M001C12ST = 45000,
  128. V4L2_IDENT_MT9M001C12STM = 45005,
  129. V4L2_IDENT_MT9V022IX7ATC = 45010, /* No way to detect "normal" I77ATx */
  130. V4L2_IDENT_MT9V022IX7ATM = 45015, /* and "lead free" IA7ATx chips */
  131. };
  132. #endif