diff --git a/include/linux/rockchip/cpu.h b/include/linux/rockchip/cpu.h index 0cd6f673c4d9..c6be2c96ed84 100644 --- a/include/linux/rockchip/cpu.h +++ b/include/linux/rockchip/cpu.h @@ -26,6 +26,7 @@ #define ROCKCHIP_CPU_RK312X 0x31260000 #define ROCKCHIP_CPU_RK3288 0x32880000 #define ROCKCHIP_CPU_RK3308 0x33080000 +#define ROCKCHIP_CPU_RK3518 0x35180000 #define ROCKCHIP_CPU_RK3528 0x35280000 #define ROCKCHIP_CPU_RK3566 0x35660000 #define ROCKCHIP_CPU_RK3567 0x35670000 @@ -185,8 +186,16 @@ static inline bool cpu_is_rk3528(void) return of_machine_is_compatible("rockchip,rk3528") || of_machine_is_compatible("rockchip,rk3528a"); } + +static inline bool cpu_is_rk3518(void) +{ + if (rockchip_soc_id) + return (rockchip_soc_id & ROCKCHIP_CPU_MASK) == ROCKCHIP_CPU_RK3518; + return of_machine_is_compatible("rockchip,rk3518"); +} #else static inline bool cpu_is_rk3528(void) { return false; } +static inline bool cpu_is_rk3518(void) { return false; } #endif #if defined(CONFIG_CPU_RK3568) @@ -232,6 +241,7 @@ static inline bool cpu_is_rk3568(void) { return false; } #define ROCKCHIP_SOC_RK3308 (ROCKCHIP_CPU_RK3308 | 0x00) #define ROCKCHIP_SOC_RK3308B (ROCKCHIP_CPU_RK3308 | 0x01) #define ROCKCHIP_SOC_RK3308BS (ROCKCHIP_CPU_RK3308 | 0x02) +#define ROCKCHIP_SOC_RK3518 (ROCKCHIP_CPU_RK3518 | 0x00) #define ROCKCHIP_SOC_RK3528 (ROCKCHIP_CPU_RK3528 | 0x00) #define ROCKCHIP_SOC_RK3528A (ROCKCHIP_CPU_RK3528 | 0x01) #define ROCKCHIP_SOC_RK3566 (ROCKCHIP_CPU_RK3566 | 0x00) @@ -263,6 +273,7 @@ ROCKCHIP_SOC(RK3288, rk3288w, RK3288W) ROCKCHIP_SOC(RK3308, rk3308, RK3308) ROCKCHIP_SOC(RK3308, rk3308b, RK3308B) ROCKCHIP_SOC(RK3308, rk3308bs, RK3308BS) +ROCKCHIP_SOC(RK3518, rk3518, RK3518) ROCKCHIP_SOC(RK3528, rk3528, RK3528) ROCKCHIP_SOC(RK3528, rk3528a, RK3528A) ROCKCHIP_SOC(RK3568, rk3566, RK3566)