RE: [PATCH] drm/amd/display: Fully switch to dmub for all dcn21 asics

2021-10-18 Thread Li, Roman
[Public]

> -Original Message-
> From: Wentland, Harry 
> Sent: Monday, October 18, 2021 9:57 AM
> To: Limonciello, Mario ; Li, Roman
> ; amd-gfx@lists.freedesktop.org; Deucher, Alexander
> ; Siqueira, Rodrigo
> 
> Cc: sta...@vger.kernel.org
> Subject: Re: [PATCH] drm/amd/display: Fully switch to dmub for all dcn21 asics
>
>
>
> On 2021-10-18 09:41, Limonciello, Mario wrote:
> > On 10/15/2021 17:31, roman...@amd.com wrote:
> >> From: Roman Li 
> >>
> >> [Why]
> >> On renoir usb-c port stops functioning on resume after f/w update.
> >> New dmub firmware caused regression due to conflict with dmcu.
> >> With new dmub f/w dmcu is superseded and should be disabled.
> >>
> >> [How]
> >> - Disable dmcu for all dcn21.
> >>
> >> Check dmesg for dmub f/w version.
> >> The old firmware (before regression):
> >> [drm] DMUB hardware initialized: version=0x0001 All other
> >> versions require that patch for renoir.
> >>
> >> Bug: https://gitlab.freedesktop.org/drm/amd/-/issues/1735>>> Cc:
> >> sta...@vger.kernel.org
> >
> > This won't backport cleanly to stable 5.15 and earlier don't use IP version 
> > to
> detect the chip.
> >
> > Also - a question: *should* this go to stable?  If a user has the older FW 
> > what
> happens with this change?
> >
>
> Good point. Might be better of we drop Cc: stable from this patch
>
> Harry

I will drop  Cc: sta...@vger.kernel.org, thank you Mario and Harry.
- Roman

> >> Signed-off-by: Roman Li 
> >> ---
> >>   drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 3 +--
> >>   1 file changed, 1 insertion(+), 2 deletions(-)
> >>
> >> diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> >> b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> >> index ff54550..e56f73e 100644
> >> --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> >> +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> >> @@ -1356,8 +1356,7 @@ static int amdgpu_dm_init(struct amdgpu_device
> >> *adev)
> >>   switch (adev->ip_versions[DCE_HWIP][0]) {
> >>   case IP_VERSION(2, 1, 0):
> >>   init_data.flags.gpu_vm_support = true;
> >> -if (ASICREV_IS_GREEN_SARDINE(adev->external_rev_id))
> >> -init_data.flags.disable_dmcu = true;
> >> +init_data.flags.disable_dmcu = true;
> >>   break;
> >>   case IP_VERSION(1, 0, 0):
> >>   case IP_VERSION(1, 0, 1):
> >>
> >



Re: [PATCH] drm/amd/display: Fully switch to dmub for all dcn21 asics

2021-10-18 Thread Harry Wentland



On 2021-10-18 09:41, Limonciello, Mario wrote:
> On 10/15/2021 17:31, roman...@amd.com wrote:
>> From: Roman Li 
>>
>> [Why]
>> On renoir usb-c port stops functioning on resume after f/w update.
>> New dmub firmware caused regression due to conflict with dmcu.
>> With new dmub f/w dmcu is superseded and should be disabled.
>>
>> [How]
>> - Disable dmcu for all dcn21.
>>
>> Check dmesg for dmub f/w version.
>> The old firmware (before regression):
>> [drm] DMUB hardware initialized: version=0x0001
>> All other versions require that patch for renoir.
>>
>> Bug: https://gitlab.freedesktop.org/drm/amd/-/issues/1735>>> Cc: 
>> sta...@vger.kernel.org
> 
> This won't backport cleanly to stable 5.15 and earlier don't use IP version 
> to detect the chip.
> 
> Also - a question: *should* this go to stable?  If a user has the older FW 
> what happens with this change?
> 

Good point. Might be better of we drop Cc: stable from this patch

Harry

>> Signed-off-by: Roman Li 
>> ---
>>   drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 3 +--
>>   1 file changed, 1 insertion(+), 2 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c 
>> b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
>> index ff54550..e56f73e 100644
>> --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
>> +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
>> @@ -1356,8 +1356,7 @@ static int amdgpu_dm_init(struct amdgpu_device *adev)
>>   switch (adev->ip_versions[DCE_HWIP][0]) {
>>   case IP_VERSION(2, 1, 0):
>>   init_data.flags.gpu_vm_support = true;
>> -    if (ASICREV_IS_GREEN_SARDINE(adev->external_rev_id))
>> -    init_data.flags.disable_dmcu = true;
>> +    init_data.flags.disable_dmcu = true;
>>   break;
>>   case IP_VERSION(1, 0, 0):
>>   case IP_VERSION(1, 0, 1):
>>
> 



Re: [PATCH] drm/amd/display: Fully switch to dmub for all dcn21 asics

2021-10-18 Thread Limonciello, Mario

On 10/15/2021 17:31, roman...@amd.com wrote:

From: Roman Li 

[Why]
On renoir usb-c port stops functioning on resume after f/w update.
New dmub firmware caused regression due to conflict with dmcu.
With new dmub f/w dmcu is superseded and should be disabled.

[How]
- Disable dmcu for all dcn21.

Check dmesg for dmub f/w version.
The old firmware (before regression):
[drm] DMUB hardware initialized: version=0x0001
All other versions require that patch for renoir.

Bug: https://gitlab.freedesktop.org/drm/amd/-/issues/1735
Cc: sta...@vger.kernel.org


This won't backport cleanly to stable 5.15 and earlier don't use IP 
version to detect the chip.


Also - a question: *should* this go to stable?  If a user has the older 
FW what happens with this change?



Signed-off-by: Roman Li 
---
  drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 3 +--
  1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c 
b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
index ff54550..e56f73e 100644
--- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
+++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
@@ -1356,8 +1356,7 @@ static int amdgpu_dm_init(struct amdgpu_device *adev)
switch (adev->ip_versions[DCE_HWIP][0]) {
case IP_VERSION(2, 1, 0):
init_data.flags.gpu_vm_support = true;
-   if (ASICREV_IS_GREEN_SARDINE(adev->external_rev_id))
-   init_data.flags.disable_dmcu = true;
+   init_data.flags.disable_dmcu = true;
break;
case IP_VERSION(1, 0, 0):
case IP_VERSION(1, 0, 1):





Re: [PATCH] drm/amd/display: Fully switch to dmub for all dcn21 asics

2021-10-18 Thread Limonciello, Mario

On 10/18/2021 08:38, Harry Wentland wrote:

On 2021-10-15 18:31, roman...@amd.com wrote:

From: Roman Li 

[Why]
On renoir usb-c port stops functioning on resume after f/w update.
New dmub firmware caused regression due to conflict with dmcu.
With new dmub f/w dmcu is superseded and should be disabled.

[How]
- Disable dmcu for all dcn21.

Check dmesg for dmub f/w version.
The old firmware (before regression):
[drm] DMUB hardware initialized: version=0x0001
All other versions require that patch for renoir.

Bug: https://gitlab.freedesktop.org/drm/amd/-/issues/1735
Cc: sta...@vger.kernel.org
Signed-off-by: Roman Li 


Reviewed-by: Harry Wentland 


Tested-by: Mario Limonciello 



Harry


---
  drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 3 +--
  1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c 
b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
index ff54550..e56f73e 100644
--- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
+++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
@@ -1356,8 +1356,7 @@ static int amdgpu_dm_init(struct amdgpu_device *adev)
switch (adev->ip_versions[DCE_HWIP][0]) {
case IP_VERSION(2, 1, 0):
init_data.flags.gpu_vm_support = true;
-   if (ASICREV_IS_GREEN_SARDINE(adev->external_rev_id))
-   init_data.flags.disable_dmcu = true;
+   init_data.flags.disable_dmcu = true;
break;
case IP_VERSION(1, 0, 0):
case IP_VERSION(1, 0, 1):







Re: [PATCH] drm/amd/display: Fully switch to dmub for all dcn21 asics

2021-10-18 Thread Harry Wentland
On 2021-10-15 18:31, roman...@amd.com wrote:
> From: Roman Li 
> 
> [Why]
> On renoir usb-c port stops functioning on resume after f/w update.
> New dmub firmware caused regression due to conflict with dmcu.
> With new dmub f/w dmcu is superseded and should be disabled.
> 
> [How]
> - Disable dmcu for all dcn21.
> 
> Check dmesg for dmub f/w version.
> The old firmware (before regression):
> [drm] DMUB hardware initialized: version=0x0001
> All other versions require that patch for renoir.
> 
> Bug: https://gitlab.freedesktop.org/drm/amd/-/issues/1735
> Cc: sta...@vger.kernel.org
> Signed-off-by: Roman Li 

Reviewed-by: Harry Wentland 

Harry

> ---
>  drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 3 +--
>  1 file changed, 1 insertion(+), 2 deletions(-)
> 
> diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c 
> b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> index ff54550..e56f73e 100644
> --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> @@ -1356,8 +1356,7 @@ static int amdgpu_dm_init(struct amdgpu_device *adev)
>   switch (adev->ip_versions[DCE_HWIP][0]) {
>   case IP_VERSION(2, 1, 0):
>   init_data.flags.gpu_vm_support = true;
> - if (ASICREV_IS_GREEN_SARDINE(adev->external_rev_id))
> - init_data.flags.disable_dmcu = true;
> + init_data.flags.disable_dmcu = true;
>   break;
>   case IP_VERSION(1, 0, 0):
>   case IP_VERSION(1, 0, 1):
> 



Re: [PATCH] drm/amd/display: Fully switch to dmub for all dcn21 asics

2021-10-18 Thread Alex Deucher
On Fri, Oct 15, 2021 at 6:33 PM  wrote:
>
> From: Roman Li 
>
> [Why]
> On renoir usb-c port stops functioning on resume after f/w update.
> New dmub firmware caused regression due to conflict with dmcu.
> With new dmub f/w dmcu is superseded and should be disabled.
>
> [How]
> - Disable dmcu for all dcn21.
>
> Check dmesg for dmub f/w version.
> The old firmware (before regression):
> [drm] DMUB hardware initialized: version=0x0001
> All other versions require that patch for renoir.
>
> Bug: https://gitlab.freedesktop.org/drm/amd/-/issues/1735
> Cc: sta...@vger.kernel.org
> Signed-off-by: Roman Li 

Acked-by: Alex Deucher 

> ---
>  drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 3 +--
>  1 file changed, 1 insertion(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c 
> b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> index ff54550..e56f73e 100644
> --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> @@ -1356,8 +1356,7 @@ static int amdgpu_dm_init(struct amdgpu_device *adev)
> switch (adev->ip_versions[DCE_HWIP][0]) {
> case IP_VERSION(2, 1, 0):
> init_data.flags.gpu_vm_support = true;
> -   if (ASICREV_IS_GREEN_SARDINE(adev->external_rev_id))
> -   init_data.flags.disable_dmcu = true;
> +   init_data.flags.disable_dmcu = true;
> break;
> case IP_VERSION(1, 0, 0):
> case IP_VERSION(1, 0, 1):
> --
> 2.7.4
>