flightlessmango / MangoHud

A Vulkan and OpenGL overlay for monitoring FPS, temperatures, CPU/GPU load and more. Discord: https://discordapp.com/invite/Gj5YmBb
MIT License
6.28k stars 272 forks source link

Add qcom-battmgr support and Qcom GPU Clock read #1254

Closed FantasyGmm closed 2 months ago

FantasyGmm commented 5 months ago

Added support for Qualcomm batteries, I tested using the 8gen2 6.7rc kernel Charging display, off battery power consumption are works directory structure

fan@ayn-odin2:~$ tree /sys/class/power_supply/qcom-battmgr-bat/
/sys/class/power_supply/qcom-battmgr-bat/
├── capacity
├── charge_counter
├── charge_full
├── charge_full_design
├── charge_type
├── current_now
├── cycle_count
├── device -> ../../../pmic_glink.power-supply.0
├── health
├── hwmon44
│   ├── curr1_input
│   ├── device -> ../../qcom-battmgr-bat
│   ├── in0_input
│   ├── in0_max
│   ├── name
│   ├── of_node -> ../../../../../../../firmware/devicetree/base/pmic-glink
│   ├── power
│   │   ├── autosuspend_delay_ms
│   │   ├── control
│   │   ├── runtime_active_time
│   │   ├── runtime_status
│   │   └── runtime_suspended_time
│   ├── subsystem -> ../../../../../../../class/hwmon
│   ├── temp1_input
│   ├── temp1_label
│   └── uevent
├── model_name
├── of_node -> ../../../../../../firmware/devicetree/base/pmic-glink
├── power
│   ├── autosuspend_delay_ms
│   ├── control
│   ├── runtime_active_time
│   ├── runtime_status
│   ├── runtime_suspended_time
│   ├── wakeup
│   ├── wakeup_abort_count
│   ├── wakeup_active
│   ├── wakeup_active_count
│   ├── wakeup_count
│   ├── wakeup_expire_count
│   ├── wakeup_last_time_ms
│   ├── wakeup_max_time_ms
│   └── wakeup_total_time_ms
├── power_now
├── present
├── status
├── subsystem -> ../../../../../../class/power_supply
├── technology
├── temp
├── time_to_empty_avg
├── time_to_full_avg
├── type
├── uevent
├── voltage_max
├── voltage_now
├── voltage_ocv
└── wakeup2
    ├── active_count
    ├── active_time_ms
    ├── device -> ../../qcom-battmgr-bat
    ├── event_count
    ├── expire_count
    ├── last_change_ms
    ├── max_time_ms
    ├── name
    ├── prevent_suspend_time_ms
    ├── subsystem -> ../../../../../../../class/wakeup
    ├── total_time_ms
    ├── uevent
    └── wakeup_count

13 directories, 58 files
flightlessmango commented 3 months ago

msm gpu load has been added with it's own module in https://github.com/flightlessmango/MangoHud/blob/master/src/msm.cpp

This PR should be revised into that class

flightlessmango commented 3 months ago

I'm sorry, this PR is perfectly fine. I was misunderstanding something

flightlessmango commented 3 months ago

Can you just squash the "merge into master" commit?

FantasyGmm commented 3 months ago

Can you just squash the "merge into master" commit?

Sure, if I have time I'll also try to add more sensor info for Qualcomm, I apologize for being a CPP noob, if there's something wrong with my code writing, please point it out, and it would be great if I can suggest changes accordingly! Thank you so much for writing such a great program!