Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

83 lines
2.1 KiB

  1. //////////////////////////////////////////////////////////////////////////////
  2. //
  3. // (C) Philips Semiconductors-CSU 1999
  4. // All rights are reserved. Reproduction in whole or in part is prohibited
  5. // without the written consent of the copyright owner.
  6. //
  7. // Philips reserves the right to make changes without notice at any time.
  8. // Philips makes no warranty, expressed, implied or statutory, including but
  9. // not limited to any implied warranty of merchantibility or fitness for any
  10. // particular purpose, or that the use will not infringe any third party
  11. // patent, copyright or trademark. Philips must not be liable for any loss
  12. // or damage arising from its use.
  13. //
  14. // VSBDEF.H
  15. // Constants and structures for the VSB
  16. //////////////////////////////////////////////////////////////////////////////
  17. #ifndef _VSBDEF_H_
  18. #define _VSBDEF_H_
  19. // Register access operation
  20. #define WRITE_REGISTERS 0x1
  21. #define READ_REGISTERS 0x2
  22. // Quality Check Modes
  23. #define QCM_ENABLE 0x1
  24. #define QCM_DISABLE 0x2
  25. #define QCM_RESET 0x4
  26. #define QCM_TERMINATE 0x8
  27. // Tweaking constants
  28. #define TUNER_ABSOLUTE_TWEAK 0
  29. #define TUNER_RELATIVE_TWEAK 1
  30. #define MAX_MSE 0xffff // Maximum MSE value
  31. #define MAX_CONTROL_REG MAX_VSB_REG // Maximum control registers
  32. #define MAX_VSB_COEFF 4
  33. #define VSB1_CONTROL_SIZE 0x11 //0x12
  34. #define VSB1_STATUS_SIZE 0x5
  35. #define VSB2_CONTROL_SIZE 0x36 //0x34
  36. #define VSB2_STATUS_SIZE 0xd
  37. // Maximum size of I2C buffer This size > than max correlator coeff
  38. // + equalizer taps
  39. // + equalizer cluster taps
  40. // + sync-enhancer taps
  41. // + cochannel rejection filter taps
  42. // + other control registers
  43. #define MAX_BUFFER_SIZE MAX_VSB_BUF_SIZE
  44. // Register structures
  45. // Status registers
  46. typedef struct
  47. {
  48. BOOL bFrontEndLock;
  49. UCHAR ucState;
  50. BOOL bEqualizerLock;
  51. UINT uiMse;
  52. UCHAR ucCarrierOffset;
  53. // Not implemented in VSB1
  54. UINT uiSegmentErrorRate;
  55. } VsbStatusType, *PVsbStatusType;
  56. // Coefficient structure
  57. typedef struct
  58. {
  59. UINT uiID;
  60. UINT uiAddress;
  61. UINT uiLength;
  62. UCHAR *p_ucBuffer;
  63. } VsbCoeffType, *PVsbCoeffType;
  64. #endif // _VSBDEF_H_