diff --git a/src/arm/soc.c b/src/arm/soc.c index 0b3c83d..fcecd2b 100644 --- a/src/arm/soc.c +++ b/src/arm/soc.c @@ -421,6 +421,9 @@ bool match_mediatek(char* soc_name, struct system_on_chip* soc) { } /* + * Good sources: + * https://www.geektopia.es/es/products/company/qualcomm/socs/ + * * APQ: Application Processor Qualcomm * MSM: Mobile Station Modem * In a APQXXXX or MSMXXXX, the second digit represents: @@ -578,14 +581,25 @@ bool match_qualcomm(char* soc_name, struct system_on_chip* soc) { SOC_EQ(tmp, "SM8250-AB", "865+", SOC_SNAPD_SM8250_AB, soc, 7) SOC_EQ(tmp, "SM8350", "888", SOC_SNAPD_SM8350, soc, 5) SOC_EQ(tmp, "SM8350-AC", "888+", SOC_SNAPD_SM8350, soc, 5) - // Snapdragon Gen // + // Snapdragon Gen 4 // + SOC_EQ(tmp, "SM4375", "4 Gen 1", SOC_SNAPD_SM4375, soc, 6) SOC_EQ(tmp, "SM4450", "4 Gen 2", SOC_SNAPD_SM4450, soc, 4) + SOC_EQ(tmp, "SM4635", "4s Gen 2", SOC_SNAPD_SM4635, soc, 4) + // Snapdragon Gen 6 // + SOC_EQ(tmp, "SM6375-AC", "6s Gen 3", SOC_SNAPD_SM6375_AC, soc, 6) SOC_EQ(tmp, "SM6450", "6 Gen 1", SOC_SNAPD_SM6450, soc, 4) + // Snapdragon Gen 7 // SOC_EQ(tmp, "SM7435-AB", "7s Gen 2", SOC_SNAPD_SM7435_AB, soc, 4) SOC_EQ(tmp, "SM7450", "7 Gen 1", SOC_SNAPD_SM7450, soc, 4) SOC_EQ(tmp, "SM7475", "7+ Gen 2", SOC_SNAPD_SM7475, soc, 4) + SOC_EQ(tmp, "SM7550-AB", "7 Gen 3", SOC_SNAPD_SM7550_AB, soc, 4) + SOC_EQ(tmp, "SM7675-AB", "7+ Gen 3", SOC_SNAPD_SM7675_AB, soc, 4) + // Snapdragon Gen 8 // SOC_EQ(tmp, "SM8450", "8 Gen 1", SOC_SNAPD_SM8450, soc, 4) SOC_EQ(tmp, "SM8475", "8+ Gen 1", SOC_SNAPD_SM8475, soc, 4) + SOC_EQ(tmp, "SM8550-AB", "8 Gen 2", SOC_SNAPD_SM8550_AB, soc, 4) + SOC_EQ(tmp, "SM8635", "8s Gen 3", SOC_SNAPD_SM8635, soc, 4) + SOC_EQ(tmp, "SM8650-AB", "8 Gen 3", SOC_SNAPD_SM8650_AB, soc, 4) SOC_END } diff --git a/src/arm/socs.h b/src/arm/socs.h index dd6ef65..0ff89db 100644 --- a/src/arm/socs.h +++ b/src/arm/socs.h @@ -270,13 +270,16 @@ enum { SOC_SNAPD_SDM660, SOC_SNAPD_SM6115, SOC_SNAPD_SM6125, + SOC_SNAPD_SM6375_AC, SOC_SNAPD_SM6450, SOC_SNAPD_SDM670, SOC_SNAPD_SM6150, SOC_SNAPD_SM6350, SOC_SNAPD_SDM710, SOC_SNAPD_SDM712, + SOC_SNAPD_SM4375, SOC_SNAPD_SM4450, + SOC_SNAPD_SM4635, SOC_SNAPD_SM7125, SOC_SNAPD_SM7150_AA, SOC_SNAPD_SM7150_AB, @@ -288,6 +291,8 @@ enum { SOC_SNAPD_SM7435_AB, SOC_SNAPD_SM7450, SOC_SNAPD_SM7475, + SOC_SNAPD_SM7550_AB, + SOC_SNAPD_SM7675_AB, SOC_SNAPD_MSM8974AA, SOC_SNAPD_MSM8974AB, SOC_SNAPD_MSM8974AC, @@ -309,6 +314,9 @@ enum { SOC_SNAPD_SM8350, SOC_SNAPD_SM8450, SOC_SNAPD_SM8475, + SOC_SNAPD_SM8550_AB, + SOC_SNAPD_SM8635, + SOC_SNAPD_SM8650_AB, // APPLE SOC_APPLE_M1, SOC_APPLE_M1_PRO, @@ -381,7 +389,7 @@ inline static VENDOR get_soc_vendor_from_soc(SOC soc) { else if(soc >= SOC_KUNPENG_920 && soc <= SOC_KUNPENG_930) return SOC_VENDOR_KUNPENG; else if(soc >= SOC_EXYNOS_3475 && soc <= SOC_EXYNOS_880) return SOC_VENDOR_EXYNOS; else if(soc >= SOC_MTK_MT6893 && soc <= SOC_MTK_MT8783) return SOC_VENDOR_MEDIATEK; - else if(soc >= SOC_SNAPD_QSD8650 && soc <= SOC_SNAPD_SM8475) return SOC_VENDOR_SNAPDRAGON; + else if(soc >= SOC_SNAPD_QSD8650 && soc <= SOC_SNAPD_SM8650_AB) return SOC_VENDOR_SNAPDRAGON; else if(soc >= SOC_APPLE_M1 && soc <= SOC_APPLE_M3_MAX) return SOC_VENDOR_APPLE; else if(soc >= SOC_ALLWINNER_A10 && soc <= SOC_ALLWINNER_R328) return SOC_VENDOR_ALLWINNER; else if(soc >= SOC_ROCKCHIP_3288 && soc <= SOC_ROCKCHIP_3588) return SOC_VENDOR_ROCKCHIP;