* Re: [PATCH] drm: amdgpu: mark symbols static where possible
2016-09-03 5:57 [PATCH] drm: amdgpu: mark symbols static where possible Baoyou Xie
@ 2016-09-03 6:11 ` Edward O'Callaghan
[not found] ` <CA+DQWkyb7xV_9o7dE4rfiy33=8_q5sfpWoTgbW8zig3f2FAoMQ@mail.gmail.com>
2016-09-03 8:12 ` Christian König
2016-09-03 9:10 ` Huang Rui
2 siblings, 1 reply; 5+ messages in thread
From: Edward O'Callaghan @ 2016-09-03 6:11 UTC (permalink / raw)
To: Baoyou Xie, alexander.deucher, christian.koenig, airlied, Rex.Zhu,
Jammy.Zhou, elfring, ray.huang, Young.Yang, airlied,
Mykola.Lysenko, dan.carpenter, David1.Zhou, Monk.Liu, Jerry.Zhang,
samuel.li, tom.stdenis, Flora.Cui, JinHuiEric.Huang
Cc: dri-devel, linux-kernel, arnd, xie.baoyou
[-- Attachment #1.1: Type: text/plain, Size: 7009 bytes --]
Reviewed-by: Edward O'Callaghan <funfunctor@folklore1984.net>
Also, I just noticed cz_write_smc_sram_dword() and if I am not mistaken
they seems identical in both:
drivers/gpu/drm/amd/powerplay/smumgr/cz_smumgr.c and,
drivers/gpu/drm/amd/amdgpu/cz_smc.c
with a personal preference to the powerplay version I suppose.
Similar story with cz_send_msg_to_smc_async() *I think* but the
powerplay one uses some insane macro chain that dispatches to some
function called smum_wait_for_register_unequal(), quite hard to follow..
Any way, that is out of scope of the patch here.
Kind Regards,
Edward.
On 09/03/2016 03:57 PM, Baoyou Xie wrote:
> We get a few warnings when building kernel with W=1:
> drivers/gpu/drm/amd/amdgpu/cz_smc.c:51:5: warning: no previous prototype for 'cz_send_msg_to_smc_async' [-Wmissing-prototypes]
> drivers/gpu/drm/amd/amdgpu/cz_smc.c:143:5: warning: no previous prototype for 'cz_write_smc_sram_dword' [-Wmissing-prototypes]
> drivers/gpu/drm/amd/amdgpu/iceland_smc.c:124:6: warning: no previous prototype for 'iceland_start_smc' [-Wmissing-prototypes]
> drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c:3926:6: warning: no previous prototype for 'gfx_v8_0_rlc_stop' [-Wmissing-prototypes]
> drivers/gpu/drm/amd/amdgpu/amdgpu_job.c:94:6: warning: no previous prototype for 'amdgpu_job_free_cb' [-Wmissing-prototypes]
> ....
>
> In fact, these functions are only used in the file in which they are
> declared and don't need a declaration, but can be made static.
> So this patch marks these functions with 'static'.
>
> Signed-off-by: Baoyou Xie <baoyou.xie@linaro.org>
> ---
> drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c | 4 ++--
> drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c | 2 +-
> drivers/gpu/drm/amd/amdgpu/amdgpu_job.c | 2 +-
> drivers/gpu/drm/amd/amdgpu/cz_smc.c | 4 ++--
> drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c | 2 +-
> drivers/gpu/drm/amd/amdgpu/iceland_smc.c | 8 ++++----
> 6 files changed, 11 insertions(+), 11 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c
> index bc0440f..a831218 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c
> @@ -616,7 +616,7 @@ static int amdgpu_cgs_irq_put(struct cgs_device *cgs_device, unsigned src_id, un
> return amdgpu_irq_put(adev, adev->irq.sources[src_id], type);
> }
>
> -int amdgpu_cgs_set_clockgating_state(struct cgs_device *cgs_device,
> +static int amdgpu_cgs_set_clockgating_state(struct cgs_device *cgs_device,
> enum amd_ip_block_type block_type,
> enum amd_clockgating_state state)
> {
> @@ -637,7 +637,7 @@ int amdgpu_cgs_set_clockgating_state(struct cgs_device *cgs_device,
> return r;
> }
>
> -int amdgpu_cgs_set_powergating_state(struct cgs_device *cgs_device,
> +static int amdgpu_cgs_set_powergating_state(struct cgs_device *cgs_device,
> enum amd_ip_block_type block_type,
> enum amd_powergating_state state)
> {
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c
> index 0307ff5..f65bdaf 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c
> @@ -287,7 +287,7 @@ static u64 amdgpu_cs_get_threshold_for_moves(struct amdgpu_device *adev)
> return max(bytes_moved_threshold, 1024*1024ull);
> }
>
> -int amdgpu_cs_list_validate(struct amdgpu_cs_parser *p,
> +static int amdgpu_cs_list_validate(struct amdgpu_cs_parser *p,
> struct list_head *validated)
> {
> struct amdgpu_bo_list_entry *lobj;
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_job.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_job.c
> index 6674d40..31bfe3a 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_job.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_job.c
> @@ -91,7 +91,7 @@ void amdgpu_job_free_resources(struct amdgpu_job *job)
> amdgpu_ib_free(job->adev, &job->ibs[i], f);
> }
>
> -void amdgpu_job_free_cb(struct amd_sched_job *s_job)
> +static void amdgpu_job_free_cb(struct amd_sched_job *s_job)
> {
> struct amdgpu_job *job = container_of(s_job, struct amdgpu_job, base);
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/cz_smc.c b/drivers/gpu/drm/amd/amdgpu/cz_smc.c
> index ac7fee7..c80c2e9 100644
> --- a/drivers/gpu/drm/amd/amdgpu/cz_smc.c
> +++ b/drivers/gpu/drm/amd/amdgpu/cz_smc.c
> @@ -48,7 +48,7 @@ static struct cz_smu_private_data *cz_smu_get_priv(struct amdgpu_device *adev)
> return priv;
> }
>
> -int cz_send_msg_to_smc_async(struct amdgpu_device *adev, u16 msg)
> +static int cz_send_msg_to_smc_async(struct amdgpu_device *adev, u16 msg)
> {
> int i;
> u32 content = 0, tmp;
> @@ -140,7 +140,7 @@ int cz_read_smc_sram_dword(struct amdgpu_device *adev, u32 smc_address,
> return 0;
> }
>
> -int cz_write_smc_sram_dword(struct amdgpu_device *adev, u32 smc_address,
> +static int cz_write_smc_sram_dword(struct amdgpu_device *adev, u32 smc_address,
> u32 value, u32 limit)
> {
> int ret;
> diff --git a/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c b/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c
> index bff8668..6997f7c 100644
> --- a/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c
> +++ b/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c
> @@ -3923,7 +3923,7 @@ static void gfx_v8_0_init_pg(struct amdgpu_device *adev)
> }
> }
>
> -void gfx_v8_0_rlc_stop(struct amdgpu_device *adev)
> +static void gfx_v8_0_rlc_stop(struct amdgpu_device *adev)
> {
> u32 tmp = RREG32(mmRLC_CNTL);
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/iceland_smc.c b/drivers/gpu/drm/amd/amdgpu/iceland_smc.c
> index 2118399..ef7c27d 100644
> --- a/drivers/gpu/drm/amd/amdgpu/iceland_smc.c
> +++ b/drivers/gpu/drm/amd/amdgpu/iceland_smc.c
> @@ -121,7 +121,7 @@ out:
> return result;
> }
>
> -void iceland_start_smc(struct amdgpu_device *adev)
> +static void iceland_start_smc(struct amdgpu_device *adev)
> {
> uint32_t val = RREG32_SMC(ixSMC_SYSCON_RESET_CNTL);
>
> @@ -129,7 +129,7 @@ void iceland_start_smc(struct amdgpu_device *adev)
> WREG32_SMC(ixSMC_SYSCON_RESET_CNTL, val);
> }
>
> -void iceland_reset_smc(struct amdgpu_device *adev)
> +static void iceland_reset_smc(struct amdgpu_device *adev)
> {
> uint32_t val = RREG32_SMC(ixSMC_SYSCON_RESET_CNTL);
>
> @@ -145,7 +145,7 @@ static int iceland_program_jump_on_start(struct amdgpu_device *adev)
> return 0;
> }
>
> -void iceland_stop_smc_clock(struct amdgpu_device *adev)
> +static void iceland_stop_smc_clock(struct amdgpu_device *adev)
> {
> uint32_t val = RREG32_SMC(ixSMC_SYSCON_CLOCK_CNTL_0);
>
> @@ -153,7 +153,7 @@ void iceland_stop_smc_clock(struct amdgpu_device *adev)
> WREG32_SMC(ixSMC_SYSCON_CLOCK_CNTL_0, val);
> }
>
> -void iceland_start_smc_clock(struct amdgpu_device *adev)
> +static void iceland_start_smc_clock(struct amdgpu_device *adev)
> {
> uint32_t val = RREG32_SMC(ixSMC_SYSCON_CLOCK_CNTL_0);
>
>
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 819 bytes --]
^ permalink raw reply [flat|nested] 5+ messages in thread* Re: [PATCH] drm: amdgpu: mark symbols static where possible
2016-09-03 5:57 [PATCH] drm: amdgpu: mark symbols static where possible Baoyou Xie
2016-09-03 6:11 ` Edward O'Callaghan
@ 2016-09-03 8:12 ` Christian König
2016-09-03 9:10 ` Huang Rui
2 siblings, 0 replies; 5+ messages in thread
From: Christian König @ 2016-09-03 8:12 UTC (permalink / raw)
To: Baoyou Xie, alexander.deucher, airlied, Rex.Zhu, Jammy.Zhou,
elfring, ray.huang, Young.Yang, airlied, Mykola.Lysenko,
dan.carpenter, David1.Zhou, Monk.Liu, Jerry.Zhang, samuel.li,
tom.stdenis, Flora.Cui, JinHuiEric.Huang, funfunctor
Cc: dri-devel, linux-kernel, arnd, xie.baoyou
Am 03.09.2016 um 07:57 schrieb Baoyou Xie:
> We get a few warnings when building kernel with W=1:
> drivers/gpu/drm/amd/amdgpu/cz_smc.c:51:5: warning: no previous prototype for 'cz_send_msg_to_smc_async' [-Wmissing-prototypes]
> drivers/gpu/drm/amd/amdgpu/cz_smc.c:143:5: warning: no previous prototype for 'cz_write_smc_sram_dword' [-Wmissing-prototypes]
> drivers/gpu/drm/amd/amdgpu/iceland_smc.c:124:6: warning: no previous prototype for 'iceland_start_smc' [-Wmissing-prototypes]
> drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c:3926:6: warning: no previous prototype for 'gfx_v8_0_rlc_stop' [-Wmissing-prototypes]
> drivers/gpu/drm/amd/amdgpu/amdgpu_job.c:94:6: warning: no previous prototype for 'amdgpu_job_free_cb' [-Wmissing-prototypes]
> ....
>
> In fact, these functions are only used in the file in which they are
> declared and don't need a declaration, but can be made static.
> So this patch marks these functions with 'static'.
>
> Signed-off-by: Baoyou Xie <baoyou.xie@linaro.org>
Reviewed-by: Christian König <christian.koenig@amd.com>.
> ---
> drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c | 4 ++--
> drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c | 2 +-
> drivers/gpu/drm/amd/amdgpu/amdgpu_job.c | 2 +-
> drivers/gpu/drm/amd/amdgpu/cz_smc.c | 4 ++--
> drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c | 2 +-
> drivers/gpu/drm/amd/amdgpu/iceland_smc.c | 8 ++++----
> 6 files changed, 11 insertions(+), 11 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c
> index bc0440f..a831218 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c
> @@ -616,7 +616,7 @@ static int amdgpu_cgs_irq_put(struct cgs_device *cgs_device, unsigned src_id, un
> return amdgpu_irq_put(adev, adev->irq.sources[src_id], type);
> }
>
> -int amdgpu_cgs_set_clockgating_state(struct cgs_device *cgs_device,
> +static int amdgpu_cgs_set_clockgating_state(struct cgs_device *cgs_device,
> enum amd_ip_block_type block_type,
> enum amd_clockgating_state state)
> {
> @@ -637,7 +637,7 @@ int amdgpu_cgs_set_clockgating_state(struct cgs_device *cgs_device,
> return r;
> }
>
> -int amdgpu_cgs_set_powergating_state(struct cgs_device *cgs_device,
> +static int amdgpu_cgs_set_powergating_state(struct cgs_device *cgs_device,
> enum amd_ip_block_type block_type,
> enum amd_powergating_state state)
> {
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c
> index 0307ff5..f65bdaf 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c
> @@ -287,7 +287,7 @@ static u64 amdgpu_cs_get_threshold_for_moves(struct amdgpu_device *adev)
> return max(bytes_moved_threshold, 1024*1024ull);
> }
>
> -int amdgpu_cs_list_validate(struct amdgpu_cs_parser *p,
> +static int amdgpu_cs_list_validate(struct amdgpu_cs_parser *p,
> struct list_head *validated)
> {
> struct amdgpu_bo_list_entry *lobj;
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_job.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_job.c
> index 6674d40..31bfe3a 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_job.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_job.c
> @@ -91,7 +91,7 @@ void amdgpu_job_free_resources(struct amdgpu_job *job)
> amdgpu_ib_free(job->adev, &job->ibs[i], f);
> }
>
> -void amdgpu_job_free_cb(struct amd_sched_job *s_job)
> +static void amdgpu_job_free_cb(struct amd_sched_job *s_job)
> {
> struct amdgpu_job *job = container_of(s_job, struct amdgpu_job, base);
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/cz_smc.c b/drivers/gpu/drm/amd/amdgpu/cz_smc.c
> index ac7fee7..c80c2e9 100644
> --- a/drivers/gpu/drm/amd/amdgpu/cz_smc.c
> +++ b/drivers/gpu/drm/amd/amdgpu/cz_smc.c
> @@ -48,7 +48,7 @@ static struct cz_smu_private_data *cz_smu_get_priv(struct amdgpu_device *adev)
> return priv;
> }
>
> -int cz_send_msg_to_smc_async(struct amdgpu_device *adev, u16 msg)
> +static int cz_send_msg_to_smc_async(struct amdgpu_device *adev, u16 msg)
> {
> int i;
> u32 content = 0, tmp;
> @@ -140,7 +140,7 @@ int cz_read_smc_sram_dword(struct amdgpu_device *adev, u32 smc_address,
> return 0;
> }
>
> -int cz_write_smc_sram_dword(struct amdgpu_device *adev, u32 smc_address,
> +static int cz_write_smc_sram_dword(struct amdgpu_device *adev, u32 smc_address,
> u32 value, u32 limit)
> {
> int ret;
> diff --git a/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c b/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c
> index bff8668..6997f7c 100644
> --- a/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c
> +++ b/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c
> @@ -3923,7 +3923,7 @@ static void gfx_v8_0_init_pg(struct amdgpu_device *adev)
> }
> }
>
> -void gfx_v8_0_rlc_stop(struct amdgpu_device *adev)
> +static void gfx_v8_0_rlc_stop(struct amdgpu_device *adev)
> {
> u32 tmp = RREG32(mmRLC_CNTL);
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/iceland_smc.c b/drivers/gpu/drm/amd/amdgpu/iceland_smc.c
> index 2118399..ef7c27d 100644
> --- a/drivers/gpu/drm/amd/amdgpu/iceland_smc.c
> +++ b/drivers/gpu/drm/amd/amdgpu/iceland_smc.c
> @@ -121,7 +121,7 @@ out:
> return result;
> }
>
> -void iceland_start_smc(struct amdgpu_device *adev)
> +static void iceland_start_smc(struct amdgpu_device *adev)
> {
> uint32_t val = RREG32_SMC(ixSMC_SYSCON_RESET_CNTL);
>
> @@ -129,7 +129,7 @@ void iceland_start_smc(struct amdgpu_device *adev)
> WREG32_SMC(ixSMC_SYSCON_RESET_CNTL, val);
> }
>
> -void iceland_reset_smc(struct amdgpu_device *adev)
> +static void iceland_reset_smc(struct amdgpu_device *adev)
> {
> uint32_t val = RREG32_SMC(ixSMC_SYSCON_RESET_CNTL);
>
> @@ -145,7 +145,7 @@ static int iceland_program_jump_on_start(struct amdgpu_device *adev)
> return 0;
> }
>
> -void iceland_stop_smc_clock(struct amdgpu_device *adev)
> +static void iceland_stop_smc_clock(struct amdgpu_device *adev)
> {
> uint32_t val = RREG32_SMC(ixSMC_SYSCON_CLOCK_CNTL_0);
>
> @@ -153,7 +153,7 @@ void iceland_stop_smc_clock(struct amdgpu_device *adev)
> WREG32_SMC(ixSMC_SYSCON_CLOCK_CNTL_0, val);
> }
>
> -void iceland_start_smc_clock(struct amdgpu_device *adev)
> +static void iceland_start_smc_clock(struct amdgpu_device *adev)
> {
> uint32_t val = RREG32_SMC(ixSMC_SYSCON_CLOCK_CNTL_0);
>
^ permalink raw reply [flat|nested] 5+ messages in thread* Re: [PATCH] drm: amdgpu: mark symbols static where possible
2016-09-03 5:57 [PATCH] drm: amdgpu: mark symbols static where possible Baoyou Xie
2016-09-03 6:11 ` Edward O'Callaghan
2016-09-03 8:12 ` Christian König
@ 2016-09-03 9:10 ` Huang Rui
2 siblings, 0 replies; 5+ messages in thread
From: Huang Rui @ 2016-09-03 9:10 UTC (permalink / raw)
To: Baoyou Xie
Cc: alexander.deucher, christian.koenig, airlied, Rex.Zhu, Jammy.Zhou,
elfring, Young.Yang, airlied, Mykola.Lysenko, dan.carpenter,
David1.Zhou, Monk.Liu, Jerry.Zhang, samuel.li, tom.stdenis,
Flora.Cui, JinHuiEric.Huang, funfunctor, dri-devel, linux-kernel,
arnd, xie.baoyou
On Sat, Sep 03, 2016 at 01:57:14PM +0800, Baoyou Xie wrote:
> We get a few warnings when building kernel with W=1:
> drivers/gpu/drm/amd/amdgpu/cz_smc.c:51:5: warning: no previous prototype for 'cz_send_msg_to_smc_async' [-Wmissing-prototypes]
> drivers/gpu/drm/amd/amdgpu/cz_smc.c:143:5: warning: no previous prototype for 'cz_write_smc_sram_dword' [-Wmissing-prototypes]
> drivers/gpu/drm/amd/amdgpu/iceland_smc.c:124:6: warning: no previous prototype for 'iceland_start_smc' [-Wmissing-prototypes]
> drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c:3926:6: warning: no previous prototype for 'gfx_v8_0_rlc_stop' [-Wmissing-prototypes]
> drivers/gpu/drm/amd/amdgpu/amdgpu_job.c:94:6: warning: no previous prototype for 'amdgpu_job_free_cb' [-Wmissing-prototypes]
> ....
>
> In fact, these functions are only used in the file in which they are
> declared and don't need a declaration, but can be made static.
> So this patch marks these functions with 'static'.
>
> Signed-off-by: Baoyou Xie <baoyou.xie@linaro.org>
Thanks.
Acked-by: Huang Rui <ray.huang@amd.com>
^ permalink raw reply [flat|nested] 5+ messages in thread