Loading drivers/gpu/msm/kgsl_pwrctrl.c +3 −0 Original line number Diff line number Diff line Loading @@ -28,6 +28,7 @@ #include "kgsl_device.h" #include "kgsl_trace.h" #include "kgsl_gmu_core.h" #include "kgsl_trace_power.h" #define KGSL_PWRFLAGS_POWER_ON 0 #define KGSL_PWRFLAGS_CLK_ON 1 Loading Loading @@ -492,6 +493,8 @@ void kgsl_pwrctrl_pwrlevel_change(struct kgsl_device *device, pwr->previous_pwrlevel, pwr->pwrlevels[old_level].gpu_freq); trace_gpu_frequency(pwrlevel->gpu_freq/1000, 0); /* * Some targets do not support the bandwidth requirement of * GPU at TURBO, for such targets we need to set GPU-BIMC Loading drivers/gpu/msm/kgsl_trace.c +4 −1 Original line number Diff line number Diff line /* Copyright (c) 2011, 2013, 2015 The Linux Foundation. All rights reserved. /* Copyright (c) 2011, 2013, 2015, 2019 The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and Loading @@ -19,8 +19,11 @@ /* Instantiate tracepoints */ #define CREATE_TRACE_POINTS #include "kgsl_trace.h" #include "kgsl_trace_power.h" EXPORT_TRACEPOINT_SYMBOL(kgsl_regwrite); EXPORT_TRACEPOINT_SYMBOL(kgsl_issueibcmds); EXPORT_TRACEPOINT_SYMBOL(kgsl_user_pwrlevel_constraint); EXPORT_TRACEPOINT_SYMBOL(kgsl_constraint); EXPORT_TRACEPOINT_SYMBOL(gpu_frequency); drivers/gpu/msm/kgsl_trace_power.h 0 → 100644 +49 −0 Original line number Diff line number Diff line /* Copyright (c) 2019, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and * only version 2 as published by the Free Software Foundation. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * */ #if !defined(_KGSL_TRACE_POWER_H) || defined(TRACE_HEADER_MULTI_READ) #define _KGSL_TRACE_POWER_H #undef TRACE_SYSTEM #define TRACE_SYSTEM power #undef TRACE_INCLUDE_FILE #define TRACE_INCLUDE_FILE kgsl_trace_power #include <linux/tracepoint.h> /** * gpu_frequency - Reports frequency changes in GPU clock domains * @state: New frequency (in KHz) * @gpu_id: GPU clock domain */ TRACE_EVENT(gpu_frequency, TP_PROTO(unsigned int state, unsigned int gpu_id), TP_ARGS(state, gpu_id), TP_STRUCT__entry( __field(unsigned int, state) __field(unsigned int, gpu_id) ), TP_fast_assign( __entry->state = state; __entry->gpu_id = gpu_id; ), TP_printk("state=%lu gpu_id=%lu", (unsigned long)__entry->state, (unsigned long)__entry->gpu_id) ); #endif /* _KGSL_TRACE_POWER_H */ /* This part must be outside protection */ #include <trace/define_trace.h> Loading
drivers/gpu/msm/kgsl_pwrctrl.c +3 −0 Original line number Diff line number Diff line Loading @@ -28,6 +28,7 @@ #include "kgsl_device.h" #include "kgsl_trace.h" #include "kgsl_gmu_core.h" #include "kgsl_trace_power.h" #define KGSL_PWRFLAGS_POWER_ON 0 #define KGSL_PWRFLAGS_CLK_ON 1 Loading Loading @@ -492,6 +493,8 @@ void kgsl_pwrctrl_pwrlevel_change(struct kgsl_device *device, pwr->previous_pwrlevel, pwr->pwrlevels[old_level].gpu_freq); trace_gpu_frequency(pwrlevel->gpu_freq/1000, 0); /* * Some targets do not support the bandwidth requirement of * GPU at TURBO, for such targets we need to set GPU-BIMC Loading
drivers/gpu/msm/kgsl_trace.c +4 −1 Original line number Diff line number Diff line /* Copyright (c) 2011, 2013, 2015 The Linux Foundation. All rights reserved. /* Copyright (c) 2011, 2013, 2015, 2019 The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and Loading @@ -19,8 +19,11 @@ /* Instantiate tracepoints */ #define CREATE_TRACE_POINTS #include "kgsl_trace.h" #include "kgsl_trace_power.h" EXPORT_TRACEPOINT_SYMBOL(kgsl_regwrite); EXPORT_TRACEPOINT_SYMBOL(kgsl_issueibcmds); EXPORT_TRACEPOINT_SYMBOL(kgsl_user_pwrlevel_constraint); EXPORT_TRACEPOINT_SYMBOL(kgsl_constraint); EXPORT_TRACEPOINT_SYMBOL(gpu_frequency);
drivers/gpu/msm/kgsl_trace_power.h 0 → 100644 +49 −0 Original line number Diff line number Diff line /* Copyright (c) 2019, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and * only version 2 as published by the Free Software Foundation. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * */ #if !defined(_KGSL_TRACE_POWER_H) || defined(TRACE_HEADER_MULTI_READ) #define _KGSL_TRACE_POWER_H #undef TRACE_SYSTEM #define TRACE_SYSTEM power #undef TRACE_INCLUDE_FILE #define TRACE_INCLUDE_FILE kgsl_trace_power #include <linux/tracepoint.h> /** * gpu_frequency - Reports frequency changes in GPU clock domains * @state: New frequency (in KHz) * @gpu_id: GPU clock domain */ TRACE_EVENT(gpu_frequency, TP_PROTO(unsigned int state, unsigned int gpu_id), TP_ARGS(state, gpu_id), TP_STRUCT__entry( __field(unsigned int, state) __field(unsigned int, gpu_id) ), TP_fast_assign( __entry->state = state; __entry->gpu_id = gpu_id; ), TP_printk("state=%lu gpu_id=%lu", (unsigned long)__entry->state, (unsigned long)__entry->gpu_id) ); #endif /* _KGSL_TRACE_POWER_H */ /* This part must be outside protection */ #include <trace/define_trace.h>