xref: /linux/include/acpi/video.h (revision b85d45947951d23cb22d90caecf4c1eb81342c96)
1 #ifndef __ACPI_VIDEO_H
2 #define __ACPI_VIDEO_H
3 
4 #include <linux/errno.h> /* for ENODEV */
5 
6 struct acpi_device;
7 
8 #define ACPI_VIDEO_CLASS	"video"
9 
10 #define ACPI_VIDEO_DISPLAY_CRT  1
11 #define ACPI_VIDEO_DISPLAY_TV   2
12 #define ACPI_VIDEO_DISPLAY_DVI  3
13 #define ACPI_VIDEO_DISPLAY_LCD  4
14 
15 #define ACPI_VIDEO_DISPLAY_LEGACY_MONITOR 0x0100
16 #define ACPI_VIDEO_DISPLAY_LEGACY_PANEL   0x0110
17 #define ACPI_VIDEO_DISPLAY_LEGACY_TV      0x0200
18 
19 enum acpi_backlight_type {
20 	acpi_backlight_undef = -1,
21 	acpi_backlight_none = 0,
22 	acpi_backlight_video,
23 	acpi_backlight_vendor,
24 	acpi_backlight_native,
25 };
26 
27 #if IS_ENABLED(CONFIG_ACPI_VIDEO)
28 extern int acpi_video_register(void);
29 extern void acpi_video_unregister(void);
30 extern int acpi_video_get_edid(struct acpi_device *device, int type,
31 			       int device_id, void **edid);
32 extern enum acpi_backlight_type acpi_video_get_backlight_type(void);
33 extern void acpi_video_set_dmi_backlight_type(enum acpi_backlight_type type);
34 #else
35 static inline int acpi_video_register(void) { return 0; }
36 static inline void acpi_video_unregister(void) { return; }
37 static inline int acpi_video_get_edid(struct acpi_device *device, int type,
38 				      int device_id, void **edid)
39 {
40 	return -ENODEV;
41 }
42 static inline enum acpi_backlight_type acpi_video_get_backlight_type(void)
43 {
44 	return acpi_backlight_vendor;
45 }
46 static inline void acpi_video_set_dmi_backlight_type(enum acpi_backlight_type type)
47 {
48 }
49 #endif
50 
51 #endif
52