Messages in this thread | | | Date | Tue, 26 Jul 2022 09:06:55 -0300 | Subject | Re: [PATCH 1/2] drm/amd/display: change variables type | From | Magali Lemes <> |
| |
On 7/25/22 20:38, Melissa Wen wrote:
> On 07/25, Magali Lemes wrote: >> On 7/25/22 16:42, André Almeida wrote: >>> Hi Magali, >>> >>> Às 15:15 de 25/07/22, Magali Lemes escreveu: >>>> As "dcn3_15_soc" and "dcn3_16_soc" are of type "struct >>>> _vcs_dpi_soc_bounding_box_st", change their types accordingly. >>>> >>> I can see that indeed this type change sense for those variables, but >>> isn't a bit strange that the type was wrong in the first place? I wonder >>> if this variable is even used, given that it would very likely throw a >>> compiler error when using the wrong type and trying to access struct >>> members that aren't defined. >> >> A compilation error would be thrown if either "dc/dcn315/dcn315_resource.h" >> or "dc/dcn316/dcn316_resource.h" were included in the files where >> "dcn3_15_soc" and "dcn3_16_soc" are initialized. Since they are not >> included, the wrong variable type error is not shown. >> To solve the sparse warning in the second patch of this series, those >> variables need to be declared first, but they are already declared, we're >> only missing the headers. If I only add the headers, then those variables >> will be seen, and I get the expected incompatible variables types error. So, >> fixing the types here is a preliminary work for the next patch. >> > Hi Magali, > > Thanks for inspecting it. What you say makes sense, but André pointed > out something that makes sense to me too. > > As fas as I checked, dcn3_15_soc and dcn16_soc is not used outside their > respective FPU files. Maybe the proper solution is removing those > declarations (and make the struct static). Can you take a look at it? > > Best Regards, > > Melissa
Hi, Melissa. Thank you for the suggestion! My sole reason not to make those structs static was to keep some sort of consistency with the rest of the dcn*_resource.h files, since that is where all the other structs are first declared. I'm not sure, though, if that's a good enough reason not to turn these variables into static. Let me know what you think.
Magali
> Magali > > >>>> Signed-off-by: Magali Lemes <magalilemes00@gmail.com> >>>> --- >>>> drivers/gpu/drm/amd/display/dc/dcn315/dcn315_resource.h | 2 +- >>>> drivers/gpu/drm/amd/display/dc/dcn316/dcn316_resource.h | 2 +- >>>> 2 files changed, 2 insertions(+), 2 deletions(-) >>>> >>>> diff --git a/drivers/gpu/drm/amd/display/dc/dcn315/dcn315_resource.h b/drivers/gpu/drm/amd/display/dc/dcn315/dcn315_resource.h >>>> index 39929fa67a51..45276317c057 100644 >>>> --- a/drivers/gpu/drm/amd/display/dc/dcn315/dcn315_resource.h >>>> +++ b/drivers/gpu/drm/amd/display/dc/dcn315/dcn315_resource.h >>>> @@ -32,7 +32,7 @@ >>>> container_of(pool, struct dcn315_resource_pool, base) >>>> extern struct _vcs_dpi_ip_params_st dcn3_15_ip; >>>> -extern struct _vcs_dpi_ip_params_st dcn3_15_soc; >>>> +extern struct _vcs_dpi_soc_bounding_box_st dcn3_15_soc; >>>> struct dcn315_resource_pool { >>>> struct resource_pool base; >>>> diff --git a/drivers/gpu/drm/amd/display/dc/dcn316/dcn316_resource.h b/drivers/gpu/drm/amd/display/dc/dcn316/dcn316_resource.h >>>> index 0dc5a6c13ae7..d2234aac5449 100644 >>>> --- a/drivers/gpu/drm/amd/display/dc/dcn316/dcn316_resource.h >>>> +++ b/drivers/gpu/drm/amd/display/dc/dcn316/dcn316_resource.h >>>> @@ -32,7 +32,7 @@ >>>> container_of(pool, struct dcn316_resource_pool, base) >>>> extern struct _vcs_dpi_ip_params_st dcn3_16_ip; >>>> -extern struct _vcs_dpi_ip_params_st dcn3_16_soc; >>>> +extern struct _vcs_dpi_soc_bounding_box_st dcn3_16_soc; >>>> struct dcn316_resource_pool { >>>> struct resource_pool base;
| |