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
15struct backlight_device;
16
17/* For locking instructions, see the implementation file */
18extern struct backlight_device *pmac_backlight;
19extern struct mutex pmac_backlight_mutex;
20
21extern int pmac_has_backlight_type(const char *type);
22
23extern void pmac_backlight_key(int direction);
24static inline void pmac_backlight_key_up(void)
25{
26	pmac_backlight_key(0);
27}
28static inline void pmac_backlight_key_down(void)
29{
30	pmac_backlight_key(1);
31}
32
33extern void pmac_backlight_set_legacy_brightness_pmu(int brightness);
34extern int pmac_backlight_set_legacy_brightness(int brightness);
35extern int pmac_backlight_get_legacy_brightness(void);
36
37extern void pmac_backlight_enable(void);
38extern void pmac_backlight_disable(void);
39
40#endif /* __KERNEL__ */
41#endif
42