add power button, recovery vibrator, fix kbr, add logo
This commit is contained in:
@@ -38,3 +38,8 @@ config G900_PHONE
|
||||
---help---
|
||||
This is a DPRam driver for G900 PXA270 <-> MSM6280
|
||||
|
||||
config G900_POWER_BUTTON
|
||||
tristate "G900 Power Buttons"
|
||||
depends on MACH_G900
|
||||
---help---
|
||||
This is a POWER Buttons driver for G900
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
obj-$(CONFIG_MACH_G900) += g900.o
|
||||
obj-$(CONFIG_G900_KBR) += g900_keyboard.o
|
||||
obj-$(CONFIG_G900_BUTTON) += g900_buttons.o
|
||||
obj-$(CONFIG_G900_LEDS) += g900_leds.o
|
||||
obj-$(CONFIG_G900_PHONE) += g900_msm6280.o
|
||||
obj-$(CONFIG_MACH_G900) += g900.o
|
||||
obj-$(CONFIG_G900_KBR) += g900_keyboard.o
|
||||
obj-$(CONFIG_G900_BUTTON) += g900_buttons.o
|
||||
obj-$(CONFIG_G900_POWER_BUTTON) += g900_pwr_btn.o
|
||||
obj-$(CONFIG_G900_LEDS) += g900_leds.o
|
||||
obj-$(CONFIG_G900_PHONE) += g900_msm6280.o
|
||||
|
||||
|
||||
@@ -578,7 +578,9 @@ static struct platform_device g900_keyboard = {
|
||||
static struct platform_device g900_button = {
|
||||
.name = "g900-button",
|
||||
};
|
||||
|
||||
static struct platform_device g900_pwr_button = {
|
||||
.name = "g900-power-button",
|
||||
};
|
||||
|
||||
static struct platform_device g900_sound = {
|
||||
.name = "g900-wm9714",
|
||||
@@ -611,6 +613,7 @@ static struct platform_device wm9713_codec =
|
||||
static struct platform_device *g900_devices[] __initdata = {
|
||||
&g900_keyboard,
|
||||
&g900_button,
|
||||
&g900_pwr_button,
|
||||
&g900_ts,
|
||||
&pxa2xx_pcm,
|
||||
&g900_sound,
|
||||
|
||||
@@ -58,7 +58,10 @@ static struct platform_device kbr_switch_device = {
|
||||
#endif
|
||||
|
||||
static struct gpio_keys_button gpio_buttons[] = {
|
||||
#ifndef CONFIG_G900_POWER_BUTTON
|
||||
{KEY_POWER, GPIO3_BTN_nPower, 0, "Power button"},
|
||||
#endif
|
||||
|
||||
#ifndef CONFIG_SWITCH_GPIO
|
||||
{99 , GPIO9_BTN_nKBOpen, 0, "Keyboard open"},
|
||||
{SW_HEADPHONE_INSERT, GPIO51_BTN_nJackInsert, 0, "HeadPhone insert"},
|
||||
|
||||
@@ -48,19 +48,19 @@ static unsigned int g900_matrix_keys[] = {
|
||||
KEY(0, 2, KEY_B),
|
||||
KEY(0, 3, KEY_X),
|
||||
KEY(0, 4, KEY_V),
|
||||
KEY(0, 5, KEY_LEFTSHIFT),
|
||||
KEY(0, 6, KEY_F1), /* Left Softkey on keyboard */
|
||||
KEY(0, 5, KEY_LEFTSHIFT), /* Shift on keyboard */
|
||||
KEY(0, 6, KEY_F1), /* Left Softkey on keyboard */
|
||||
KEY(0, 7, KEY_N),
|
||||
|
||||
// KEY(1, 0, KEY_LANGUAGE), /* RU button */
|
||||
KEY(1, 0, KEY_X), /* RU button */
|
||||
KEY(1, 1, KEY_MENU), /* Windows key on keyboard KEY_LEFTMETA */
|
||||
// KEY(1, 0, KEY_LANGUAGE), /* RU button */
|
||||
KEY(1, 0, KEY_X), /* RU button */
|
||||
KEY(1, 1, KEY_MENU), /* WIN key on keyboard */
|
||||
KEY(1, 2, KEY_SPACE),
|
||||
KEY(1, 3, KEY_LEFTALT), /*KEY_OK*/
|
||||
KEY(1, 3, KEY_LEFTALT), /*KEY_OK*/
|
||||
KEY(1, 4, KEY_2),
|
||||
KEY(1, 5, KEY_FN), /* Keyboard modificator key */
|
||||
// KEY(1, 5, KEY_8), /* Keyboard modificator key */
|
||||
KEY(1, 6, KEY_F2), /* Right Softkey on keyboard */
|
||||
KEY(1, 5, KEY_FN), /* GREEN COMMA */
|
||||
// KEY(1, 5, KEY_8),
|
||||
KEY(1, 6, KEY_F2), /* Right Softkey on keyboard */
|
||||
KEY(1, 7, KEY_COMMA),
|
||||
|
||||
KEY(2, 0, KEY_R),
|
||||
@@ -78,81 +78,81 @@ static unsigned int g900_matrix_keys[] = {
|
||||
KEY(3, 3, KEY_D),
|
||||
KEY(3, 4, KEY_H),
|
||||
KEY(3, 5, KEY_A),
|
||||
KEY(3, 6, KEY_WWW),
|
||||
KEY(3, 7, KEY_ENTER),
|
||||
KEY(3, 6, KEY_WWW), /* IE button upper the screen */
|
||||
KEY(3, 7, KEY_ENTER),
|
||||
|
||||
KEY(4, 0, KEY_BACKSPACE),
|
||||
KEY(4, 1, KEY_P),
|
||||
KEY(4, 2, KEY_O),
|
||||
KEY(4, 3, KEY_I),
|
||||
KEY(4, 4, KEY_1),
|
||||
KEY(4, 5, KEY_VOLUMEDOWN),
|
||||
KEY(4, 6, KEY_VOLUMEUP),
|
||||
KEY(4, 5, KEY_VOLUMEDOWN), /* VOLUME DOWN */
|
||||
KEY(4, 6, KEY_VOLUMEUP), /* VOLUME UP */
|
||||
KEY(4, 7, KEY_CAMERA),
|
||||
|
||||
KEY(5, 0, KEY_KPENTER), /* Middle button below the screen */
|
||||
KEY(5, 0, KEY_KPENTER), /* Middle button below the screen */
|
||||
KEY(5, 1, KEY_UP),
|
||||
KEY(5, 2, KEY_APOSTROPHE),
|
||||
KEY(5, 3, KEY_M),
|
||||
KEY(5, 4, KEY_F3), /*KEY_PHONE*/
|
||||
KEY(5, 5, KEY_UP),
|
||||
KEY(5, 6, KEY_BACK), /*KEY_OK*/
|
||||
KEY(5, 7, KEY_CANCEL), /*KEY_CANCEL ??? */
|
||||
KEY(5, 4, KEY_F3), /* GREEN PHONE */
|
||||
KEY(5, 5, KEY_UP), /* UP dpad*/
|
||||
KEY(5, 6, KEY_BACK), /* KEY_OK */
|
||||
KEY(5, 7, KEY_F4), /* RED PHONE */
|
||||
|
||||
KEY(6, 0, KEY_LEFTCTRL),
|
||||
KEY(6, 1, KEY_BACKSLASH), /* + shift = | */
|
||||
KEY(6, 1, KEY_BACKSLASH), /* + shift = | */
|
||||
KEY(6, 2, KEY_L),
|
||||
KEY(6, 3, KEY_K),
|
||||
KEY(6, 4, KEY_F2), /* Right Softkey below the screen */
|
||||
KEY(6, 5, KEY_LEFT),
|
||||
KEY(6, 6, KEY_F1), /* Left Softkey below the screen */
|
||||
KEY(6, 7, KEY_DOWN),
|
||||
KEY(6, 4, KEY_F2), /* Right Softkey below the screen */
|
||||
KEY(6, 5, KEY_LEFT), /* LEFT dpad*/
|
||||
KEY(6, 6, KEY_F1), /* Left Softkey below the screen */
|
||||
KEY(6, 7, KEY_DOWN), /* DOWN dpad*/
|
||||
|
||||
KEY(7, 0, KEY_RIGHT),
|
||||
KEY(7, 1, KEY_DOWN),
|
||||
KEY(7, 2, KEY_LEFT),
|
||||
KEY(7, 3, KEY_DOT),
|
||||
KEY(7, 4, KEY_MAIL),
|
||||
KEY(7, 5, KEY_RIGHT),
|
||||
KEY(7, 6, KEY_MENU), /* Windows key below the screen KEY_RIGHTMETA*/
|
||||
KEY(7, 7, KEY_HOME),
|
||||
KEY(7, 4, KEY_MAIL), /* Key mail below the screen */
|
||||
KEY(7, 5, KEY_RIGHT), /* RIGHT dpad*/
|
||||
KEY(7, 6, KEY_MENU), /* Windows key below the screen KEY_RIGHTMETA*/
|
||||
KEY(7, 7, KEY_HOME), /* Key Contact below the screen */
|
||||
|
||||
/* keys alternate function */
|
||||
|
||||
|
||||
KEY(8, 0, KEY_SEMICOLON), /* + shift = : */
|
||||
KEY(8, 1, KEY_MINUS), /* + shift = _ */
|
||||
KEY(8, 0, KEY_SEMICOLON), /* + shift = : */
|
||||
KEY(8, 1, KEY_MINUS), /* + shift = _ */
|
||||
KEY(8, 2, KEY_EQUAL),
|
||||
KEY(8, 3, KEY_APOSTROPHE), /* + shift = ' */
|
||||
KEY(8, 3, KEY_APOSTROPHE), /* + shift = ' */
|
||||
KEY(8, 4, KEY_SEMICOLON),
|
||||
KEY(8, 5, KEY_LEFTSHIFT),
|
||||
KEY(8, 6, KEY_F1), /* Left Softkey on keyboard */
|
||||
KEY(8, 6, KEY_F1),
|
||||
KEY(8, 7, KEY_7),
|
||||
|
||||
KEY(9, 0, KEY_TAB), /* RU button */
|
||||
KEY(9, 1, KEY_LEFTMETA), /* Windows key on keyboard */
|
||||
KEY(9, 0, KEY_TAB),
|
||||
KEY(9, 1, KEY_LEFTMETA),
|
||||
KEY(9, 2, KEY_SPACE),
|
||||
KEY(9, 3, KEY_LEFTALT),
|
||||
KEY(9, 4, KEY_2),
|
||||
// KEY(9, 5, KEY_FN), /* KEY_FN */
|
||||
KEY(9, 6, KEY_F2), /* Right Softkey on keyboard */
|
||||
KEY(9, 7, KEY_8), /* + shift = * */
|
||||
// KEY(9, 5, KEY_FN), /* KEY_FN */
|
||||
KEY(9, 6, KEY_F2),
|
||||
KEY(9, 7, KEY_8), /* + shift = * */
|
||||
|
||||
KEY(10, 0, KEY_7), /* + shift = & */
|
||||
KEY(10, 1, KEY_4), /* + shift = $ */
|
||||
KEY(10, 2, KEY_0), /* + shift = ) */
|
||||
KEY(10, 3, KEY_5), /* + shift = % */
|
||||
KEY(10, 4, KEY_9), /* + shift = ( */
|
||||
KEY(10, 5, KEY_2), /* + shift = @ */
|
||||
KEY(10, 0, KEY_7), /* + shift = & */
|
||||
KEY(10, 1, KEY_4), /* + shift = $ */
|
||||
KEY(10, 2, KEY_0), /* + shift = ) */
|
||||
KEY(10, 3, KEY_5), /* + shift = % */
|
||||
KEY(10, 4, KEY_9), /* + shift = ( */
|
||||
KEY(10, 5, KEY_2), /* + shift = @ */
|
||||
KEY(10, 6, KEY_1),
|
||||
KEY(10, 7, KEY_4),
|
||||
|
||||
KEY(11, 0, KEY_SLASH), /* + shift = ? */
|
||||
KEY(11, 1, KEY_6), /* + shift = ^ */
|
||||
KEY(11, 2, KEY_1), /* + shift = ! */
|
||||
KEY(11, 0, KEY_SLASH), /* + shift = ? */
|
||||
KEY(11, 1, KEY_6), /* + shift = ^ */
|
||||
KEY(11, 2, KEY_1), /* + shift = ! */
|
||||
KEY(11, 3, KEY_BACKSLASH),
|
||||
KEY(11, 4, KEY_MINUS),
|
||||
KEY(11, 5, KEY_GRAVE), /* + shift = ~ */
|
||||
KEY(11, 5, KEY_GRAVE), /* + shift = ~ */
|
||||
KEY(11, 6, KEY_WWW),
|
||||
KEY(11, 7, KEY_ENTER),
|
||||
|
||||
@@ -165,31 +165,31 @@ static unsigned int g900_matrix_keys[] = {
|
||||
KEY(12, 6, KEY_VOLUMEUP),
|
||||
KEY(12, 7, KEY_CAMERA),
|
||||
|
||||
KEY(13, 0, KEY_KPENTER), /* Middle button below the screen */
|
||||
KEY(13, 1, KEY_PAGEUP), /* PG UP*/
|
||||
KEY(13, 0, KEY_KPENTER),
|
||||
KEY(13, 1, KEY_PAGEUP), /* PG UP*/
|
||||
KEY(13, 2, KEY_9),
|
||||
KEY(13, 3, KEY_8),
|
||||
KEY(13, 4, KEY_PHONE),
|
||||
KEY(13, 4, KEY_PHONE), /* GREEN PHONE */
|
||||
KEY(13, 5, KEY_UP),
|
||||
KEY(13, 6, KEY_OK),
|
||||
KEY(13, 7, KEY_CANCEL),
|
||||
KEY(13, 7, KEY_F4), /* RED PHONE */
|
||||
|
||||
KEY(14, 0, KEY_ESC),
|
||||
KEY(14, 1, KEY_KPPLUS),
|
||||
KEY(14, 2, KEY_6),
|
||||
KEY(14, 3, KEY_5),
|
||||
KEY(14, 4, KEY_F2), /* Right Softkey below the screen */
|
||||
KEY(14, 4, KEY_F2),
|
||||
KEY(14, 5, KEY_LEFT),
|
||||
KEY(14, 6, KEY_F1), /* Left Softkey below the screen */
|
||||
KEY(14, 6, KEY_F1),
|
||||
KEY(14, 7, KEY_DOWN),
|
||||
|
||||
KEY(15, 0, KEY_X), /* FOLDER */
|
||||
KEY(15, 0, KEY_X), /* FOLDER */
|
||||
KEY(15, 1, KEY_PAGEDOWN), /* PG DWN */
|
||||
KEY(15, 2, KEY_3), /* shift + 3 = # */
|
||||
KEY(15, 2, KEY_3), /* shift + 3 = # */
|
||||
KEY(15, 3, KEY_0),
|
||||
KEY(15, 4, KEY_MAIL),
|
||||
KEY(15, 5, KEY_RIGHT),
|
||||
KEY(15, 6, KEY_RIGHTMETA), /* Windows key below the screen */
|
||||
KEY(15, 6, KEY_RIGHTMETA),
|
||||
KEY(15, 7, KEY_HOME)
|
||||
};
|
||||
|
||||
|
||||
@@ -68,13 +68,13 @@ static struct gpio_led gpio_leds[] = {
|
||||
.gpio = GPIO16_LED_nVibra,
|
||||
.name = "vibrator",
|
||||
.active_low = 0,
|
||||
.max_timeout = 400,
|
||||
.max_timeout = 4000,
|
||||
},
|
||||
{
|
||||
.gpio = GPIO37_LED_nFlash,
|
||||
.name = "flash",
|
||||
.active_low = 0,
|
||||
.max_timeout = 400,
|
||||
.max_timeout = 4000,
|
||||
},
|
||||
};
|
||||
static struct timed_gpio_platform_data g900_timed_gpio_data = {
|
||||
@@ -170,7 +170,7 @@ static struct platform_device g900_lcd_backlight = {
|
||||
&g900_gpio_leds,
|
||||
&g900_lcd_backlight,
|
||||
#ifdef CONFIG_ANDROID_TIMED_GPIO
|
||||
//&g900_timed_gpio, /* BUG !*/
|
||||
&g900_timed_gpio, /* BUG !*/
|
||||
#endif
|
||||
};
|
||||
|
||||
|
||||
121
kernel-2.6.33/arch/arm/mach-pxa/g900/g900_pwr_btn.c
Executable file
121
kernel-2.6.33/arch/arm/mach-pxa/g900/g900_pwr_btn.c
Executable file
@@ -0,0 +1,121 @@
|
||||
/*
|
||||
* Buttons support for Toshiba G900. GPIO buttons
|
||||
* based on:
|
||||
* Xiao Huang g900_button.c
|
||||
*/
|
||||
|
||||
#include <linux/input.h>
|
||||
#include <linux/module.h>
|
||||
#include <linux/init.h>
|
||||
#include <linux/interrupt.h>
|
||||
#include <linux/irq.h>
|
||||
#include <linux/platform_device.h>
|
||||
#include <linux/gpio_keys.h>
|
||||
|
||||
#include <asm/mach-types.h>
|
||||
|
||||
#include <mach/hardware.h>
|
||||
|
||||
#include <mach/pxa2xx-regs.h>
|
||||
#include <mach/g900-gpio.h>
|
||||
#include <mach/gpio.h>
|
||||
|
||||
#include <mach/regs-ost.h>
|
||||
#include <mach/reset.h>
|
||||
|
||||
|
||||
#define BTN_POWER GPIO3_BTN_nPower
|
||||
|
||||
static void cpu_hw_reset(void)
|
||||
{
|
||||
|
||||
/* Initialize the watchdog and let it fire */
|
||||
OWER = OWER_WME;
|
||||
OSSR = OSSR_M3;
|
||||
OSMR3 = OSCR + 368640; /* ... in 100 ms */
|
||||
}
|
||||
|
||||
static irqreturn_t pwr_btn_irq(int irq, void *dev_id)
|
||||
{
|
||||
int state;
|
||||
|
||||
state = GET_GPIO(BTN_POWER);
|
||||
if(state){
|
||||
printk("g900-power-button: unpress");
|
||||
}else{
|
||||
cpu_hw_reset();
|
||||
}
|
||||
printk("g900-power-button: state=%d\n", state);
|
||||
|
||||
return IRQ_HANDLED;
|
||||
}
|
||||
|
||||
|
||||
static int buttons_probe(struct platform_device *pdev)
|
||||
{
|
||||
int err;
|
||||
int irqflag = IRQF_SAMPLE_RANDOM;
|
||||
#ifdef CONFIG_PREEMPT_RT
|
||||
irqflag |= IRQF_NODELAY;
|
||||
#endif
|
||||
|
||||
if (!machine_is_g900())
|
||||
return -ENODEV;
|
||||
|
||||
//assign irq and keybit
|
||||
set_irq_type(IRQ_GPIO(BTN_POWER), IRQF_TRIGGER_FALLING | IRQF_TRIGGER_RISING);
|
||||
err = request_irq(IRQ_GPIO(BTN_POWER), pwr_btn_irq, irqflag, "g900-gpio-buttons", NULL);
|
||||
if (err)
|
||||
{
|
||||
printk(KERN_ERR "g900-power-button: Cannot assign GPIO(%d) IRQ\n", BTN_POWER);
|
||||
return err;
|
||||
}
|
||||
printk("g900-power-button: *****IRQ %d OK****", IRQ_GPIO(BTN_POWER));
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int buttons_remove(struct platform_device *pdev)
|
||||
{
|
||||
free_irq(IRQ_GPIO(BTN_POWER), NULL);
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int buttons_suspend(struct platform_device *pdev, pm_message_t state)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int buttons_resume(struct platform_device *pdev)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
static struct platform_driver buttons_driver = {
|
||||
.driver = {
|
||||
.name = "g900-power-button",
|
||||
},
|
||||
.probe = buttons_probe,
|
||||
.remove = buttons_remove,
|
||||
#ifdef CONFIG_PM
|
||||
.suspend = buttons_suspend,
|
||||
.resume = buttons_resume,
|
||||
#endif
|
||||
};
|
||||
|
||||
static int __init buttons_init(void)
|
||||
{
|
||||
return platform_driver_register(&buttons_driver);
|
||||
}
|
||||
|
||||
static void __exit buttons_exit(void)
|
||||
{
|
||||
platform_driver_unregister(&buttons_driver);
|
||||
}
|
||||
|
||||
module_init(buttons_init);
|
||||
module_exit(buttons_exit);
|
||||
|
||||
MODULE_LICENSE("GPL");
|
||||
MODULE_AUTHOR("Angell FEar<angell@angellfear.ru>");
|
||||
MODULE_DESCRIPTION("Power Button driver for Toshiba G900");
|
||||
BIN
kernel-2.6.33/drivers/video/logo/g900.ppm
Normal file
BIN
kernel-2.6.33/drivers/video/logo/g900.ppm
Normal file
Binary file not shown.
File diff suppressed because it is too large
Load Diff
@@ -1,6 +1,41 @@
|
||||
#!/bin/sh
|
||||
|
||||
echo "Ramdisk for Toshiba G900 from Angell Fear"
|
||||
echo ""
|
||||
echo ""
|
||||
echo ""
|
||||
echo ""
|
||||
echo ""
|
||||
echo ""
|
||||
echo ""
|
||||
echo ""
|
||||
echo ""
|
||||
echo ""
|
||||
echo ""
|
||||
echo ""
|
||||
echo ""
|
||||
echo ""
|
||||
echo " *~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*"
|
||||
echo " * *"
|
||||
echo " * Ramdisk for Toshiba G900 from Angell Fear *"
|
||||
echo " * ANDROID SUPPORT *"
|
||||
echo " *~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*"
|
||||
echo ""
|
||||
echo ""
|
||||
echo ""
|
||||
echo ""
|
||||
echo ""
|
||||
echo ""
|
||||
echo ""
|
||||
echo ""
|
||||
echo ""
|
||||
echo ""
|
||||
echo ""
|
||||
echo ""
|
||||
echo ""
|
||||
echo ""
|
||||
echo ""
|
||||
echo ""
|
||||
|
||||
|
||||
echo "Wating 1 sec. before mounting file systems..."
|
||||
sleep 1
|
||||
@@ -30,8 +65,8 @@ echo "Mounting SD card to /sdcard"
|
||||
/bin/mount -t vfat /dev/block/mmcblk0p1 /sdcard
|
||||
[ $? -eq 0 ] || fail "Failed to Mount SD Card"
|
||||
|
||||
echo "Dumping kernel log."
|
||||
dmesg > /sdcard/ANDROID/kernel.log
|
||||
#echo "Dumping kernel log."
|
||||
#dmesg > /sdcard/ANDROID/kernel.log
|
||||
|
||||
echo "Mapping file 'data.img' to 'loop' device /dev/loop0"
|
||||
/bin/losetup /dev/block/loop0 /sdcard/ANDROID/data.img
|
||||
@@ -67,11 +102,13 @@ fi
|
||||
#/bin/losetup /dev/block/loop2 /sdcard/ANDROID/extram.img
|
||||
#[ $? -eq 0 ] && /bin/swapon /dev/block/loop2
|
||||
|
||||
#if [ -e /sdcard/ANDROID/userscript.sh ] ; then
|
||||
# cp /sdcard/ANDROID/userscript.sh /data
|
||||
# /bin/chmod 777 /data/userscript.sh
|
||||
# /data/userscript.sh
|
||||
#fi
|
||||
if [ -e /sdcard/ANDROID/userscript.sh ] ; then
|
||||
cp /sdcard/ANDROID/userscript.sh /data
|
||||
/bin/chmod 777 /data/userscript.sh
|
||||
/data/userscript.sh
|
||||
fi
|
||||
|
||||
#ls /sys/class/timed_output/
|
||||
|
||||
#exec /bin/sh
|
||||
exec /init_1
|
||||
|
||||
@@ -251,7 +251,9 @@ on boot
|
||||
chmod 0777 /sys/power/wake_unlock
|
||||
|
||||
|
||||
chown system system /sys/class/timed_output/vibrator/enable
|
||||
chown system system /sys/class/timed_output/vibrator/enable
|
||||
chown system system /sys/class/timed_output/flash/enable
|
||||
|
||||
chown system system /sys/class/leds/keyboard-backlight/brightness
|
||||
chown system system /sys/class/leds/lcd-backlight/brightness
|
||||
chown system system /sys/class/leds/button-backlight/brightness
|
||||
|
||||
@@ -21,7 +21,7 @@ echo ""
|
||||
echo " *~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*"
|
||||
echo " * *"
|
||||
echo " * Ramdisk for Toshiba G900 from Angell Fear *"
|
||||
echo " * *"
|
||||
echo " * LINUX SUPPORT *"
|
||||
echo " *~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*"
|
||||
echo ""
|
||||
echo ""
|
||||
|
||||
Reference in New Issue
Block a user