Loading drivers/gpu/msm/adreno-gpulist.h +20 −0 Original line number Diff line number Diff line Loading @@ -160,4 +160,24 @@ static const struct adreno_gpu_core adreno_gpulist[] = { .pfp_bstrp_size = 0x28, .pfp_bstrp_ver = 0x4ff091, }, { .gpurev = ADRENO_REV_A430, .core = 4, .major = 3, .minor = 0, .patchid = ANY_ID, .features = ADRENO_USES_OCMEM | ADRENO_WARM_START | ADRENO_USE_BOOTSTRAP, .pm4fw_name = "a420_pm4.fw", .pfpfw_name = "a420_pfp.fw", .gpudev = &adreno_a4xx_gpudev, .gmem_size = (SZ_1M + SZ_512K), .pm4_jt_idx = 0x901, .pm4_jt_addr = 0x300, .pfp_jt_idx = 0x401, .pfp_jt_addr = 0x400, .pm4_bstrp_size = 0x06, .pfp_bstrp_size = 0x28, .pfp_bstrp_ver = 0x4ff091, }, }; drivers/gpu/msm/adreno.h +6 −0 Original line number Diff line number Diff line Loading @@ -118,6 +118,7 @@ enum adreno_gpurev { ADRENO_REV_A330 = 330, ADRENO_REV_A305B = 335, ADRENO_REV_A420 = 420, ADRENO_REV_A430 = 430, }; #define ADRENO_SOFT_FAULT BIT(0) Loading Loading @@ -800,6 +801,11 @@ static inline int adreno_is_a420(struct adreno_device *adreno_dev) return (ADRENO_GPUREV(adreno_dev) == ADRENO_REV_A420); } static inline int adreno_is_a430(struct adreno_device *adreno_dev) { return (ADRENO_GPUREV(adreno_dev) == ADRENO_REV_A430); } static inline int adreno_rb_ctxtswitch(unsigned int *cmd) { return (cmd[0] == cp_nop_packet(1) && Loading drivers/gpu/msm/adreno_a4xx.c +11 −0 Original line number Diff line number Diff line Loading @@ -255,8 +255,19 @@ static const struct adreno_vbif_data a420_vbif[] = { {0, 0}, }; static const struct adreno_vbif_data a430_vbif[] = { { A4XX_VBIF_GATE_OFF_WRREQ_EN, 0x00000001 }, { A4XX_VBIF_IN_RD_LIM_CONF0, 0x18181818 }, { A4XX_VBIF_IN_RD_LIM_CONF1, 0x00000018 }, { A4XX_VBIF_IN_WR_LIM_CONF0, 0x18181818 }, { A4XX_VBIF_IN_WR_LIM_CONF1, 0x00000018 }, { A4XX_VBIF_ROUND_ROBIN_QOS_ARB, 0x00000003 }, {0, 0}, }; static const struct adreno_vbif_platform a4xx_vbif_platforms[] = { { adreno_is_a420, a420_vbif }, { adreno_is_a430, a430_vbif }, }; /* Loading Loading
drivers/gpu/msm/adreno-gpulist.h +20 −0 Original line number Diff line number Diff line Loading @@ -160,4 +160,24 @@ static const struct adreno_gpu_core adreno_gpulist[] = { .pfp_bstrp_size = 0x28, .pfp_bstrp_ver = 0x4ff091, }, { .gpurev = ADRENO_REV_A430, .core = 4, .major = 3, .minor = 0, .patchid = ANY_ID, .features = ADRENO_USES_OCMEM | ADRENO_WARM_START | ADRENO_USE_BOOTSTRAP, .pm4fw_name = "a420_pm4.fw", .pfpfw_name = "a420_pfp.fw", .gpudev = &adreno_a4xx_gpudev, .gmem_size = (SZ_1M + SZ_512K), .pm4_jt_idx = 0x901, .pm4_jt_addr = 0x300, .pfp_jt_idx = 0x401, .pfp_jt_addr = 0x400, .pm4_bstrp_size = 0x06, .pfp_bstrp_size = 0x28, .pfp_bstrp_ver = 0x4ff091, }, };
drivers/gpu/msm/adreno.h +6 −0 Original line number Diff line number Diff line Loading @@ -118,6 +118,7 @@ enum adreno_gpurev { ADRENO_REV_A330 = 330, ADRENO_REV_A305B = 335, ADRENO_REV_A420 = 420, ADRENO_REV_A430 = 430, }; #define ADRENO_SOFT_FAULT BIT(0) Loading Loading @@ -800,6 +801,11 @@ static inline int adreno_is_a420(struct adreno_device *adreno_dev) return (ADRENO_GPUREV(adreno_dev) == ADRENO_REV_A420); } static inline int adreno_is_a430(struct adreno_device *adreno_dev) { return (ADRENO_GPUREV(adreno_dev) == ADRENO_REV_A430); } static inline int adreno_rb_ctxtswitch(unsigned int *cmd) { return (cmd[0] == cp_nop_packet(1) && Loading
drivers/gpu/msm/adreno_a4xx.c +11 −0 Original line number Diff line number Diff line Loading @@ -255,8 +255,19 @@ static const struct adreno_vbif_data a420_vbif[] = { {0, 0}, }; static const struct adreno_vbif_data a430_vbif[] = { { A4XX_VBIF_GATE_OFF_WRREQ_EN, 0x00000001 }, { A4XX_VBIF_IN_RD_LIM_CONF0, 0x18181818 }, { A4XX_VBIF_IN_RD_LIM_CONF1, 0x00000018 }, { A4XX_VBIF_IN_WR_LIM_CONF0, 0x18181818 }, { A4XX_VBIF_IN_WR_LIM_CONF1, 0x00000018 }, { A4XX_VBIF_ROUND_ROBIN_QOS_ARB, 0x00000003 }, {0, 0}, }; static const struct adreno_vbif_platform a4xx_vbif_platforms[] = { { adreno_is_a420, a420_vbif }, { adreno_is_a430, a430_vbif }, }; /* Loading