Loading drivers/gpu/msm/adreno.c +1 −1 Original line number Diff line number Diff line Loading @@ -98,7 +98,7 @@ static struct adreno_device device_3d0 = { .input_work = __WORK_INITIALIZER(device_3d0.input_work, adreno_input_work), .pwrctrl_flag = BIT(ADRENO_SPTP_PC_CTRL) | BIT(ADRENO_PPD_CTRL) | BIT(ADRENO_LM_CTRL), BIT(ADRENO_LM_CTRL) | BIT(ADRENO_HWCG_CTRL), .profile.enabled = false, }; Loading drivers/gpu/msm/adreno.h +1 −0 Original line number Diff line number Diff line Loading @@ -186,6 +186,7 @@ enum adreno_gpurev { #define ADRENO_SPTP_PC_CTRL 0 #define ADRENO_PPD_CTRL 1 #define ADRENO_LM_CTRL 2 #define ADRENO_HWCG_CTRL 3 /* number of throttle counters for DCVS adjustment */ #define ADRENO_GPMU_THROTTLE_COUNTERS 4 Loading drivers/gpu/msm/adreno_a5xx.c +3 −0 Original line number Diff line number Diff line Loading @@ -1197,6 +1197,9 @@ static void a5xx_hwcg_init(struct adreno_device *adreno_dev) const struct kgsl_hwcg_reg *regs; int i, j; if (!test_bit(ADRENO_HWCG_CTRL, &adreno_dev->pwrctrl_flag)) return; for (i = 0; i < ARRAY_SIZE(a5xx_hwcg_registers); i++) { if (a5xx_hwcg_registers[i].devfunc(adreno_dev)) break; Loading drivers/gpu/msm/adreno_sysfs.c +14 −0 Original line number Diff line number Diff line Loading @@ -190,6 +190,17 @@ static unsigned int _preemption_show(struct adreno_device *adreno_dev) return adreno_is_preemption_enabled(adreno_dev); } static int _hwcg_store(struct adreno_device *adreno_dev, unsigned int val) { return _pwrctrl_store(adreno_dev, val, ADRENO_HWCG_CTRL); } static unsigned int _hwcg_show(struct adreno_device *adreno_dev) { return test_bit(ADRENO_HWCG_CTRL, &adreno_dev->pwrctrl_flag); } static int _sptp_pc_store(struct adreno_device *adreno_dev, unsigned int val) { Loading Loading @@ -303,6 +314,8 @@ static DEVICE_INT_ATTR(wake_timeout, 0644, adreno_wake_timeout); static ADRENO_SYSFS_BOOL(sptp_pc); static ADRENO_SYSFS_BOOL(lm); static ADRENO_SYSFS_BOOL(preemption); static ADRENO_SYSFS_BOOL(hwcg); static const struct device_attribute *_attr_list[] = { &adreno_attr_ft_policy.attr, Loading @@ -315,6 +328,7 @@ static const struct device_attribute *_attr_list[] = { &adreno_attr_sptp_pc.attr, &adreno_attr_lm.attr, &adreno_attr_preemption.attr, &adreno_attr_hwcg.attr, NULL, }; Loading Loading
drivers/gpu/msm/adreno.c +1 −1 Original line number Diff line number Diff line Loading @@ -98,7 +98,7 @@ static struct adreno_device device_3d0 = { .input_work = __WORK_INITIALIZER(device_3d0.input_work, adreno_input_work), .pwrctrl_flag = BIT(ADRENO_SPTP_PC_CTRL) | BIT(ADRENO_PPD_CTRL) | BIT(ADRENO_LM_CTRL), BIT(ADRENO_LM_CTRL) | BIT(ADRENO_HWCG_CTRL), .profile.enabled = false, }; Loading
drivers/gpu/msm/adreno.h +1 −0 Original line number Diff line number Diff line Loading @@ -186,6 +186,7 @@ enum adreno_gpurev { #define ADRENO_SPTP_PC_CTRL 0 #define ADRENO_PPD_CTRL 1 #define ADRENO_LM_CTRL 2 #define ADRENO_HWCG_CTRL 3 /* number of throttle counters for DCVS adjustment */ #define ADRENO_GPMU_THROTTLE_COUNTERS 4 Loading
drivers/gpu/msm/adreno_a5xx.c +3 −0 Original line number Diff line number Diff line Loading @@ -1197,6 +1197,9 @@ static void a5xx_hwcg_init(struct adreno_device *adreno_dev) const struct kgsl_hwcg_reg *regs; int i, j; if (!test_bit(ADRENO_HWCG_CTRL, &adreno_dev->pwrctrl_flag)) return; for (i = 0; i < ARRAY_SIZE(a5xx_hwcg_registers); i++) { if (a5xx_hwcg_registers[i].devfunc(adreno_dev)) break; Loading
drivers/gpu/msm/adreno_sysfs.c +14 −0 Original line number Diff line number Diff line Loading @@ -190,6 +190,17 @@ static unsigned int _preemption_show(struct adreno_device *adreno_dev) return adreno_is_preemption_enabled(adreno_dev); } static int _hwcg_store(struct adreno_device *adreno_dev, unsigned int val) { return _pwrctrl_store(adreno_dev, val, ADRENO_HWCG_CTRL); } static unsigned int _hwcg_show(struct adreno_device *adreno_dev) { return test_bit(ADRENO_HWCG_CTRL, &adreno_dev->pwrctrl_flag); } static int _sptp_pc_store(struct adreno_device *adreno_dev, unsigned int val) { Loading Loading @@ -303,6 +314,8 @@ static DEVICE_INT_ATTR(wake_timeout, 0644, adreno_wake_timeout); static ADRENO_SYSFS_BOOL(sptp_pc); static ADRENO_SYSFS_BOOL(lm); static ADRENO_SYSFS_BOOL(preemption); static ADRENO_SYSFS_BOOL(hwcg); static const struct device_attribute *_attr_list[] = { &adreno_attr_ft_policy.attr, Loading @@ -315,6 +328,7 @@ static const struct device_attribute *_attr_list[] = { &adreno_attr_sptp_pc.attr, &adreno_attr_lm.attr, &adreno_attr_preemption.attr, &adreno_attr_hwcg.attr, NULL, }; Loading