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

Commit 100ff4e1 authored by Jordan Crouse's avatar Jordan Crouse
Browse files

msm: kgsl: Move a6xx perfcounters to target specific



Migrate the a6xx perfcounters to target specific.  These counters
constitute the bulk of the specialized enable operations.  This also is
the place where VBIF gets replaced with GBIF so a630 gets its own set of
perfcounters and we have to double up the functions for a6xx.

Change-Id: Ic0dedbadf04fcafb46816c8b970af3bd32a57c7b
Signed-off-by: default avatarJordan Crouse <jcrouse@codeaurora.org>
parent cbc00716
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -40,6 +40,7 @@ msm_kgsl-y += \
	adreno_a6xx_hfi.o \
	adreno_a6xx_hwsched.o \
	adreno_a6xx_hwsched_hfi.o \
	adreno_a6xx_perfcounter.o \
	adreno_a6xx_preempt.o \
	adreno_a6xx_rgmu.o \
	adreno_a6xx_rpmh.o \
+0 −3
Original line number Diff line number Diff line
@@ -817,9 +817,6 @@ struct adreno_gpudev {
	bool (*sptprac_is_on)(struct adreno_device *adreno_dev);
	unsigned int (*ccu_invalidate)(struct adreno_device *adreno_dev,
				unsigned int *cmds);
	int (*perfcounter_update)(struct adreno_device *adreno_dev,
				struct adreno_perfcount_register *reg,
				bool update_reg);
	/** @read_alwayson: Return the current value of the alwayson counter */
	u64 (*read_alwayson)(struct adreno_device *adreno_dev);
	/**
+7 −417

File changed.

Preview size limit exceeded, changes collapsed.

+14 −0
Original line number Diff line number Diff line
@@ -393,4 +393,18 @@ bool a6xx_hw_isidle(struct adreno_device *adreno_dev);
 */
void a6xx_spin_idle_debug(struct adreno_device *adreno_dev,
	const char *str);

/**
 * a6xx_perfcounter_update - Update the IFPC perfcounter list
 * @adreno_dev: An Adreno GPU handle
 * @reg: Perfcounter reg struct to add/remove to the list
 * @update_reg: true if the perfcounter needs to be programmed by the CPU
 *
 * Return: 0 on success or -EBUSY if the lock couldn't be taken
 */
int a6xx_perfcounter_update(struct adreno_device *adreno_dev,
	struct adreno_perfcount_register *reg, bool update_reg);

extern struct adreno_perfcounters adreno_a630_perfcounters;
extern struct adreno_perfcounters adreno_a6xx_perfcounters;
#endif
+729 −0

File added.

Preview size limit exceeded, changes collapsed.

Loading