sil164.h 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. /*
  2. * Copyright (C) 2010 Francisco Jerez.
  3. * All Rights Reserved.
  4. *
  5. * Permission is hereby granted, free of charge, to any person obtaining
  6. * a copy of this software and associated documentation files (the
  7. * "Software"), to deal in the Software without restriction, including
  8. * without limitation the rights to use, copy, modify, merge, publish,
  9. * distribute, sublicense, and/or sell copies of the Software, and to
  10. * permit persons to whom the Software is furnished to do so, subject to
  11. * the following conditions:
  12. *
  13. * The above copyright notice and this permission notice (including the
  14. * next paragraph) shall be included in all copies or substantial
  15. * portions of the Software.
  16. *
  17. * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
  18. * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
  19. * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
  20. * IN NO EVENT SHALL THE COPYRIGHT OWNER(S) AND/OR ITS SUPPLIERS BE
  21. * LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
  22. * OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
  23. * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
  24. *
  25. */
  26. #ifndef __DRM_I2C_SIL164_H__
  27. #define __DRM_I2C_SIL164_H__
  28. /**
  29. * struct sil164_encoder_params
  30. *
  31. * Describes how the sil164 is connected to the GPU. It should be used
  32. * as the @params parameter of its @set_config method.
  33. *
  34. * See "http://www.siliconimage.com/docs/SiI-DS-0021-E-164.pdf".
  35. */
  36. struct sil164_encoder_params {
  37. enum {
  38. SIL164_INPUT_EDGE_FALLING = 0,
  39. SIL164_INPUT_EDGE_RISING
  40. } input_edge;
  41. enum {
  42. SIL164_INPUT_WIDTH_12BIT = 0,
  43. SIL164_INPUT_WIDTH_24BIT
  44. } input_width;
  45. enum {
  46. SIL164_INPUT_SINGLE_EDGE = 0,
  47. SIL164_INPUT_DUAL_EDGE
  48. } input_dual;
  49. enum {
  50. SIL164_PLL_FILTER_ON = 0,
  51. SIL164_PLL_FILTER_OFF,
  52. } pll_filter;
  53. int input_skew; /** < Allowed range [-4, 3], use 0 for no de-skew. */
  54. int duallink_skew; /** < Allowed range [-4, 3]. */
  55. };
  56. #endif