20250211解决荣品的RK3566核心板在Android13下出现charge_extrem_low_power的问题

20250211解决荣品的RK3566核心板在Android13下出现charge_extrem_low_power的问题
2025/2/11 17:45


缘起:荣品的RK3566核心板在Android13下,出现charge_extrem_low_power之后就直接挂住了。
由于我司使用了CW2217这个电量计,没有使用核心板自带的RK809。【嫌弃RK809的精度不够。】
battery: 160
voltage_sys = 208
voltage_usb = 208
current_avg = -2
dsoc = 0
rsoc = 0
remain_cap = 0
fcc = 5000
qmax = 5100
NO_CHARGER
Enable charge animation display
charge_extrem_low_power: Not charging, online=0. Shutdown...
debug info:
CAL_OFFSET = 0x8014
current_avg = -2
k = 18, b = 20

battery: 160
voltage_sys = 208
voltage_usb = 208
current_avg = -2
dsoc = 0
rsoc = 0
remain_cap = 0
fcc = 5000
qmax = 5100


结果调试的时候,悲剧了,起不来了!
问荣品,说是要在DTS设备树中屏蔽掉RK809的部分即可。

Z:\Android13.0\kernel-5.10\arch\arm64\boot\dts\rockchip\rk356x\pro-rk3566.dts
Z:\Android13.0\kernel-5.10\arch\arm64\boot\dts\rockchip00\rk356x\pro-rk3566.dts


    charge-animation {
        compatible = "rockchip,uboot-charge";
        rockchip,uboot-charge-on = <0>;
        rockchip,android-charge-on = <0>;
        rockchip,uboot-low-power-voltage = <7000>;
        rockchip,screen-on-voltage = <7000>;
        status = "okay";
    };
修改为:
    charge-animation {

        compatible = "rockchip,uboot-charge";
        rockchip,uboot-charge-on = <0>;
        rockchip,android-charge-on = <0>;
        rockchip,uboot-low-power-voltage = <7000>;
        rockchip,screen-on-voltage = <7000>;
        status = "disabled";
    };


&rk809 {
    battery {
                compatible = "rk817,battery";
                pinctrl-names = "default";
                pinctrl-0 = <&rp_bat_pins>;

                ocv_table = < 7024 7072 7080 7096 7104 7112 7120
                              7136 7152 7168 7184 7224 7264 7320
                              7392 7512 7612 7724 7828 7928 8100>;

                design_capacity = <5000>;
                design_qmax = <5100>;
                bat_res = <100>;
                sleep_enter_current = <300>;
                sleep_exit_current = <300>;
                sleep_filter_current = <100>;
                power_off_thresd = <7024>;
                zero_algorithm_vol = <7400>;
                max_soc_offset = <60>;
                monitor_sec = <5>;
        
                sample_res = <20>;
                bat_res_up = <140>;
                bat_res_down = <20>;
                
                virtual_power = <0>;    //test mode, 1 to force report 66%
                energy_mode = <0>;
                register_chg_psy = <1>;    //rk817 report charge state
                
                plug-det-gpio = <&gpio0 RK_PC7 GPIO_ACTIVE_LOW>;   //rpdzkj add for detect charge state, need register_chg_psy = 1, active state is plugin.
                full-det-gpio = <&gpio0 RK_PC5 GPIO_ACTIVE_HIGH>;      //rpdzkj add for detect charge status whether is full.
        };
};

修改为:
&rk809 {
//    battery {
//                compatible = "rk817,battery";
//                pinctrl-names = "default";
//                pinctrl-0 = <&rp_bat_pins>;
//
//                ocv_table = < 7024 7072 7080 7096 7104 7112 7120
//                              7136 7152 7168 7184 7224 7264 7320
//                              7392 7512 7612 7724 7828 7928 8100>;

//                design_capacity = <5000>;
//                design_qmax = <5100>;
//                bat_res = <100>;
//                sleep_enter_current = <300>;
//                sleep_exit_current = <300>;
//                sleep_filter_current = <100>;
//                power_off_thresd = <7024>;
//                zero_algorithm_vol = <7400>;
//                max_soc_offset = <60>;
//                monitor_sec = <5>;
//        
//                sample_res = <20>;
//                bat_res_up = <140>;
//                bat_res_down = <20>;
//                
//                virtual_power = <0>;    //test mode, 1 to force report 66%
//                energy_mode = <0>;
//                register_chg_psy = <1>;    //rk817 report charge state
//                
//                plug-det-gpio = <&gpio0 RK_PC7 GPIO_ACTIVE_LOW>;   //rpdzkj add for detect charge state, need register_chg_psy = 1, active state is plugin.
//                full-det-gpio = <&gpio0 RK_PC5 GPIO_ACTIVE_HIGH>;      //rpdzkj add for detect charge status whether is full.
//        };
};


参考资料:
百度:RK809 电量计 充电指示

https://blog.csdn.net/wsen2012/article/details/139337998
1、关掉电池检测
理由
之所以要关闭充电检测是因为我用RP-PRO-3566核芯板做了一个自己的底板,但充电电路这块又没有抄全,导至整个板子无法启动。打印信息提示是没有足够的电源,然后直接关机了。

有效操作
1、找到主设备树。如下图关闭电池检测即可。


https://m.elecfans.com/article/2092347.html
https://blog.csdn.net/Industio_CSDN/article/details/130921874
【深圳触觉智能技术分享】RK3568 RK809电量计电池调试
 
/{
    charger_det: charger {
        compatible = "gpio-charger";
        charger-type = "mains";
        gpios = <&gpio1 RK_PD1 GPIO_ACTIVE_LOW>;
        status = "okay";
    };
 
    test-power {
        status = "disabled";
    };
};
 
&rk809 {
        battery {
            status = "okay";
            compatible = "rk817,battery";
            ocv_table = <7000 7250 7370 7384 7436 7470 7496
                7520 7548 7576 7604 7632 7668 7706
                7754 7816 7892 7950 8036 8142 8212>;/*开路电压,是第一次接电池开机、长时间关机后再开机、长时间休眠后校正库仑计的依据,
                                                    0%~100%的电量细分成 21 个点,步进 5%电量*/
            design_capacity = <1500>;       //实际电池容量,单位:mah
            design_qmax = <1500>;           //最大容量值
            design_max_voltage = <8400>;      //最大电压
            bat_res = <180>;                //电池内阻
            sleep_enter_current = <300>;    //进入松弛模式的条件之一
            sleep_exit_current = <300>;     //退出松弛模式的条件之一
            sleep_filter_current = <100>;   //过滤无效的松弛电流。
            power_off_thresd = <7000>;      //期待的系统关机电压,单位:mV
            zero_algorithm_vol = <7700>;    //进入电压+库仑计放电模式的电压值
            max_soc_offset = <60>;          //开机校正时允许的最大电量误差。
            monitor_sec = <5>;              //轮询时间 单位秒
            sample_res = <10>;              //电池端附近的采样电阻大小
            energy_mode = <1>;              //该值为 1 时表示尽可能采取将电池电量放完的方式,为 0 时表示尽量考虑曲线平滑的合理性
            fb_temperature = <105>;         //芯片热保护温度阈值
            virtual_power = <0>;            //假电池模式(测试模式)
            bat_res_up = <140>;             //BATDIV上拉分压电阻
            bat_res_down = <20>;                        //BATDIV下拉分压电阻
            register_chg_psy = <0>;         //是否通过RK809上报充电状态
            external_chg_psy = <1>;                    //配置外部DC检测上报充电状态
        };
};

电池调试
驱动文件路径为:kernel/drivers/power/supply/rk817_battery.c
系统启动后可从 /sys/class/power_supply/battery/uevent 节点获取电池状态信息。

支持应用层配置驱动调试信息的输出,配置方法如下:

#开启打印信息
echo 1 > /sys/module/rk817_battery/parameters/dbg_level
#关闭打印信息
echo 0 > /sys/module/rk817_battery/parameters/dbg_level
开启后详细的电池数据将会输出至调试串口,内容如下:


完整的LOG:
console:/ $ 
console:/ $ 
console:/ $ su
console:/ # 
console:/ # 
console:/ # 
console:/ # [ 3187.519017][  T176] type=1400 audit(1739262997.296:567): avc: denied { execute } for comm="sh" name="toybox" dev="dm-0" ino=1722 scontext=u:r:autosync:s0 tcontext=u:object_r:toolbox_exec:s0 tclass=file permissive=1
[ 3187.519249][  T176] type=1400 audit(1739262997.296:568): avc: denied { getattr } for comm="sh" path="/system/bin/toybox" dev="dm-0" ino=1722 scontext=u:r:autosync:s0 tcontext=u:object_r:toolbox_exec:s0 tclass=file permissive=1
[ 3187.520535][  T176] type=1400 audit(1739262997.300:569): avc: denied { read open } for comm="sh" path="/system/bin/toybox" dev="dm-0" ino=1722 scontext=u:r:autosync:s0 tcontext=u:object_r:toolbox_exec:s0 tclass=file permissive=1
[ 3187.520845][  T176] type=1400 audit(1739262997.300:570): avc: denied { execute_no_trans } for comm="sh" path="/system/bin/toybox" dev="dm-0" ino=1722 scontext=u:r:autosync:s0 tcontext=u:object_r:toolbox_exec:s0 tclass=file permissive=1
[ 3187.521291][  T176] type=1400 audit(1739262997.300:571): avc: denied { map } for comm="sync" path="/system/bin/toybox" dev="dm-0" ino=1722 scontext=u:r:autosync:s0 tcontext=u:object_r:toolbox_exec:s0 tclass=file permissive=1
[ 3189.646808][  T176] type=1400 audit(1739262999.423:572): avc: denied { use } for comm="binder:283_2" path="socket:[151436]" dev="sockfs" ino=151436 scontext=u:r:netd:s0 tcontext=u:r:getagpsdata:s0 tclass=fd permissive=1
[ 3191.816419][  T176] type=1400 audit(1739263001.593:573): avc: denied { read } for comm="Thread-17" name="status" dev="proc" ino=4026532769 scontext=u:r:system_server:s0 tcontext=u:object_r:proc:s0 tclass=file permissive=1
[ 3191.817152][  T176] type=1400 audit(1739263001.593:574): avc: denied { open } for comm="Thread-17" path="/proc/adckey/status" dev="proc" ino=4026532769 scontext=u:r:system_server:s0 tcontext=u:object_r:proc:s0 tclass=file permissive=1
[ 3191.817542][  T176] type=1400 audit(1739263001.593:575): avc: denied { getattr } for comm="Thread-17" path="/proc/adckey/status" dev="proc" ino=4026532769 scontext=u:r:system_server:s0 tcontext=u:object_r:proc:s0 tclass=file permissive=1
[ 3213.808574][  T143] init: Received sys.powerctl='reboot,loader' from pid: 7708 (/system/bin/reboot)
[ 3213.808662][  T143] init: sys.powerctl: do_shutdown: 0 IsShuttingDown: 0
[ 3213.808918][    T1] init: Got shutdown_command 'reboot,loader' Calling HandlePowerctlMessage()
[ 3213.808980][    T1] init: Clear action queue and start shutdown trigger
[ 3213.809101][    T1] init: Entering shutdown mode
[ 3213.809317][    T1] init: processing action (shutdown_done) from (<Builtin Action>:0)
[ 3213.809386][    T1] init: Reboot start, reason: reboot,loader, reboot_target: loader
[ 3213.809444][    T1] init: Shutdown timeout: 6000 ms
[ 3213.809475][    T1] init: Create reboot monitor thread.
[ 3213.810069][ T7710] init: shutdown_timeout_timespec.tv_sec: 3517
[ 3213.878261][ T7711] watchdogd: watchdogd started (interval 10, margin 20)!
I/TA: Goodbye Rockchip Weaver!
I/TA: Goodbye Rockchip gatekeeper!
[ 3214.005996][  T176] type=1400 audit(1739263023.783:576): avc: denied { unlink } for comm="init" name="camera_tool" dev="tmpfs" ino=645 scontext=u:r:init:s0 tcontext=u:object_r:socket_device:s0 tclass=sock_file permissive=1
[ 3214.071114][ T6989] binder: release 326:348 transaction 4836 in, still active
[ 3214.071154][ T6989] binder: send failed reply for transaction 4836 to 507:585
I/TA: Goodbye Rockchip Keymaster!
[ 3214.503489][  T144] printk: init: 16 output lines suppressed due to ratelimiting
[ 3214.557087][  T179] binder_alloc: 507: binder_alloc_buf, no vma
[ 3214.557126][  T179] binder: 179:179 transaction failed 29189/-3, size 100-0 line 3346
[ 3214.690240][ T7718] android_work: sent uevent USB_STATE=DISCONNECTED
[ 3214.711694][  T175] printk: logd.klogd: 192 output lines suppressed due to ratelimiting
[ 3214.753895][ T7713] binder: undelivered TRANSACTION_ERROR: 29189
[ 3214.754233][ T7713] binder: undelivered death notification, b400007c6b9c9640
[ 3215.061474][    T1] [dhd] dhd_reboot_callback: code = 1
[ 3215.061588][    T1] [dhd] dhd_module_cleanup: Enter
[ 3215.061706][    T1] [dhd] sdioh_remove: Enter
[ 3215.063174][    T1] [dhd] dhdsdio_disconnect : no mutex held
[ 3215.063192][    T1] [dhd] dhdsdio_disconnect : set mutex lock
[ 3215.063208][    T1] [dhd] dhd_detach: making dhdpub up FALSE
[ 3215.063223][    T1] [dhd] bcmsdh_oob_intr_unregister: Enter
[ 3215.063232][    T1] [dhd] bcmsdh_oob_intr_unregister: irq is not registered
[ 3215.063242][    T1] [dhd] dhd_wlfc_deinit():3894, Already disabled!
[ 3215.160627][    T1] [dhd] dhd_detach(): thread:dhd_watchdog_thread:19f wait for terminate
[ 3215.160717][    T1] [dhd] dhd_detach(): thread:dhd_watchdog_thread:19f terminated OK
[ 3215.160788][    T1] [dhd] dhd_detach(): thread:dhd_rxf:1a1 wait for terminate
[ 3215.160821][    T1] [dhd] dhd_detach(): thread:dhd_rxf:1a1 terminated OK
[ 3215.160899][  T416] [dhd] dhd_dpc_thread: Unexpected up_cnt 0
[ 3215.161645][    T1] [dhd] dhd_detach(): thread:dhd_dpc:1a0 wait for terminate
[ 3215.161689][    T1] [dhd] dhd_detach(): thread:dhd_dpc:1a0 terminated OK
[ 3215.190817][    T1] [dhd] CFG80211-ERROR) wl_cfg80211_clear_per_bss_ies : netinfo or netinfo->wdev is NULL
[ 3215.253977][    T1] [dhd] dhd_tcpack_suppress_set: TCP ACK Suppress mode 2 -> mode 0
[ 3215.254074][    T1] [dhd] dhd_tcpack_suppress_set: TCPACK_INFO_MAXNUM=40, TCPDATA_INFO_MAXNUM=40
[ 3215.254278][    T1] [dhd] STATIC-MSG) dhd_wlan_mem_prealloc : section 7, size 0
[ 3215.254340][    T1] [dhd] dhdsdio_disconnect : mutex is released.
[ 3215.255881][    T1] [dhd] unregister wifi platform drivers
[ 3215.255935][    T1] [dhd] wifi_platform_bus_enumerate device present 0
[ 3215.255968][    T1] [dhd] ======== Card detection to remove SDIO card! ========
[ 3215.255996][    T1] [dhd] dhd_wlan_deinit_gpio: gpio_free(WL_HOST_WAKE 0)
[ 3215.256046][    T1] [dhd] STATIC-MSG) dhd_static_buf_exit : Enter
[ 3215.256391][    T1] [dhd] dhd_module_cleanup: Exit
[ 3215.258130][    T1] rk808 0-0020: reboot: not restore POWER_EN
[ 3215.259286][    T1] rk808 0-0020: reboot: force RK817_RST_FUNC_REG ok!
[ 3215.563616][    T1] rockchip-vop2 fe040000.vop: [drm:vop2_crtc_atomic_disable] Crtc atomic disable vp1
[ 3215.600900][    T1] mpp_rkvdec2 fdf80200.rkvdec: shutdown device
[ 3215.606949][    T1] mpp_rkvdec2 fdf80200.rkvdec: shutdown success
[ 3215.613076][    T1] mpp_rkvenc fdf40000.rkvenc: shutdown device
[ 3215.619025][    T1] mpp_rkvenc fdf40000.rkvenc: shutdown success
[ 3215.645841][    T1] fan53555-regulator 0-001c: fan53555..... reset
[ 3215.653168][    T1] fan53555-regulator 0-001c: reset: force fan53555_reset ok!
[ 3215.670475][    T1] [WLAN_RFKILL]: Enter rfkill_wlan_shutdown
[ 3215.676270][    T1] [WLAN_RFKILL]: rockchip_wifi_power: 0
[ 3215.681696][    T1] [WLAN_RFKILL]: rockchip_wifi_power: toggle = false
[ 3215.688244][    T1] [WLAN_RFKILL]: wifi shut off power [GPIO-1-1]
[ 3215.694364][    T1] [WLAN_RFKILL]: rfkill_set_wifi_bt_power: 0
[ 3215.700977][    T1] rkisp_hw fdff0000.rkisp: rkisp_hw_shutdown
[ 3215.706976][    T1] mpp-iep2 fdef0000.iep: shutdown device
[ 3215.712491][    T1] mpp-iep2 fdef0000.iep: shutdown success
[ 3215.718129][    T1] mpp_vepu2 fdee0000.vepu: shutdown device
[ 3215.723822][    T1] mpp_vepu2 fdee0000.vepu: shutdown success
[ 3215.729637][    T1] mpp_jpgdec fded0000.jpegd: shutdown device
[ 3215.735498][    T1] mpp_jpgdec fded0000.jpegd: shutdown success
[ 3215.741486][    T1] mpp_vdpu2 fdea0400.vdpu: shutdown device
[ 3215.747167][    T1] mpp_vdpu2 fdea0400.vdpu: shutdown success
[ 3215.753332][    T1] xhci-hcd xhci-hcd.0.auto: remove, state 4
[ 3215.759119][    T1] usb usb6: USB disconnect, device number 1
[ 3215.766221][    T1] xhci-hcd xhci-hcd.0.auto: USB bus 6 deregistered
[ 3215.773074][    T1] xhci-hcd xhci-hcd.0.auto: remove, state 4
[ 3215.778896][    T1] usb usb5: USB disconnect, device number 1
[ 3215.786104][    T1] xhci-hcd xhci-hcd.0.auto: USB bus 5 deregistered
[ 3215.800986][    T1] reboot: Restarting system with command 'loader'
DDR V1.18 f366f69a7d typ 23/07/17-15:48:58
ln
LP4/4x derate en, other dram:1x trefi
SRX
ddrconfig:7
LP4 MR14:0x4d
LPDDR4, 324MHz
BW=32 Col=10 Bk=8 CS0 Row=16 CS1 Row=16 CS=2 Die BW=16 Size=4096MB
tdqss: cs0 dqs0: 72ps, dqs1: -24ps, dqs2: 24ps, dqs3: -48ps, 
tdqss: cs1 dqs0: 72ps, dqs1: -24ps, dqs2: 24ps, dqs3: -48ps, 

change to: 324MHz
clk skew:0x60

change to: 528MHz
clk skew:0x58

change to: 780MHz
clk skew:0x58

change to: 1056MHz(final freq)
PHY drv:clk:38,ca:38,DQ:30,odt:60
vrefinner:16%, vrefout:29%
dram drv:40,odt:80
vref_ca:00000068
clk skew:0x25
cs 0:
the read training result:
DQS0:0x40, DQS1:0x41, DQS2:0x40, DQS3:0x42, 
min  : 0x7  0x5  0x4  0x5  0x5  0x4  0x3  0x1 , 0x1  0x5  0xa  0x5  0x2  0x5  0x7  0x3 ,
       0x4  0x3  0x4  0x2  0x1  0x2  0x5  0x1 , 0x8  0x3  0x5  0x3  0x3  0x6  0x9  0x1 ,
mid  :0x27 0x25 0x25 0x25 0x25 0x25 0x23 0x23 ,0x24 0x27 0x29 0x26 0x23 0x27 0x29 0x25 ,
      0x25 0x25 0x25 0x24 0x23 0x24 0x26 0x23 ,0x29 0x26 0x27 0x25 0x26 0x27 0x2b 0x24 ,
max  :0x48 0x46 0x47 0x46 0x46 0x46 0x44 0x45 ,0x47 0x49 0x48 0x47 0x44 0x4a 0x4c 0x47 ,
      0x47 0x47 0x46 0x46 0x46 0x47 0x47 0x46 ,0x4b 0x49 0x4a 0x47 0x49 0x48 0x4d 0x47 ,
range:0x41 0x41 0x43 0x41 0x41 0x42 0x41 0x44 ,0x46 0x44 0x3e 0x42 0x42 0x45 0x45 0x44 ,
      0x43 0x44 0x42 0x44 0x45 0x45 0x42 0x45 ,0x43 0x46 0x45 0x44 0x46 0x42 0x44 0x46 ,
the write training result:
DQS0:0x2e, DQS1:0x22, DQS2:0x28, DQS3:0x1f, 
min  :0x56 0x56 0x56 0x56 0x55 0x54 0x53 0x56 0x56 ,0x49 0x4b 0x4e 0x4b 0x4a 0x4d 0x4d 0x4b 0x4b ,
      0x4f 0x4f 0x4f 0x4e 0x4d 0x4e 0x4f 0x4f 0x4e ,0x48 0x47 0x47 0x47 0x47 0x48 0x49 0x48 0x47 ,
mid  :0x71 0x71 0x71 0x71 0x70 0x70 0x6e 0x70 0x70 ,0x65 0x64 0x69 0x66 0x62 0x67 0x67 0x66 0x64 ,
      0x6b 0x6b 0x6b 0x6a 0x68 0x6a 0x6a 0x69 0x6a ,0x64 0x60 0x61 0x61 0x60 0x62 0x65 0x61 0x61 ,
max  :0x8d 0x8c 0x8d 0x8d 0x8b 0x8c 0x8a 0x8a 0x8b ,0x81 0x7d 0x84 0x82 0x7b 0x81 0x81 0x81 0x7d ,
      0x88 0x87 0x87 0x87 0x84 0x86 0x85 0x84 0x87 ,0x80 0x7a 0x7b 0x7b 0x7a 0x7c 0x81 0x7a 0x7b ,
range:0x37 0x36 0x37 0x37 0x36 0x38 0x37 0x34 0x35 ,0x38 0x32 0x36 0x37 0x31 0x34 0x34 0x36 0x32 ,
      0x39 0x38 0x38 0x39 0x37 0x38 0x36 0x35 0x39 ,0x38 0x33 0x34 0x34 0x33 0x34 0x38 0x32 0x34 ,
cs 1:
the read training result:
DQS0:0x41, DQS1:0x43, DQS2:0x41, DQS3:0x43, 
min  : 0x7  0x5  0x5  0x5  0x6  0x5  0x4  0x2 , 0x2  0x5  0xb  0x5  0x2  0x6  0x8  0x5 ,
       0x4  0x4  0x3  0x2  0x2  0x3  0x4  0x2 , 0x7  0x4  0x5  0x2  0x3  0x4  0x7  0x1 ,
mid  :0x28 0x26 0x26 0x26 0x26 0x26 0x25 0x24 ,0x24 0x27 0x2a 0x26 0x24 0x28 0x2a 0x26 ,
      0x26 0x26 0x25 0x23 0x24 0x25 0x26 0x24 ,0x2a 0x26 0x28 0x25 0x26 0x27 0x2a 0x23 ,
max  :0x49 0x47 0x48 0x47 0x47 0x47 0x46 0x46 ,0x47 0x4a 0x49 0x47 0x46 0x4b 0x4c 0x47 ,
      0x49 0x49 0x48 0x45 0x46 0x48 0x49 0x46 ,0x4d 0x48 0x4b 0x48 0x4a 0x4a 0x4e 0x46 ,
range:0x42 0x42 0x43 0x42 0x41 0x42 0x42 0x44 ,0x45 0x45 0x3e 0x42 0x44 0x45 0x44 0x42 ,
      0x45 0x45 0x45 0x43 0x44 0x45 0x45 0x44 ,0x46 0x44 0x46 0x46 0x47 0x46 0x47 0x45 ,
the write training result:
DQS0:0x2e, DQS1:0x22, DQS2:0x28, DQS3:0x1f, 
min  :0x55 0x56 0x56 0x56 0x54 0x54 0x52 0x55 0x55 ,0x48 0x4a 0x4d 0x4a 0x48 0x4c 0x4d 0x4b 0x4b ,
      0x4e 0x4e 0x4e 0x4e 0x4d 0x4e 0x4e 0x4e 0x4e ,0x47 0x45 0x45 0x45 0x45 0x46 0x48 0x46 0x46 ,
mid  :0x71 0x71 0x71 0x72 0x6f 0x70 0x6d 0x6f 0x70 ,0x65 0x64 0x69 0x66 0x61 0x66 0x66 0x66 0x65 ,
      0x6b 0x6a 0x6a 0x6a 0x69 0x6a 0x69 0x69 0x6a ,0x63 0x5f 0x5f 0x5f 0x5f 0x61 0x64 0x60 0x60 ,
max  :0x8e 0x8c 0x8d 0x8e 0x8b 0x8c 0x89 0x8a 0x8b ,0x82 0x7e 0x85 0x82 0x7b 0x81 0x80 0x81 0x80 ,
      0x89 0x87 0x87 0x87 0x85 0x86 0x85 0x85 0x87 ,0x80 0x7a 0x7a 0x7a 0x7a 0x7c 0x80 0x7a 0x7a ,
range:0x39 0x36 0x37 0x38 0x37 0x38 0x37 0x35 0x36 ,0x3a 0x34 0x38 0x38 0x33 0x35 0x33 0x36 0x35 ,
      0x3b 0x39 0x39 0x39 0x38 0x38 0x37 0x37 0x39 ,0x39 0x35 0x35 0x35 0x35 0x36 0x38 0x34 0x34 ,
CA Training result:
cs:0 min  :0x4e 0x4f 0x45 0x42 0x44 0x43 0x4a ,0x4d 0x4a 0x42 0x40 0x42 0x40 0x45 ,
cs:0 mid  :0x8e 0x8e 0x84 0x81 0x84 0x82 0x7a ,0x8c 0x88 0x81 0x7f 0x81 0x7f 0x73 ,
cs:0 max  :0xce 0xcd 0xc4 0xc1 0xc4 0xc1 0xaa ,0xcc 0xc7 0xc1 0xbf 0xc0 0xbe 0xa2 ,
cs:0 range:0x80 0x7e 0x7f 0x7f 0x80 0x7e 0x60 ,0x7f 0x7d 0x7f 0x7f 0x7e 0x7e 0x5d ,
cs:1 min  :0x4e 0x4f 0x45 0x43 0x46 0x41 0x48 ,0x4f 0x4c 0x43 0x42 0x42 0x40 0x42 ,
cs:1 mid  :0x8d 0x8e 0x84 0x82 0x85 0x81 0x7a ,0x8e 0x8a 0x83 0x81 0x81 0x7f 0x74 ,
cs:1 max  :0xcd 0xce 0xc4 0xc2 0xc5 0xc1 0xad ,0xce 0xc9 0xc3 0xc0 0xc1 0xbf 0xa6 ,
cs:1 range:0x7f 0x7f 0x7f 0x7f 0x7f 0x80 0x65 ,0x7f 0x7d 0x80 0x7e 0x7f 0x7f 0x64 ,
out
U-Boot SPL board init
U-Boot SPL 2017.09-gaaca6ffec1-211203 #zzz (Dec 03 2021 - 18:42:16)
unknown raw ID phN
unrecognized JEDEC id bytes: 00, 00, 00
Trying to boot from MMC2
MMC error: The cmd index is 1, ret is -110
Card did not respond to voltage select!
mmc_init: -95, time 16
spl: mmc init failed with error: -95
Trying to boot from MMC1
SPL: A/B-slot: _a, successful: 0, tries-remain: 7
Trying fit image at 0x4000 sector
## Verified-boot: 0
## Checking atf-1 0x00040000 ... sha256(0d5225a4ab...) + OK
## Checking uboot 0x00a00000 ... sha256(50848881a3...) + OK
## Checking fdt 0x00b457c0 ... sha256(036cca5880...) + OK
## Checking atf-2 0xfdcc1000 ... sha256(3e94d16e6a...) + OK
## Checking atf-3 0x0006b000 ... sha256(fde0ef262b...) + OK
## Checking atf-4 0xfdcce000 ... sha256(c9eb312bf2...) + OK
## Checking atf-5 0xfdcd0000 ... sha256(befba422b8...) + OK
## Checking atf-6 0x00069000 ... sha256(6ede7a3b44...) + OK
## Checking optee 0x08400000 ... sha256(6c92ef6a0e...) + OK
Jumping to U-Boot(0x00a00000) via ARM Trusted Firmware(0x00040000)
Total: 321.22 ms

INFO:    Preloader serial: 2
NOTICE:  BL31: v2.3():v2.3-607-gbf602aff1:cl
NOTICE:  BL31: Built : 10:16:03, Jun  5 2023
INFO:    GICv3 without legacy support detected.
INFO:    ARM GICv3 driver initialized in EL3
INFO:    pmu v1 is valid 220114
INFO:    dfs DDR fsp_param[0].freq_mhz= 1056MHz
INFO:    dfs DDR fsp_param[1].freq_mhz= 324MHz
INFO:    dfs DDR fsp_param[2].freq_mhz= 528MHz
INFO:    dfs DDR fsp_param[3].freq_mhz= 780MHz
INFO:    Using opteed sec cpu_context!
INFO:    boot cpu mask: 0
INFO:    BL31: Initializing runtime services
INFO:    BL31: Initializing BL32
I/TC: 
I/TC: OP-TEE version: 3.13.0-743-gb5340fd65 #hisping.lin (gcc version 10.2.1 20201103 (GNU Toolchain for the A-profile Architecture 10.2-2020.11 (arm-10.16))) #5 Mon Aug 28 15:15:17 CST 2023 aarch64
I/TC: Primary CPU initializing
E/TC:0 0 hal_algo_version_init:296 CRYPTO_CRYPTO_VERSION_NEW no support. Skip all algo mode check.
I/TC: Primary CPU switching to normal world boot
INFO:    BL31: Preparing for EL3 exit to normal world
INFO:    Entry point address = 0xa00000
INFO:    SPSR = 0x3c9


U-Boot 2017.09 (Feb 11 2025 - 09:44:41 +0800)

Model: Rockchip RK3568 Evaluation Board
MPIDR: 0x81000000
PreSerial: 2, raw, 0xfe660000
DRAM:  4 GiB
Sysmem: init
Relocation Offset: ed21a000
Relocation fdt: eb9f94a8 - eb9fece8
CR: M/C/I
Using default environment

optee api revision: 2.0
dwmmc@fe2b0000: 1, dwmmc@fe2c0000: 2, sdhci@fe310000: 0
Bootdev(atags): mmc 0
MMC0: HS200, 200Mhz
PartType: EFI
DM: v1
Android 13.0, Build 2023.8, v2
boot mode: loader
RESC: 'boot', blk@0x0001da70
Device is: UNLOCKED
DTB: rk-kernel.dtb
HASH(c): OK
ANDROID: fdt overlay OK
I2c0 speed: 100000Hz
PMIC:  RK8090 (on=0x40, off=0x00)
vdd_logic init 950000 uV
vdd_gpu init 900000 uV
vdd_npu init 900000 uV
vsel-gpios- not found! Error: -2
vdd_cpu init 1000000 uV
io-domain: OK
INFO:    ddr dmc_fsp already initialized in loader.
Model: pro-rk3566
MPIDR: 0x81000000
ethaddr = 02:2a:b6:1b:a5:37
eth1addr = 66:f8:d5:b6:ac:cc
eth2addr = 6a:ac:db:99:cd:b2
eth3addr = 52:b5:6a:b3:65:a0
Rockchip UBOOT DRM driver version: v1.0.1
VOP have 1 active VP
vp0 have layer nr:0[], primary plane: 0
vp1 have layer nr:6[0 2 4 1 3 5 ], primary plane: 4
vp2 have layer nr:0[], primary plane: 0
disp info 2, type:16, id:0
base2_disp_info couldn't be found, screen_info type[0] or id[0] mismatched
Using display timing dts
dsi@fe060000:  detailed mode clock 161000 kHz, flags[a]
    H: 1200 1231 1251 1265
    V: 1920 2135 2141 2341
bus_format: 100e
VOP update mode to: 1200x1920p54, type: MIPI0 for VP1
VP1 set crtc_clock to 161000KHz
VOP VP1 enable Smart0[270x654->270x654@465x633] fmt[1] addr[0xedf82000]
final DSI-Link bandwidth: 996 Mbps x 4
unsupport command data type: 48
failed to send on cmds: -22
enter Rockusb!
RKUSB: LUN 0, dev 0, hwpart 0, sector 0x0, count 0x39ef6c0
|DDR V1.18 f366f69a7d typ 23/07/17-15:48:58
ln
LP4/4x derate en, other dram:1x trefi
SRX
ddrconfig:7
LP4 MR14:0x4d
LPDDR4, 324MHz
BW=32 Col=10 Bk=8 CS0 Row=16 CS1 Row=16 CS=2 Die BW=16 Size=4096MB
tdqss: cs0 dqs0: 72ps, dqs1: -24ps, dqs2: 24ps, dqs3: -48ps, 
tdqss: cs1 dqs0: 72ps, dqs1: -24ps, dqs2: 24ps, dqs3: -48ps, 

change to: 324MHz
clk skew:0x60

change to: 528MHz
clk skew:0x58

change to: 780MHz
clk skew:0x58

change to: 1056MHz(final freq)
PHY drv:clk:38,ca:38,DQ:30,odt:60
vrefinner:16%, vrefout:29%
dram drv:40,odt:80
vref_ca:00000068
clk skew:0x25
cs 0:
the read training result:
DQS0:0x40, DQS1:0x41, DQS2:0x40, DQS3:0x42, 
min  : 0x8  0x5  0x4  0x5  0x5  0x4  0x3  0x2 , 0x1  0x5  0xa  0x5  0x1  0x5  0x7  0x3 ,
       0x4  0x4  0x4  0x2  0x1  0x3  0x5  0x1 , 0x8  0x3  0x5  0x3  0x4  0x6  0x9  0x1 ,
mid  :0x28 0x25 0x25 0x25 0x25 0x25 0x23 0x23 ,0x24 0x27 0x29 0x26 0x22 0x27 0x29 0x25 ,
      0x26 0x25 0x25 0x24 0x23 0x25 0x26 0x23 ,0x29 0x26 0x27 0x25 0x26 0x27 0x2b 0x24 ,
max  :0x48 0x46 0x46 0x46 0x46 0x46 0x44 0x45 ,0x47 0x49 0x48 0x47 0x44 0x4a 0x4c 0x47 ,
      0x48 0x47 0x46 0x46 0x46 0x47 0x47 0x46 ,0x4b 0x49 0x4a 0x47 0x49 0x48 0x4d 0x47 ,
range:0x40 0x41 0x42 0x41 0x41 0x42 0x41 0x43 ,0x46 0x44 0x3e 0x42 0x43 0x45 0x45 0x44 ,
      0x44 0x43 0x42 0x44 0x45 0x44 0x42 0x45 ,0x43 0x46 0x45 0x44 0x45 0x42 0x44 0x46 ,
the write training result:
DQS0:0x2e, DQS1:0x22, DQS2:0x28, DQS3:0x1f, 
min  :0x56 0x56 0x56 0x56 0x55 0x54 0x53 0x56 0x56 ,0x49 0x4b 0x4e 0x4b 0x4a 0x4d 0x4d 0x4b 0x4b ,
      0x4f 0x4f 0x4f 0x4e 0x4d 0x4e 0x4f 0x4f 0x4e ,0x48 0x47 0x47 0x47 0x47 0x48 0x49 0x47 0x47 ,
mid  :0x71 0x71 0x71 0x71 0x70 0x70 0x6e 0x70 0x70 ,0x65 0x64 0x69 0x66 0x63 0x67 0x67 0x66 0x64 ,
      0x6b 0x6b 0x6b 0x6a 0x68 0x6a 0x6a 0x69 0x6a ,0x64 0x60 0x61 0x61 0x61 0x62 0x65 0x60 0x61 ,
max  :0x8d 0x8c 0x8d 0x8d 0x8b 0x8c 0x8a 0x8a 0x8b ,0x81 0x7d 0x84 0x82 0x7c 0x81 0x81 0x82 0x7d ,
      0x88 0x87 0x87 0x87 0x84 0x86 0x85 0x84 0x87 ,0x81 0x7a 0x7b 0x7b 0x7b 0x7c 0x81 0x7a 0x7b ,
range:0x37 0x36 0x37 0x37 0x36 0x38 0x37 0x34 0x35 ,0x38 0x32 0x36 0x37 0x32 0x34 0x34 0x37 0x32 ,
      0x39 0x38 0x38 0x39 0x37 0x38 0x36 0x35 0x39 ,0x39 0x33 0x34 0x34 0x34 0x34 0x38 0x33 0x34 ,
cs 1:
the read training result:
DQS0:0x41, DQS1:0x43, DQS2:0x41, DQS3:0x43, 
min  : 0x7  0x5  0x4  0x5  0x6  0x5  0x4  0x2 , 0x3  0x6  0xa  0x5  0x2  0x6  0x8  0x5 ,
       0x4  0x3  0x3  0x2  0x2  0x3  0x4  0x2 , 0x7  0x4  0x4  0x1  0x3  0x4  0x7  0x1 ,
mid  :0x27 0x26 0x26 0x26 0x26 0x26 0x25 0x24 ,0x25 0x28 0x29 0x26 0x24 0x28 0x2a 0x26 ,
      0x27 0x26 0x25 0x23 0x24 0x25 0x26 0x24 ,0x2a 0x26 0x28 0x24 0x26 0x27 0x2a 0x23 ,
max  :0x48 0x47 0x48 0x47 0x47 0x47 0x46 0x46 ,0x47 0x4a 0x48 0x47 0x46 0x4b 0x4c 0x48 ,
      0x4a 0x49 0x48 0x45 0x46 0x48 0x49 0x46 ,0x4d 0x48 0x4c 0x48 0x49 0x4a 0x4e 0x46 ,
range:0x41 0x42 0x44 0x42 0x41 0x42 0x42 0x44 ,0x44 0x44 0x3e 0x42 0x44 0x45 0x44 0x43 ,
      0x46 0x46 0x45 0x43 0x44 0x45 0x45 0x44 ,0x46 0x44 0x48 0x47 0x46 0x46 0x47 0x45 ,
the write training result:
DQS0:0x2e, DQS1:0x22, DQS2:0x28, DQS3:0x1f, 
min  :0x55 0x56 0x56 0x56 0x55 0x54 0x52 0x56 0x55 ,0x48 0x4a 0x4d 0x4a 0x48 0x4c 0x4d 0x4b 0x4b ,
      0x4e 0x4e 0x4e 0x4e 0x4d 0x4e 0x4e 0x4e 0x4e ,0x47 0x45 0x45 0x45 0x45 0x46 0x48 0x46 0x46 ,
mid  :0x71 0x71 0x72 0x72 0x70 0x70 0x6e 0x70 0x70 ,0x65 0x64 0x69 0x66 0x61 0x66 0x67 0x66 0x64 ,
      0x6b 0x6a 0x6a 0x6a 0x69 0x6a 0x69 0x69 0x6a ,0x63 0x5f 0x5f 0x5f 0x5f 0x61 0x64 0x60 0x60 ,
max  :0x8e 0x8d 0x8e 0x8e 0x8b 0x8c 0x8a 0x8a 0x8b ,0x82 0x7e 0x85 0x82 0x7b 0x81 0x81 0x81 0x7e ,
      0x89 0x87 0x87 0x87 0x85 0x86 0x85 0x85 0x87 ,0x80 0x7a 0x7a 0x7a 0x7a 0x7c 0x80 0x7a 0x7a ,
range:0x39 0x37 0x38 0x38 0x36 0x38 0x38 0x34 0x36 ,0x3a 0x34 0x38 0x38 0x33 0x35 0x34 0x36 0x33 ,
      0x3b 0x39 0x39 0x39 0x38 0x38 0x37 0x37 0x39 ,0x39 0x35 0x35 0x35 0x35 0x36 0x38 0x34 0x34 ,
CA Training result:
cs:0 min  :0x4e 0x4f 0x45 0x42 0x44 0x43 0x49 ,0x4d 0x49 0x42 0x40 0x42 0x40 0x45 ,
cs:0 mid  :0x8e 0x8e 0x84 0x81 0x84 0x82 0x79 ,0x8c 0x88 0x81 0x7f 0x81 0x7f 0x73 ,
cs:0 max  :0xce 0xcd 0xc4 0xc1 0xc4 0xc1 0xaa ,0xcc 0xc7 0xc1 0xbf 0xc0 0xbe 0xa2 ,
cs:0 range:0x80 0x7e 0x7f 0x7f 0x80 0x7e 0x61 ,0x7f 0x7e 0x7f 0x7f 0x7e 0x7e 0x5d ,
cs:1 min  :0x4e 0x4f 0x45 0x43 0x46 0x41 0x48 ,0x4f 0x4c 0x43 0x41 0x42 0x40 0x42 ,
cs:1 mid  :0x8d 0x8e 0x84 0x82 0x85 0x81 0x7a ,0x8e 0x8a 0x83 0x80 0x81 0x7f 0x74 ,
cs:1 max  :0xcd 0xce 0xc4 0xc2 0xc4 0xc1 0xad ,0xce 0xc9 0xc3 0xc0 0xc1 0xbf 0xa6 ,
cs:1 range:0x7f 0x7f 0x7f 0x7f 0x7e 0x80 0x65 ,0x7f 0x7d 0x80 0x7f 0x7f 0x7f 0x64 ,
out
U-Boot SPL board init
U-Boot SPL 2017.09-gaaca6ffec1-211203 #zzz (Dec 03 2021 - 18:42:16)
unknown raw ID phN
unrecognized JEDEC id bytes: 00, 00, 00
Trying to boot from MMC2
MMC error: The cmd index is 1, ret is -110
Card did not respond to voltage select!
mmc_init: -95, time 16
spl: mmc init failed with error: -95
Trying to boot from MMC1
Magic is incorrect.
Error validating A/B metadata from disk. Resetting and writing new A/B metadata to disk.
SPL: A/B-slot: _a, successful: 0, tries-remain: 7
Trying fit image at 0x4000 sector
## Verified-boot: 0
## Checking atf-1 0x00040000 ... sha256(0d5225a4ab...) + OK
## Checking uboot 0x00a00000 ... sha256(47884d3aa3...) + OK
## Checking fdt 0x00b457c0 ... sha256(036cca5880...) + OK
## Checking atf-2 0xfdcc1000 ... sha256(3e94d16e6a...) + OK
## Checking atf-3 0x0006b000 ... sha256(fde0ef262b...) + OK
## Checking atf-4 0xfdcce000 ... sha256(c9eb312bf2...) + OK
## Checking atf-5 0xfdcd0000 ... sha256(befba422b8...) + OK
## Checking atf-6 0x00069000 ... sha256(6ede7a3b44...) + OK
## Checking optee 0x08400000 ... sha256(6c92ef6a0e...) + OK
Jumping to U-Boot(0x00a00000) via ARM Trusted Firmware(0x00040000)
Total: 337.528 ms

INFO:    Preloader serial: 2
NOTICE:  BL31: v2.3():v2.3-607-gbf602aff1:cl
NOTICE:  BL31: Built : 10:16:03, Jun  5 2023
INFO:    GICv3 without legacy support detected.
INFO:    ARM GICv3 driver initialized in EL3
INFO:    pmu v1 is valid 220114
INFO:    dfs DDR fsp_param[0].freq_mhz= 1056MHz
INFO:    dfs DDR fsp_param[1].freq_mhz= 324MHz
INFO:    dfs DDR fsp_param[2].freq_mhz= 528MHz
INFO:    dfs DDR fsp_param[3].freq_mhz= 780MHz
INFO:    Using opteed sec cpu_context!
INFO:    boot cpu mask: 0
INFO:    BL31: Initializing runtime services
INFO:    BL31: Initializing BL32
I/TC: 
I/TC: OP-TEE version: 3.13.0-743-gb5340fd65 #hisping.lin (gcc version 10.2.1 20201103 (GNU Toolchain for the A-profile Architecture 10.2-2020.11 (arm-10.16))) #5 Mon Aug 28 15:15:17 CST 2023 aarch64
I/TC: Primary CPU initializing
E/TC:0 0 hal_algo_version_init:296 CRYPTO_CRYPTO_VERSION_NEW no support. Skip all algo mode check.
I/TC: Primary CPU switching to normal world boot
INFO:    BL31: Preparing for EL3 exit to normal world
INFO:    Entry point address = 0xa00000
INFO:    SPSR = 0x3c9


U-Boot 2017.09 (Feb 11 2025 - 15:32:32 +0800)

Model: Rockchip RK3568 Evaluation Board
MPIDR: 0x81000000
PreSerial: 2, raw, 0xfe660000
DRAM:  4 GiB
Sysmem: init
Relocation Offset: ed21a000
Relocation fdt: eb9f94a8 - eb9fece8
CR: M/C/I
Using default environment

optee api revision: 2.0
dwmmc@fe2b0000: 1, dwmmc@fe2c0000: 2, sdhci@fe310000: 0
Bootdev(atags): mmc 0
MMC0: HS200, 200Mhz
PartType: EFI
DM: v1
Android 13.0, Build 2023.8, v2
boot mode: recovery (misc)
RESC: 'recovery', blk@0x000374cc
Device is: UNLOCKED
DTB: rk-kernel.dtb
HASH(c): OK
ANDROID: fdt overlay OK
I2c0 speed: 100000Hz
PMIC:  RK8090 (on=0x40, off=0x00)
vdd_logic init 950000 uV
vdd_gpu init 900000 uV
vdd_npu init 900000 uV
vsel-gpios- not found! Error: -2
vdd_cpu init 1000000 uV
io-domain: OK
INFO:    ddr dmc_fsp already initialized in loader.
Model: pro-rk3566
MPIDR: 0x81000000
ethaddr = 02:2a:b6:1b:a5:37
eth1addr = 66:f8:d5:b6:ac:cc
eth2addr = 6a:ac:db:99:cd:b2
eth3addr = 52:b5:6a:b3:65:a0
OCV Value:6000  6319  6466  6556  6621  6675  6722  6766  6809  6854  6903  6960  7026  7104  7195  7297  7404  7521  7641  7771  8051  ocvsize: 21
battery->design_cap: 5000
battery->qmax: 5100
battery->bat_res_up: 140
battery->bat_res_down: 20
reg read version:0 dts read version:0
battery = 160
rk817_bat_rsoc_init: is_first_power_on = 1, pwroff_min = 0, pwron_voltage = 168
rk817_bat_first_pwron, rsoc = 0, dsoc = 0, fcc = 5000, nac = 0
<rk817_bat_calc_linek>. meet=0, diff=0, link=1000, calc: dsoc=0, rsoc=0
voltage_k = 18, voltage_b = 20
voltage_sys = 208
voltage usb: 160
battery: 160
current_avg = -2
current_pwron = -7
remain_cap = 0
fcc = 5000
qmax = 5100
dsoc = 0
rsoc = 0
charge type: 0
debug info:
CAL_OFFSET = 0x8014
current_avg = -2
k = 18, b = 20
battery: 160
voltage_sys = 208
voltage_usb = 208
current_avg = -2
dsoc = 0
rsoc = 0
remain_cap = 0
fcc = 5000
qmax = 5100
NO_CHARGER
Enable charge animation display
charge_extrem_low_power: Not charging, online=0. Shutdown...
debug info:
CAL_OFFSET = 0x8014
current_avg = -2
k = 18, b = 20
battery: 160
voltage_sys = 208
voltage_usb = 208
current_avg = -2
dsoc = 0
rsoc = 0
remain_cap = 0
fcc = 5000
qmax = 5100


 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/70035.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

掌控系统性能的利器:自动化系统性能监控工具

友友们好! 我的新专栏《Python进阶》正式启动啦!这是一个专为那些渴望提升Python技能的朋友们量身打造的专栏,无论你是已经有一定基础的开发者,还是希望深入挖掘Python潜力的爱好者,这里都将是你不可错过的宝藏。 在这个专栏中,你将会找到: ● 深入解析:每一篇文章都将…

MATLAB图像处理:Sobel、Roberts、Canny等边缘检测算子

边缘是图像中像素值剧烈变化的区域&#xff0c;反映了目标的轮廓、纹理等关键信息。边缘检测是图像分割、目标识别等任务的基础。本文将系统解析 六种经典边缘检测算子 的数学原理、实现方法及适用场景&#xff0c;并给出完整的MATLAB代码示例和对比分析。 1. 边缘检测基础 1…

Windows软件自动化利器:pywinauto python

Pywinauto WindowsAPP UI自动化 Windows软件自动化利器&#xff1a;pywinauto python

『大模型笔记』Ollama环境变量大全!

『大模型笔记』Ollama环境变量大全! 文章目录 一. Ollama环境变量大全!1. 命令方式查看2. 源码整理二. 参考文献一. Ollama环境变量大全! 1. 命令方式查看 Ollama常用的环境变量ollama help serve2. 源码整理 从源代码中整理了这份文档,希望有缘人能发现它。变量默认值说明…

ThreadLocal为什么会内存溢出

每个线程(Thread 对象)内部维护一个 ThreadLocalMap,用于存储该线程的所有 ThreadLocal 变量的键值对: ThreadLocalMap虽然是ThreadLocal的静态内部类,但是Thread 对象的属性,当线程存活时ThreadLocalMap不会被回收。 Key:ThreadLocal 实例的 弱引用(WeakReference)。…

C++之线程池(Thread Pool)

1.介绍 线程池是一种并发编程的设计模式&#xff0c;用于管理和复用多个线程。以避免频繁创建和销毁线程的开销。线程池的核心思想是预先创建一组线程&#xff0c;并将任务分配给这些线程执行&#xff0c;从而提高程序的性能和资源利用率。 2.线程池的核心组件 一个经典的线程…

2025智能硬件售后服务管理系统选择的六大标准

2025智能硬件售后服务管理系统选择的六大标准 随着2025年的到来&#xff0c;智能硬件行业正以前所未有的速度发展&#xff0c;产品迭代加速&#xff0c;用户需求日益多样化。在这一背景下&#xff0c;售后服务管理系统的选择成为了智能硬件厂商能否在激烈的市场竞争中脱颖而出…

深度学习框架探秘|Keras 应用案例解析以及 Keras vs TensorFlow vs PyTorch

引言 上一篇文章《深度学习框架探秘&#xff5c;Keras&#xff1a;深度学习的魔法钥匙》 我们初步学习了 Keras&#xff0c;包括它是什么、具备哪些优势&#xff08;简洁易用的 API、强大的兼容性、广泛的应用领域&#xff09;&#xff0c;以及基本使用方法。本文&#xff0c;…

【算法】动态规划专题⑦ —— 多重背包问题 + 二进制分解优化 python

目录 前置知识进入正题优化方法&#xff1a;二进制分解实战演练 前置知识 【算法】动态规划专题⑤ —— 0-1背包问题 滚动数组优化 python 【算法】动态规划专题⑥ —— 完全背包问题 python 进入正题 多重背包问题I https://www.acwing.com/problem/content/4/ 题目描述 有…

实战指南-Web渗透测试自学习资料超级大全 流程资料文档 涵盖OWASP Top Ten 漏洞 持续更...

目录 Owasp top ten SQL注入漏洞 XSS跨站脚本攻击 CSRF 跨站脚本伪造 SSRF 服务器请求伪造 XEE 实体注入 文件上传下载漏洞 越权漏洞 逻辑漏洞 反序列化漏洞 文件包含漏洞 常见的中间件(解析)漏洞 目录文件穿越漏洞 旁站注入漏洞 命令注入漏洞RCE 挂马 shell…

企业级高可用 Kubernetes 实践:基于青云 LB 搭建容灾与负载均衡集群全攻略

一、前言 在企业生产环境,k8s高可用是一个必不可少的特性,其中最通用的场景就是如何在 k8s 集群宕机一个节点的情况下保障服务依旧可用。部署高可用k8s集群对于企业级云平台来说是一个根本性的原则,容错、服务可用和数据安全是高可用基础设施的关键。本文是在青云上利用青云…

leetcode 297. 二叉树的序列化与反序列化

题目如下 我们常常说单独先序遍历不能完整的表示一棵树是有前提条件的。 为什么&#xff1f;先序遍历是按 根节点 左子树 右子树的方向遍历树且遇到空子树直接返回&#xff0c;这样会造成我们并不知道某个节点的左右子树存在与否&#xff0c;故我们无法确定树的形状。但是如果…

虚拟化重大灾难:硬盘故障导致的 VMware vSphere 故障排查与解决全过程

前言 本篇博文主要记录在维护 VMware VSphere 时&#xff0c;遇到硬盘故障引发的一系列的问题和解决方案。 1. 发现问题&#xff1a;虚拟机和ESXi都连不上了 今天一看&#xff0c;VMware vSphere 里的好几台虚拟机都挂了&#xff0c;服务也连不上。 第一反应&#xff1a;是…

【算法工程】解决linux下Aspose.slides提示No usable version of libssl found以及强化推理模型的短板

1. 背景 构建ubuntu镜像&#xff0c;然后使用Aspose.slides解析PPTX文档&#xff0c;发现一直提示“No usable version of libssl found”。 2. 尝试 使用deepseek R1、kimi1.5、chatgpt o3&#xff0c;并且都带上联网能力&#xff0c;居然还是没有一个能够真正解决&#xf…

JAVA安全—Shiro反序列化DNS利用链CC利用链AES动态调试

前言 讲了FastJson反序列化的原理和利用链&#xff0c;今天讲一下Shiro的反序列化利用&#xff0c;这个也是目前比较热门的。 原生态反序列化 我们先来复习一下原生态的反序列化&#xff0c;之前也是讲过的&#xff0c;打开我们写过的serialization_demo。代码也很简单&…

2024 CyberHost 语音+图像-视频

项目&#xff1a;CyberHost: Taming Audio-driven Avatar Diffusion Model with Region Codebook Attention 音频驱动的身体动画面临两个主要挑战&#xff1a;&#xff08;1&#xff09;关键人体部位&#xff0c;如面部和手部&#xff0c;在视频帧中所占比例较小&#x…

Qwen2-VL 的重大省级,Qwen 发布新旗舰视觉语言模型 Qwen2.5-VL

Qwen2.5-VL 是 Qwen 的新旗舰视觉语言模型&#xff0c;也是上一代 Qwen2-VL 的重大飞跃。 Qwen2.5-VL主要特点 视觉理解事物&#xff1a;Qwen2.5-VL不仅能够熟练识别花、鸟、鱼、昆虫等常见物体&#xff0c;而且还能够分析图像中的文本、图表、图标、图形和布局。 代理性&…

手机用流量怎样设置代理ip?

互联网各领域资料分享专区(不定期更新)&#xff1a; Sheet

OSI 参考模型和 TCP/IP 参考模型

数据通信是很复杂的&#xff0c;很难在一个协议中完成所有功能。因此在制定协议时经常采用的思路是将复杂的数据通信功能由若干协议分别完成&#xff0c;然后将这些协议按照一定的方式组织起来。最典型的是采用分层的方式来组织协议&#xff0c;每一层都有一套清晰明确的功能和…

OpenEuler学习笔记(三十二):在OpenEuler上搭建项目管理平台

在OpenEuler上搭建一个支持网页和手持访问、且支持用户功能自定义的项目管理平台&#xff0c;可以选择多种开源工具。以下是基于 Redmine 的搭建方案&#xff0c;Redmine 是一个灵活的项目管理工具&#xff0c;支持网页和移动端访问&#xff0c;并且可以通过插件扩展功能。 1.…