[v1.04][ARM] Add Rockchip 3588S SoC (thanks #188!)

This commit is contained in:
Dr-Noob
2023-09-02 19:02:00 +01:00
parent 9a46e310e4
commit 5f5561f177
3 changed files with 20 additions and 13 deletions

View File

@@ -623,6 +623,10 @@ char* get_rk_efuse(void) {
char* rk_soc = read_file(_PATH_RK_EFUSE0, &filelen); char* rk_soc = read_file(_PATH_RK_EFUSE0, &filelen);
if(rk_soc == NULL) { if(rk_soc == NULL) {
printWarn("read_file: %s: %s", _PATH_RK_EFUSE0, strerror(errno)); printWarn("read_file: %s: %s", _PATH_RK_EFUSE0, strerror(errno));
rk_soc = read_file(_PATH_RK_OTP0, &filelen);
if(rk_soc == NULL) {
printWarn("read_file: %s: %s", _PATH_RK_OTP0, strerror(errno));
}
} }
return rk_soc; return rk_soc;
} }
@@ -650,6 +654,7 @@ bool get_rk_soc_from_efuse(struct system_on_chip* soc, char* efuse) {
{0x5366, {SOC_ROCKCHIP_3566, SOC_VENDOR_ROCKCHIP, 22, "RK3566", NULL} }, {0x5366, {SOC_ROCKCHIP_3566, SOC_VENDOR_ROCKCHIP, 22, "RK3566", NULL} },
{0x5386, {SOC_ROCKCHIP_3568, SOC_VENDOR_ROCKCHIP, 22, "RK3568", NULL} }, {0x5386, {SOC_ROCKCHIP_3568, SOC_VENDOR_ROCKCHIP, 22, "RK3568", NULL} },
{0x5388, {SOC_ROCKCHIP_3588, SOC_VENDOR_ROCKCHIP, 8, "RK3588", NULL} }, {0x5388, {SOC_ROCKCHIP_3588, SOC_VENDOR_ROCKCHIP, 8, "RK3588", NULL} },
{0x3588, {SOC_ROCKCHIP_3588S, SOC_VENDOR_ROCKCHIP, 8, "RK3588S", NULL} }, // https://github.com/Dr-Noob/cpufetch/issues/188
// Unknown // Unknown
{0x0000, {UNKNOWN, SOC_VENDOR_UNKNOWN, -1, "", NULL} } {0x0000, {UNKNOWN, SOC_VENDOR_UNKNOWN, -1, "", NULL} }
}; };

View File

@@ -302,6 +302,7 @@ enum {
SOC_ROCKCHIP_3566, SOC_ROCKCHIP_3566,
SOC_ROCKCHIP_3568, SOC_ROCKCHIP_3568,
SOC_ROCKCHIP_3588, SOC_ROCKCHIP_3588,
SOC_ROCKCHIP_3588S,
// UNKNOWN // UNKNOWN
SOC_MODEL_UNKNOWN SOC_MODEL_UNKNOWN
}; };
@@ -314,7 +315,7 @@ inline static VENDOR get_soc_vendor_from_soc(SOC soc) {
else if(soc >= SOC_SNAPD_QSD8650 && soc <= SOC_SNAPD_SM8450) return SOC_VENDOR_SNAPDRAGON; else if(soc >= SOC_SNAPD_QSD8650 && soc <= SOC_SNAPD_SM8450) return SOC_VENDOR_SNAPDRAGON;
else if(soc >= SOC_APPLE_M1 && soc <= SOC_APPLE_M2) return SOC_VENDOR_APPLE; else if(soc >= SOC_APPLE_M1 && soc <= SOC_APPLE_M2) return SOC_VENDOR_APPLE;
else if(soc >= SOC_ALLWINNER_A10 && soc <= SOC_ALLWINNER_R328) return SOC_VENDOR_ALLWINNER; 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; else if(soc >= SOC_ROCKCHIP_3288 && soc <= SOC_ROCKCHIP_3588S) return SOC_VENDOR_ROCKCHIP;
return SOC_VENDOR_UNKNOWN; return SOC_VENDOR_UNKNOWN;
} }

View File

@@ -5,6 +5,7 @@
#define _PATH_SUNXI_NVMEM "/sys/bus/nvmem/devices/sunxi-sid0/nvmem" #define _PATH_SUNXI_NVMEM "/sys/bus/nvmem/devices/sunxi-sid0/nvmem"
#define _PATH_RK_EFUSE0 "/sys/bus/nvmem/devices/rockchip-efuse0/nvmem" #define _PATH_RK_EFUSE0 "/sys/bus/nvmem/devices/rockchip-efuse0/nvmem"
#define _PATH_RK_OTP0 "/sys/bus/nvmem/devices/rockchip-otp0/nvmem"
#define UNKNOWN -1 #define UNKNOWN -1
int get_ncores_from_cpuinfo(void); int get_ncores_from_cpuinfo(void);