Loading...
1#ifndef __ACPI_VIDEO_H
2#define __ACPI_VIDEO_H
3
4#include <linux/errno.h> /* for ENODEV */
5
6struct 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#if (defined CONFIG_ACPI_VIDEO || defined CONFIG_ACPI_VIDEO_MODULE)
20extern int acpi_video_register(void);
21extern void acpi_video_unregister(void);
22extern int acpi_video_get_edid(struct acpi_device *device, int type,
23 int device_id, void **edid);
24#else
25static inline int acpi_video_register(void) { return 0; }
26static inline void acpi_video_unregister(void) { return; }
27static inline int acpi_video_get_edid(struct acpi_device *device, int type,
28 int device_id, void **edid)
29{
30 return -ENODEV;
31}
32#endif
33
34#endif
1#ifndef __ACPI_VIDEO_H
2#define __ACPI_VIDEO_H
3
4#include <linux/errno.h> /* for ENODEV */
5#include <linux/types.h> /* for bool */
6
7struct acpi_device;
8
9#define ACPI_VIDEO_CLASS "video"
10
11#define ACPI_VIDEO_DISPLAY_CRT 1
12#define ACPI_VIDEO_DISPLAY_TV 2
13#define ACPI_VIDEO_DISPLAY_DVI 3
14#define ACPI_VIDEO_DISPLAY_LCD 4
15
16#define ACPI_VIDEO_DISPLAY_LEGACY_MONITOR 0x0100
17#define ACPI_VIDEO_DISPLAY_LEGACY_PANEL 0x0110
18#define ACPI_VIDEO_DISPLAY_LEGACY_TV 0x0200
19
20enum acpi_backlight_type {
21 acpi_backlight_undef = -1,
22 acpi_backlight_none = 0,
23 acpi_backlight_video,
24 acpi_backlight_vendor,
25 acpi_backlight_native,
26};
27
28#if IS_ENABLED(CONFIG_ACPI_VIDEO)
29extern int acpi_video_register(void);
30extern void acpi_video_unregister(void);
31extern int acpi_video_get_edid(struct acpi_device *device, int type,
32 int device_id, void **edid);
33extern enum acpi_backlight_type acpi_video_get_backlight_type(void);
34extern void acpi_video_set_dmi_backlight_type(enum acpi_backlight_type type);
35/*
36 * Note: The value returned by acpi_video_handles_brightness_key_presses()
37 * may change over time and should not be cached.
38 */
39extern bool acpi_video_handles_brightness_key_presses(void);
40#else
41static inline int acpi_video_register(void) { return 0; }
42static inline void acpi_video_unregister(void) { return; }
43static inline int acpi_video_get_edid(struct acpi_device *device, int type,
44 int device_id, void **edid)
45{
46 return -ENODEV;
47}
48static inline enum acpi_backlight_type acpi_video_get_backlight_type(void)
49{
50 return acpi_backlight_vendor;
51}
52static inline void acpi_video_set_dmi_backlight_type(enum acpi_backlight_type type)
53{
54}
55static inline bool acpi_video_handles_brightness_key_presses(void)
56{
57 return false;
58}
59#endif
60
61#endif