Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit bfccbb45 authored by Linux Build Service Account's avatar Linux Build Service Account Committed by Gerrit - the friendly Code Review server
Browse files

Merge "msm: kgsl: Add support for A430 GPU for MSM8994"

parents 1f47e01d 3de6d33d
Loading
Loading
Loading
Loading
+20 −0
Original line number Diff line number Diff line
@@ -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,
	},
};
+6 −0
Original line number Diff line number Diff line
@@ -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)
@@ -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) &&
+11 −0
Original line number Diff line number Diff line
@@ -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 },
};

/*