Closed replikvlt closed 1 month ago
Hey, thanks for the report. Can you please check with the latest version? (you can find how to compile it here). It should give you the right microarchitecture and still unknown SoC. In such case, can you please share the output of:
cat /proc/cpuinfo
hexdump -C /proc/device-tree/compatible
Thanks!
Hey, cpuinfo
is shared here https://github.com/hrw/arm-socs-table/issues/108
Can't run hexdump -C /proc/device-tree/compatible
as I have no root and get Permission denied :(
I built latest cpuinfo from git as per instruction, here is the output:
u0_a298@localhost:~/git/cpufetch$ ./cpufetch
SoC: Unknown
Technology: Unknown
CPU 1:
Microarchitecture: Cortex-A720
Max Frequency: 2.000 GHz
Cores: 4 cores
## ## ###### ###### # ### @@@@@@ @@@@@@ @@ @@ Features: NEON,SHA1,SHA2,AES,CRC32
### ### # # # # #### @@ @ @@ @@ CPU 2:
######## # ### # # # ## ## @@ @ @@@ @@@@ Microarchitecture: Cortex-X4
## ### ## # # # # ## ## @@ @ @@ @@ Max Frequency: 2.850 GHz
## ## ## ###### ##### # ## ## @@ @@@@@@ @@ @@ Cores: 3 cores
Features: NEON,SHA1,SHA2,AES,CRC32
CPU 3:
Microarchitecture: Cortex-X4
Max Frequency: 3.250 GHz
Cores: 1 cores
Features: NEON,SHA1,SHA2,AES,CRC32
Peak Performance: 505.60 GFLOP/s
u0_a298@localhost:~/git/cpufetch$ ./cpufetch --debug
cpufetch v1.06-32-g2e2e (Android ARM build)
[Core 0] 0x410FD811 2000 MHz
[Core 1] 0x410FD811 2000 MHz
[Core 2] 0x410FD811 2000 MHz
[Core 3] 0x410FD811 2000 MHz
[Core 4] 0x410FD821 2850 MHz
[Core 5] 0x410FD821 2850 MHz
[Core 6] 0x410FD821 2850 MHz
[Core 7] 0x410FD821 3250 MHz
My bad, ./cpufetch --verbose
should be enough, thanks!
Output of ./cpufetch --verbose
u0_a298@localhost:~/git/cpufetch$ ./cpufetch --verbose
[WARNING]: SoC detection failed using /proc/cpuinfo: No string found
SoC: Unknown
Technology: Unknown
CPU 1:
Microarchitecture: Cortex-A720
Max Frequency: 2.000 GHz
Cores: 4 cores
## ## ###### ###### # ### @@@@@@ @@@@@@ @@ @@ Features: NEON,SHA1,SHA2,AES,CRC32
### ### # # # # #### @@ @ @@ @@ CPU 2:
######## # ### # # # ## ## @@ @ @@@ @@@@ Microarchitecture: Cortex-X4
## ### ## # # # # ## ## @@ @ @@ @@ Max Frequency: 2.850 GHz
## ## ## ###### ##### # ## ## @@ @@@@@@ @@ @@ Cores: 3 cores
Features: NEON,SHA1,SHA2,AES,CRC32
CPU 3:
Microarchitecture: Cortex-X4
Max Frequency: 3.250 GHz
Cores: 1 cores
Features: NEON,SHA1,SHA2,AES,CRC32
Peak Performance: 505.60 GFLOP/s
It does not seem to be fetching the android properties (at least it's not shown in the output...), which is extremely odd. Have you compiled in Linux then copied the binary to your phone, or compiled directly in your phone?
I have added support for your SoC in the branch i288
so you can give it a try but I think it's unlikely it'll work since it's not able to get the SoC identifier anywhere.
Hey, thanks for prompt response. I have compiled cpufetch directly in termux on my phone. I will try the i228 branch.
UPDATE Seems to work on i288 branch and show the name, but verbose still shows it couldn't read cpuinfo. Here's output:
u0_a298@localhost:~/git/cpufetch$ ./cpufetch --verbose
[WARNING]: SoC detection failed using /proc/cpuinfo: No string found
SoC: MediaTek Dimensity 9300
Technology: 4nm
CPU 1:
Microarchitecture: Cortex-A720
Max Frequency: 2.000 GHz
Cores: 4 cores
## ## ###### ###### # ### @@@@@@ @@@@@@ @@ @@ Features: NEON,SHA1,SHA2,AES,CRC32
### ### # # # # #### @@ @ @@ @@ CPU 2:
######## # ### # # # ## ## @@ @ @@@ @@@@ Microarchitecture: Cortex-X4
## ### ## # # # # ## ## @@ @ @@ @@ Max Frequency: 2.850 GHz
## ## ## ###### ##### # ## ## @@ @@@@@@ @@ @@ Cores: 3 cores
Features: NEON,SHA1,SHA2,AES,CRC32
CPU 3:
Microarchitecture: Cortex-X4
Max Frequency: 3.250 GHz
Cores: 1 cores
Features: NEON,SHA1,SHA2,AES,CRC32
Peak Performance: 505.60 GFLOP/s
Android has this thing called build or system properties. They can be read using termux or adb shell using getprop
utility. I wonder if that can be used for reading and identifying SOC on Android.
For instance when I executed getprop
with no more arguments in termux it gave me (probably) full list of properties. Among them I saw few which seemed like SoC identifier. After filtering a bit I got the following list for example:
u0_a298@localhost:~$ getprop | grep -Pi ': (?=.*(mt|mediatek|dimensity|9300|6989).*)'
[Build.BRAND]: [MTK]
[dalvik.vm.mtk-stack-trace-file]: [/data/anr/mtk_traces.txt]
[persist.vendor.connsys.chipid]: [0x6989]
[persist.vivo.voicewakeup.chip.type]: [mtk]
[ro.board.platform]: [mt6989]
[ro.boot.hardware]: [mt6989]
[ro.gfx.driver.0]: [com.mediatek.mt6989.gamedriver]
[ro.hardware]: [mt6989]
[ro.hardware.hwcomposer]: [mtk_common]
[ro.netflix.bsp_rev]: [MTK6989-37732-1]
[ro.product.board]: [k6989v1_64]
[ro.soc.manufacturer]: [Mediatek]
[ro.soc.model]: [MT6989]
[ro.sys.usb.storage.type]: [mtp]
[ro.vendor.mediatek.platform]: [MT6989]
[ro.vendor.soc.manufacturer]: [Mediatek]
[ro.vendor.soc.model]: [MT6989]
[ro.vendor.soc.model.external_name]: [MT6989W/CZA]
[ro.vendor.soc.model.part_name]: [MT6989W/CZA]
[ro.vivo.product.platform]: [MTK6989]
[ro.vivo.product.solution]: [MTK]
[vendor.connsys.bt_fw_ver]: [t-neptune-mp-mt6639-2338-tc19sp-MT6639_E1_ASIC_ROM_RAM_MOBILE_DX3_BT-20240412113624]
[vendor.gsm.project.baseband]: [BBK_U0MP1_K6989V1_64(NLWCG_FR1_CUSTOM)]
[vendor.wlan.firmware.version]: [t-neptune-mp-mt6639-2338-tc19sp-MT6639_E1_ASIC_ROM_RAM_MOBILE_DX3_WF-20240408100107]
Maybe there properties can somehow be used for identification, for example ro.vendor.soc.model
?
It's fine if it shows a warning when running with --verbose
(that's why it's verbose mode), the good news is it shows the correct SoC. I'll merge it into master soon, thanks :+1:
Thank you!
Let me know if you need any other details.
Everything alright, thanks! Just merged into master, closing.
Hello,
I'm getting errors when running cpufetch, it says "Unknown microarchitecture detected"
CPU: 3.25GHz Mediatek Dimensity 9300 (Octa Core) OS: Android 14 (and Termux 0.118.1) Version:
cpufetch v1.06 (Android ARM build)
Note: this CPU is 64 bit onlyThe output of
cpufetch
:The output of
cpufetch --debug
:Some more details generated by Android Hardware info apps: CPU-Z debug info:
DeviceInfo (by liuzh) CPU block extract