答复: [PATCH] drm/amdgpu: fix baco handling for soc15

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Reviewed-by: Jim Qu <Jim.Qu@xxxxxxx>

Thanks
JimQu

________________________________________
发件人: amd-gfx <amd-gfx-bounces@xxxxxxxxxxxxxxxxxxxxx> 代表 Grodzovsky, Andrey <Andrey.Grodzovsky@xxxxxxx>
发送时间: 2019年1月26日 5:03:30
收件人: Alex Deucher; amd-gfx@xxxxxxxxxxxxxxxxxxxxx
抄送: Deucher, Alexander
主题: Re: [PATCH] drm/amdgpu: fix baco handling for soc15

Reviewed-and-Tested-by: Andrey Grodzovsky <andrey.grodzovsky@xxxxxxx>

Andrey


On 01/25/2019 03:31 PM, Alex Deucher wrote:
> Need to check if the operation is one that involves
> registers before getting the register offset.  Fixes a
> crash in when handling commands without a register offset,
> e.g., wait.
>
> Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx>
> ---
>   drivers/gpu/drm/amd/powerplay/hwmgr/common_baco.c | 9 ++++++---
>   1 file changed, 6 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/powerplay/hwmgr/common_baco.c b/drivers/gpu/drm/amd/powerplay/hwmgr/common_baco.c
> index 002693c421d2..9c57c1f67749 100644
> --- a/drivers/gpu/drm/amd/powerplay/hwmgr/common_baco.c
> +++ b/drivers/gpu/drm/amd/powerplay/hwmgr/common_baco.c
> @@ -84,11 +84,14 @@ bool soc15_baco_program_registers(struct pp_hwmgr *hwmgr,
>                                const u32 array_size)
>   {
>       struct amdgpu_device *adev = (struct amdgpu_device *)(hwmgr->adev);
> -     u32 i, reg;
> +     u32 i, reg = 0;
>
>       for (i = 0; i < array_size; i++) {
> -             reg = adev->reg_offset[entry[i].hwip][entry[i].inst][entry[i].seg]
> -                     + entry[i].reg_offset;
> +             if ((entry[i].cmd == CMD_WRITE) ||
> +                 (entry[i].cmd == CMD_READMODIFYWRITE) ||
> +                 (entry[i].cmd == CMD_WAITFOR))
> +                     reg = adev->reg_offset[entry[i].hwip][entry[i].inst][entry[i].seg]
> +                             + entry[i].reg_offset;
>               if (!baco_cmd_handler(hwmgr, entry[i].cmd, reg, entry[i].mask,
>                                    entry[i].shift, entry[i].val, entry[i].timeout))
>                       return false;

_______________________________________________
amd-gfx mailing list
amd-gfx@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/amd-gfx
_______________________________________________
amd-gfx mailing list
amd-gfx@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/amd-gfx




[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux