From 511b111543524704f6182b374e489f5d0e51db8c Mon Sep 17 00:00:00 2001 From: huangcm <1263938474@qq.com> Date: Fri, 11 Apr 2025 08:00:37 +0000 Subject: [PATCH] fix(battery): fix suspend err & add usb en --- longan/device/config/chips/a133/configs/c3/kickpi-k5c.dts | 8 ++++---- longan/brandy/brandy-2.0/u-boot-2018/board/sunxi/power_manage.c | 13 ++++++++++--- longan/kernel/linux-4.9/kernel/printk/printk.c | 3 ++- 3 files changed, 16 insertions(+), 8 deletions(-) diff --git a/longan/brandy/brandy-2.0/u-boot-2018/board/sunxi/power_manage.c b/longan/brandy/brandy-2.0/u-boot-2018/board/sunxi/power_manage.c index 23ba577..da87f35 100644 --- a/longan/brandy/brandy-2.0/u-boot-2018/board/sunxi/power_manage.c +++ b/longan/brandy/brandy-2.0/u-boot-2018/board/sunxi/power_manage.c @@ -454,6 +454,7 @@ char bootreason[16] = {0}; int ret = 0, bat_exist = 0; int dcin_exist = pmu_get_reg_value(AXP81X_STATUS); + int sys_mode = 0; ret = script_parser_fetch(FDT_PATH_POWER_SPLY, "battery_exist", &bat_exist, 1); if (ret < 0) { @@ -470,7 +471,8 @@ val = gd->pmu_saved_status; #endif #endif - printf("kickpi pmu_get_sys_mode = %d\n", pmu_get_sys_mode()); + sys_mode = pmu_get_sys_mode(); + printf("kickpi pmu_get_sys_mode = %d\n", sys_mode); if ((val == -1) && (pmu_get_sys_mode() == SUNXI_CHARGING_FLAG)) { val = AXP_BOOT_SOURCE_CHARGER; pmu_set_sys_mode(0); @@ -478,11 +480,16 @@ if (bat_exist == 1) { /* When the battery exists, it can only be turned on by power key */ - if (pmu_axp707_get_poweron_source() != AXP_BOOT_SOURCE_BUTTON) { + if (pmu_axp707_get_poweron_source() != AXP_BOOT_SOURCE_BUTTON && + sys_mode != 66 ) { val = AXP_BOOT_SOURCE_CHARGER; - pmu_set_sys_mode(0); + pmu_set_sys_mode(66); printf("kickpi[bat_exist] not power key up when boot on \n"); } + + if (sys_mode == 66) { + pmu_set_sys_mode(0); + } } switch (val) { diff --git a/longan/device/config/chips/a133/configs/c3/kickpi-k5c.dts b/longan/device/config/chips/a133/configs/c3/kickpi-k5c.dts index 86f742f..5639763 100755 --- a/longan/device/config/chips/a133/configs/c3/kickpi-k5c.dts +++ b/longan/device/config/chips/a133/configs/c3/kickpi-k5c.dts @@ -1336,10 +1336,10 @@ pinctrl-names = "default"; status = "okay"; - sysled { - label = "sysled"; - gpios = <&r_pio PL 10 1 0 1 1>; - linux,default_trigger = "heartbeat"; + usb2_en { + label = "usb2_en"; + gpios = <&r_pio PL 10 1 0 1 0>; + linux,default_trigger = "default-on"; }; spk_en { diff --git a/longan/kernel/linux-4.9/kernel/printk/printk.c b/longan/kernel/linux-4.9/kernel/printk/printk.c index 21f3c10..c91f8e3 100644 --- a/longan/kernel/linux-4.9/kernel/printk/printk.c +++ b/longan/kernel/linux-4.9/kernel/printk/printk.c @@ -2151,12 +2151,13 @@ return __add_preferred_console(name, idx, options, NULL); } -bool console_suspend_enabled = true; +bool console_suspend_enabled = false; EXPORT_SYMBOL(console_suspend_enabled); static int __init console_suspend_disable(char *str) { console_suspend_enabled = false; + // console_suspend_enabled = true; return 1; } __setup("no_console_suspend", console_suspend_disable); -- Gitblit v1.6.2