lcd.h 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. /* SPDX-License-Identifier: GPL-2.0-or-later */
  2. /*
  3. * Copyright 1998-2008 VIA Technologies, Inc. All Rights Reserved.
  4. * Copyright 2001-2008 S3 Graphics, Inc. All Rights Reserved.
  5. */
  6. #ifndef __LCD_H__
  7. #define __LCD_H__
  8. /*Definition TMDS Device ID register*/
  9. #define VT1631_DEVICE_ID_REG 0x02
  10. #define VT1631_DEVICE_ID 0x92
  11. #define VT3271_DEVICE_ID_REG 0x02
  12. #define VT3271_DEVICE_ID 0x71
  13. /* Definition DVI Panel ID*/
  14. /* Resolution: 640x480, Channel: single, Dithering: Enable */
  15. #define LCD_PANEL_ID0_640X480 0x00
  16. /* Resolution: 800x600, Channel: single, Dithering: Enable */
  17. #define LCD_PANEL_ID1_800X600 0x01
  18. /* Resolution: 1024x768, Channel: single, Dithering: Enable */
  19. #define LCD_PANEL_ID2_1024X768 0x02
  20. /* Resolution: 1280x768, Channel: single, Dithering: Enable */
  21. #define LCD_PANEL_ID3_1280X768 0x03
  22. /* Resolution: 1280x1024, Channel: dual, Dithering: Enable */
  23. #define LCD_PANEL_ID4_1280X1024 0x04
  24. /* Resolution: 1400x1050, Channel: dual, Dithering: Enable */
  25. #define LCD_PANEL_ID5_1400X1050 0x05
  26. /* Resolution: 1600x1200, Channel: dual, Dithering: Enable */
  27. #define LCD_PANEL_ID6_1600X1200 0x06
  28. /* Resolution: 1366x768, Channel: single, Dithering: Disable */
  29. #define LCD_PANEL_ID7_1366X768 0x07
  30. /* Resolution: 1024x600, Channel: single, Dithering: Enable*/
  31. #define LCD_PANEL_ID8_1024X600 0x08
  32. /* Resolution: 1280x800, Channel: single, Dithering: Enable*/
  33. #define LCD_PANEL_ID9_1280X800 0x09
  34. /* Resolution: 800x480, Channel: single, Dithering: Enable*/
  35. #define LCD_PANEL_IDA_800X480 0x0A
  36. /* Resolution: 1360x768, Channel: single, Dithering: Disable*/
  37. #define LCD_PANEL_IDB_1360X768 0x0B
  38. /* Resolution: 480x640, Channel: single, Dithering: Enable */
  39. #define LCD_PANEL_IDC_480X640 0x0C
  40. /* Resolution: 1200x900, Channel: single, Dithering: Disable */
  41. #define LCD_PANEL_IDD_1200X900 0x0D
  42. extern int viafb_LCD2_ON;
  43. extern int viafb_LCD_ON;
  44. extern int viafb_DVI_ON;
  45. void viafb_disable_lvds_vt1636(struct lvds_setting_information
  46. *plvds_setting_info,
  47. struct lvds_chip_information *plvds_chip_info);
  48. void viafb_enable_lvds_vt1636(struct lvds_setting_information
  49. *plvds_setting_info,
  50. struct lvds_chip_information *plvds_chip_info);
  51. void viafb_lcd_disable(void);
  52. void viafb_lcd_enable(void);
  53. void viafb_init_lcd_size(void);
  54. void viafb_init_lvds_output_interface(struct lvds_chip_information
  55. *plvds_chip_info,
  56. struct lvds_setting_information
  57. *plvds_setting_info);
  58. void viafb_lcd_set_mode(const struct fb_var_screeninfo *var, u16 cxres,
  59. u16 cyres, struct lvds_setting_information *plvds_setting_info,
  60. struct lvds_chip_information *plvds_chip_info);
  61. bool viafb_lvds_trasmitter_identify(void);
  62. void viafb_init_lvds_output_interface(struct lvds_chip_information
  63. *plvds_chip_info,
  64. struct lvds_setting_information
  65. *plvds_setting_info);
  66. bool viafb_lcd_get_mobile_state(bool *mobile);
  67. #endif /* __LCD_H__ */