summaryrefslogtreecommitdiff
path: root/firmware/target/hosted/backlight-unix.c
diff options
context:
space:
mode:
authorMarcin Bukat <marcin.bukat@gmail.com>2018-11-05 13:01:55 +0100
committerSolomon Peachy <pizza@shaftnet.org>2020-04-06 18:15:41 +0200
commit180cef835bf40d0081895773aaa637ac926bb0ac (patch)
tree48c380d76c0ea40931cb5e863b40fc5dfa1ecba4 /firmware/target/hosted/backlight-unix.c
parentced3a20aacf26642ccc3ffd136f64247c67e5769 (diff)
downloadrockbox-180cef835bf40d0081895773aaa637ac926bb0ac.tar.gz
rockbox-180cef835bf40d0081895773aaa637ac926bb0ac.zip
xDuoo X3II and X20 port
Provided by Roman Stolyarov Integration, Refactoring, and Upstreaming by Solomon Peachy X3II confirmed working by forum tester, X20 is nearly identical. This includes bootloader, main firmware, and the flash image patcher. Eventual Todo: * Further refactor AGPTek Rocker & xduoo hiby bootloaders * Further refactor AGPTek Rocker & xduoo hosted platform code Change-Id: I34a674051d368efcc75d1d18c725971fe46c3eee
Diffstat (limited to 'firmware/target/hosted/backlight-unix.c')
-rw-r--r--firmware/target/hosted/backlight-unix.c64
1 files changed, 64 insertions, 0 deletions
diff --git a/firmware/target/hosted/backlight-unix.c b/firmware/target/hosted/backlight-unix.c
new file mode 100644
index 0000000000..2f00787f72
--- /dev/null
+++ b/firmware/target/hosted/backlight-unix.c
@@ -0,0 +1,64 @@
1/***************************************************************************
2 * __________ __ ___
3 * Open \______ \ ____ ____ | | _\_ |__ _______ ___
4 * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
5 * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
6 * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
7 * \/ \/ \/ \/ \/
8 *
9 * Copyright (C) 2017 Marcin Bukat
10 *
11 * This program is free software; you can redistribute it and/or
12 * modify it under the terms of the GNU General Public License
13 * as published by the Free Software Foundation; either version 2
14 * of the License, or (at your option) any later version.
15 *
16 * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
17 * KIND, either express or implied.
18 *
19 ****************************************************************************/
20#include <sys/types.h>
21#include <sys/stat.h>
22#include <fcntl.h>
23#include <stdbool.h>
24#include <unistd.h>
25#include <string.h>
26#include <stdio.h>
27#include "config.h"
28#include "backlight-target.h"
29#include "sysfs.h"
30#include "panic.h"
31
32static const char * const sysfs_bl_brightness =
33 "/sys/class/backlight/pwm-backlight.0/brightness";
34
35static const char * const sysfs_bl_power =
36 "/sys/class/backlight/pwm-backlight.0/bl_power";
37
38bool backlight_hw_init(void)
39{
40 backlight_hw_on();
41 backlight_hw_brightness(DEFAULT_BRIGHTNESS_SETTING);
42 return true;
43}
44
45void backlight_hw_on(void)
46{
47 sysfs_set_int(sysfs_bl_power, 0);
48}
49
50void backlight_hw_off(void)
51{
52 sysfs_set_int(sysfs_bl_power, 1);
53}
54
55void backlight_hw_brightness(int brightness)
56{
57 /* cap range, just in case */
58 if (brightness > MAX_BRIGHTNESS_SETTING)
59 brightness = MAX_BRIGHTNESS_SETTING;
60 if (brightness < MIN_BRIGHTNESS_SETTING)
61 brightness = MIN_BRIGHTNESS_SETTING;
62
63 sysfs_set_int(sysfs_bl_brightness, brightness);
64}