Skip to content

Fairly large number of Unknown SoCs detected #329

Closed

Description

@bc-lee

After Unknown SoC case matters like (#322), I decided to check real-world data to see which Android devices report their SoC name as unknown (via the cpuinfo_package.name field). It turns out that quite a few devices report an unknown SoC. We should investigate these cases to correctly identify their SoCs.

Here are several examples I found:

brand(ro.product.brand)	model(ro.product.model)	is_exist_on_play_store	device_code(from play store)	marketing_name catalog_soc(from play store)
samsung	SM-A057F,SM-A057G,SM-A057M	TRUE	a05s	Galaxy A05s	QTI SM6225
Redmi	25028RN03A,25028RN03I,25028RN03Y	TRUE	serenity	Redmi A5	Spreadtrum UMS9230E
samsung	SM-S928B	TRUE	e3q	Galaxy S24 Ultra	QTI SM8650
Redmi	23124RA7EO	TRUE	sapphiren	Redmi Note 13	QTI SM6225
OPPO	CPH2641	TRUE	OP5B16L1	A3x	Qualcomm SM6115
OPPO	CPH2641	TRUE	OP5B16L1	A3x/A20	Qualcomm SM6115
samsung	SM-S918B,SM-S918N	TRUE	dm3q	Galaxy S23 Ultra	QTI SM8550
Redmi	2312DRA50G,2312DRA50I	TRUE	garnet	Redmi Note 13 Pro 5G	Qualcomm SM7435
OPPO	CPH2631	TRUE	OP5AE7L1	A60	QTI SM6225
samsung	SM-S938B	TRUE	pa3q	Galaxy S25 Ultra	QTI SM8750
samsung	SM-S911B	TRUE	dm1q	Galaxy S23	QTI SM8550
OPPO	CPH2669	TRUE	OP5B16L1	A3	Qualcomm SM6115
OPPO	CPH2669	TRUE	OP5B16L1	A40/A40m	Qualcomm SM6115
samsung	SM-A047F	TRUE	a04s	Galaxy A04s	Samsung Exynos 850
samsung	SM-A217F,SM-A217M	TRUE	a21s	Galaxy A21s	Samsung Exynos 850
OPPO	CPH2669	TRUE	OP5B16L1	A40/A3/A40m	Qualcomm SM6115
samsung	SM-A127F	TRUE	a12s	Galaxy A12	Samsung Exynos 850
vivo	V2419	TRUE	V2419	Y19s pro	Spreadtrum T612
vivo	V2419	TRUE	V2419	vivo Y19s	Spreadtrum T612
iQOO	I2218,I2219,I2220,I2401	FALSE

Activity

  1. digantdesai commented on Sep 8, 2025

    @digantdesai
    Contributor
  2. GregoryComer commented on Sep 8, 2025

    @GregoryComer
    Contributor

    Yeah, I need to revert the other PR with a more targeted fix for the UNISOCs. It may be a few days, but I'll see if I can get the merged soon.

  3. 3c71 commented on Oct 4, 2025

    @3c71

    I've checked some Google devices which reports as Unknown:

    Pixel 6A Tensor
    Octa-core (2x2.80 GHz Cortex-X1 & 2x2.25 GHz Cortex-A76 & 4x1.80 GHz Cortex-A55)
    Mali-G78 MP20

    Pixel 9A Tensor G4 - tegu
    Octa-core (1x3.1 GHz Cortex-X4 & 3x2.6 GHz Cortex-A720 & 4x1.9 GHz Cortex-A520)
    Mali-G715 MP7

    Let me know if I can help with logs/data to add support for those CPU from Google.

  4. fbarchard commented on Oct 28, 2025

    @fbarchard
    Contributor

    There is no Exynos or Tensor support. I think the field we want is soc.
    eq Samsung S23:
    [ro.soc.model]: [SM8550]

  5. 3c71 commented on Oct 29, 2025

    @3c71

    The pixel 6a reports Tensor in ro.soc.model.

    The pixel 9a reports Tensor G4. So that seems a good fallback.

    For Exynos, I use that file: /sys/devices/system/chip-id/ap_id

  6. fbarchard commented on Nov 19, 2025

    @fbarchard
    Contributor

    I have a Samsung S23 handy, and can confirm SoC is 'unknown'

    SoC name: Unknown
    Microarchitectures:
    1x Cortex-X3
    4x Cortex-A715
    3x Cortex-A510
    Cores:
    0: 1 processor (0), ARM Cortex-X3
    1: 1 processor (1), ARM Cortex-A715
    2: 1 processor (2), ARM Cortex-A715
    3: 1 processor (3), ARM Cortex-A715
    4: 1 processor (4), ARM Cortex-A715
    5: 1 processor (5), ARM Cortex-A510
    6: 1 processor (6), ARM Cortex-A510
    7: 1 processor (7), ARM Cortex-A510
    Clusters:
    0: 1 processor (0), 0: 1 core (0), ARM Cortex-X3
    1: 4 processors (1-4), 1: 4 cores (1-4), ARM Cortex-A715
    2: 3 processors (5-7), 2: 3 cores (5-7), ARM Cortex-A510
    Logical processors (System ID):
    0 (7)
    1 (3)
    2 (4)
    3 (5)
    4 (6)
    5 (0)
    6 (1)
    7 (2)

    The property works
    adb shell getprop ro.product.model
    SM-S918U1

    In general Qualcomm, Exynos and Pixel fail

    MediaTek works
    SoC name: MediaTek MT6993
    but the name is different than the property
    adb shell getprop ro.product.model
    V2509A
    These are properties that use the MT6993 name
    adb shell getprop | grep mt.*6993 -i
    [ro.board.platform]: [mt6993]
    [ro.boot.hardware]: [mt6993]
    [ro.gfx.driver.0]: [com.mediatek.mt6993.gamedriver]
    [ro.hardware]: [mt6993]
    [ro.soc.model]: [MT6993]
    [ro.vendor.mediatek.platform]: [MT6993]
    [ro.vendor.soc.model]: [MT6993]
    [ro.vendor.soc.model.external_name]: [MT6993W/CZA]
    [ro.vendor.soc.model.part_name]: [MT6993W/CZA]
    [ro.vivo.product.platform]: [MTK6993]

    I've noticed ro.soc.model usually matches what we expect, for newer SoC. But is missing on older devices.
    Pixel 8 Pro (husky)
    SoC name: Unknown
    Microarchitectures:
    9x Cortex-A510

    [ro.product.model]: [Pixel 8 Pro]

    adb shell getprop | grep tensor -i
    [ro.soc.model]: [Tensor G3]

    ro.product.model identifies the phone/laptop... it isnt what cpuinfo needs to know
    ro.soc.model is the soc that goes in that phone. We should add that and use it when available.

    e.g. Pixel 2 XL doesnt have an 'soc' field
    adb shell getprop | grep model
    [ro.product.model]: [Pixel 2 XL]
    [ro.product.odm.model]: [Pixel 2 XL]
    [ro.product.product.model]: [Pixel 2 XL]
    [ro.product.system.model]: [Pixel 2 XL]
    [ro.product.system_ext.model]: [Pixel 2 XL]
    [ro.product.vendor.model]: [Pixel 2 XL]

    But /proc/cpuinfo has the 'Hardware'
    adb shell more /proc/cpuinfo | grep Hardware
    Hardware : Qualcomm Technologies, Inc MSM8998
    If I search for that, it has an old property
    adb shell getprop | grep 8998
    [ro.board.platform]: [msm8998]

    I suggest ro.soc.model will fix Qualcomm, Exynos and Tensor.

  7. fbarchard commented on Apr 27, 2026

    @fbarchard
    Contributor

    This PR adds getprop ro.soc.model in order to detect newer qualcomm soc
    #381

    If that lands okay I'll fill in the Google Tensor and Samsung Exynos which will fix most of the devices on your list.

  8. fbarchard commented on Apr 28, 2026

    @fbarchard
    Contributor

    I tested a number of Samsung with Qualcomm soc and they detect okay now
    This PR adds Google Tensor soc
    #382

    Could you update the list of failures or file a new bug and if possible
    adb shell getprop ro.soc.model

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions