xref: /linux/arch/powerpc/include/asm/backlight.h (revision eb01fe7abbe2d0b38824d2a93fdb4cc3eaf2ccc1)
1 /* SPDX-License-Identifier: GPL-2.0 */
2 /*
3  * Routines for handling backlight control on PowerBooks
4  *
5  * For now, implementation resides in
6  * arch/powerpc/platforms/powermac/backlight.c
7  *
8  */
9 #ifndef __ASM_POWERPC_BACKLIGHT_H
10 #define __ASM_POWERPC_BACKLIGHT_H
11 #ifdef __KERNEL__
12 
13 #include <linux/mutex.h>
14 
15 struct backlight_device;
16 
17 /* For locking instructions, see the implementation file */
18 extern struct backlight_device *pmac_backlight;
19 extern struct mutex pmac_backlight_mutex;
20 
21 extern int pmac_has_backlight_type(const char *type);
22 
23 extern void pmac_backlight_key(int direction);
24 static inline void pmac_backlight_key_up(void)
25 {
26 	pmac_backlight_key(0);
27 }
28 static inline void pmac_backlight_key_down(void)
29 {
30 	pmac_backlight_key(1);
31 }
32 
33 extern void pmac_backlight_set_legacy_brightness_pmu(int brightness);
34 extern int pmac_backlight_set_legacy_brightness(int brightness);
35 extern int pmac_backlight_get_legacy_brightness(void);
36 
37 extern void pmac_backlight_enable(void);
38 extern void pmac_backlight_disable(void);
39 
40 #endif /* __KERNEL__ */
41 #endif
42