From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753260AbcICGtR (ORCPT ); Sat, 3 Sep 2016 02:49:17 -0400 Received: from slow1-d.mail.gandi.net ([217.70.178.86]:57761 "EHLO slow1-d.mail.gandi.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752034AbcICGtO (ORCPT ); Sat, 3 Sep 2016 02:49:14 -0400 X-Originating-IP: 1.129.74.12 Subject: Re: [PATCH] drm: amdgpu: mark symbols static where possible To: Baoyou Xie References: <1472882234-19385-1-git-send-email-baoyou.xie@linaro.org> <87039c12-01bd-557a-432d-b1807c44e423@folklore1984.net> Cc: alexander.deucher@amd.com, christian.koenig@amd.com, Dave Airlie , Rex.Zhu@amd.com, Jammy.Zhou@amd.com, elfring@users.sourceforge.net, ray.huang@amd.com, Young.Yang@amd.com, airlied@redhat.com, Mykola.Lysenko@amd.com, dan.carpenter@oracle.com, David1.Zhou@amd.com, Monk.Liu@amd.com, Jerry.Zhang@amd.com, samuel.li@amd.com, tom.stdenis@amd.com, Flora.Cui@amd.com, JinHuiEric.Huang@amd.com, dri-devel , Linux Kernel Mailing List , Arnd Bergmann , xie.baoyou@zte.com.cn From: "Edward O'Callaghan" Message-ID: Date: Sat, 3 Sep 2016 16:44:39 +1000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.2.0 MIME-Version: 1.0 In-Reply-To: Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="QuBIeCGIn98IKXvQJW57xHOca8itG5P1X" Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --QuBIeCGIn98IKXvQJW57xHOca8itG5P1X Content-Type: multipart/mixed; boundary="wxouqQuPGvf2JFFXgE9sAQtV0mhMLVQrq"; protected-headers="v1" From: Edward O'Callaghan To: Baoyou Xie Cc: alexander.deucher@amd.com, christian.koenig@amd.com, Dave Airlie , Rex.Zhu@amd.com, Jammy.Zhou@amd.com, elfring@users.sourceforge.net, ray.huang@amd.com, Young.Yang@amd.com, airlied@redhat.com, Mykola.Lysenko@amd.com, dan.carpenter@oracle.com, David1.Zhou@amd.com, Monk.Liu@amd.com, Jerry.Zhang@amd.com, samuel.li@amd.com, tom.stdenis@amd.com, Flora.Cui@amd.com, JinHuiEric.Huang@amd.com, dri-devel , Linux Kernel Mailing List , Arnd Bergmann , xie.baoyou@zte.com.cn Message-ID: Subject: Re: [PATCH] drm: amdgpu: mark symbols static where possible References: <1472882234-19385-1-git-send-email-baoyou.xie@linaro.org> <87039c12-01bd-557a-432d-b1807c44e423@folklore1984.net> In-Reply-To: --wxouqQuPGvf2JFFXgE9sAQtV0mhMLVQrq Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable On 09/03/2016 04:23 PM, Baoyou Xie wrote: > in drivers/gpu/drm/amd/powerplay/smumgr/cz_smumgr.c and > drivers/gpu/drm/amd/amdgpu/cz_smc.c, there are two functions named > cz_write_smc_sram_dword, but these two functions only have the same > name, but in fact they are different functions, even their declarations= > is different. Are you sure? Because apart from the crazy macro chain they look like they wind up being the same to me. >=20 > On 3 September 2016 at 14:11, Edward O'Callaghan > > wrot= e: >=20 > Reviewed-by: Edward O'Callaghan > >=20 > Also, I just noticed cz_write_smc_sram_dword() and if I am not mist= aken > 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. >=20 > 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 fol= low.. >=20 > Any way, that is out of scope of the patch here. >=20 > Kind Regards, > Edward. >=20 > On 09/03/2016 03:57 PM, Baoyou Xie wrote: > > We get a few warnings when building kernel with W=3D1: > > 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 previou= s > prototype for 'gfx_v8_0_rlc_stop' [-Wmissing-prototypes] > > drivers/gpu/drm/amd/amdgpu/amdgpu_job.c:94:6: warning: no previou= s > 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 > > > --- > > 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_devi= ce, > > +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_devi= ce, > > +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_jo= b > *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 =3D 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 =3D 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 limi= t) > > { > > 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 =3D 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 =3D 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 =3D 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 =3D 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 =3D RREG32_SMC(ixSMC_SYSCON_CLOCK_CNTL_0); > > > > >=20 >=20 --wxouqQuPGvf2JFFXgE9sAQtV0mhMLVQrq-- --QuBIeCGIn98IKXvQJW57xHOca8itG5P1X Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQIcBAEBCAAGBQJXynFXAAoJEP4bvbfZuWjbOqQQALE1n1yDUa5nysBbQMBqU3LI ksK22MG18PTW2YuSSS02CU0jfvstUCdz+Vpiq57WJH7zTsp7lmDtG6UqzxfIMUL0 OlMpHK0FVrVr9eOIFcsmlQODwQsosfc7ML7O3Po9Mv8zwaBS4Qk9Gra4FDpqbG8O acO+q+3VwbK+BR8cQzEcIlVKCOnrcCg3Ya6Qhl6HDsZihkp0q+73O3/MqZTQ8tbB 4asGQ5khs7yHzBAzOcjTlgg83sfXf3USgBs5AwP4mINAoKErAiXtXZgdvLL9uHs+ VfLmjc4KENMbI6UrClogA72/s5vKh4wDfDfL0qgRa1KJaeWJopFLFRU06TLlBPma vVK6irMoGmKWvCCMbXWbXyViLT5pCGC90jbrC9jiLoqNABZo/8ESdRfWdohAMupr qP4FrXgPuQ4sOmVPwbWZpUzr8fi0+d+lhp6Su8313jXPmxJLnlQrFjQC6pn285HW hpeMMXjCrU+TTNsLMSMcevXuS2w3igkPUVotZcLHJqTyjnP03o11cmOTcA92LiZk ct1XlT9u15Yg+oRAb2894ZjklgRjHioWH/saoA83ELy8DJjnDsODMQhnT7wXL//0 8PsV6pgqJaJSSlQ8rX+XtgjSv2iaUf4ViOSclT+L60b4hKtmQuwA5k8XlCoKxr9x dC84bNpvx8xEh3iMV6kd =MUfk -----END PGP SIGNATURE----- --QuBIeCGIn98IKXvQJW57xHOca8itG5P1X--