[PATCH 1/2] drm/amdgpu: fix re-program vm invalidate eng address range for gfxhub on resume

Christian König christian.koenig at amd.com
Wed May 17 08:42:37 UTC 2017


Am 17.05.2017 um 10:22 schrieb zhoucm1:
>
>
> On 2017年05月17日 16:19, Christian König wrote:
>> Am 17.05.2017 um 10:11 schrieb zhoucm1:
>>>
>>>
>>> On 2017年05月17日 15:55, Huang Rui wrote:
>>>> On Wed, May 17, 2017 at 03:43:47PM +0800, Zhou, David(ChunMing) wrote:
>>>>> By this change, I suggest to remove mmhub/gfxhub_v1_0_ip_funcs and 
>>>>> their
>>>>> IP block, unify them to gmc ip block, this way we cannot lost setting
>>>>> when resume back.
>>>>>
>>>>  From hw side, wo won't have real gmc since this chip, mmhub and 
>>>> gfxhub(gc)
>>>> instead of it. Maybe we would better to align with hw desgin.
>>> I don't see any advance, as you said, we still have gmc block in 
>>> soc15, why not unify mmhub/gfxhub calls to gmc block?
>>> We can keep mmhub/gfxhub_xxx.c file, but ip_funciton isn't necessary.
>>
>> Well they are two hardware block, but are mostly identical programmed 
>> (the MMHUB has a few more bits for guaranteed bandwith, but we ignore 
>> those at the moment).
>>
>> So it doesn't make much sense having two separate code instances to 
>> handle them.
>>
>> One major problem still remaining is that our generated register 
>> headers are crap for this. You can't for example include both headers 
>> at the same time.
> As I said before, we can keep these two seperate files, just remove 
> ip_functions, but call them from gmc file.
> like gmc_v9_init()
> {
>     gfxhub_init();
>     mmhub_init();
> }

The init order isn't so critical here. My concern is rather that we have 
the duplicated code.

But I agree that we sooner or later should clean up the init order on 
load/resume to be the same.

Regards,
Christian.

>
> Regards,
> David Zhou
>>
>> Regards,
>> Christian.
>>
>>>
>>> Regards,
>>> David Zhou
>>>>
>>>> Thanks,
>>>> Rui
>>>>
>>>>> Regards,
>>>>> David Zhou
>>>>>
>>>>> On 2017年05月17日 15:38, Huang Rui wrote:
>>>>>> Signed-off-by: Huang Rui <ray.huang at amd.com>
>>>>>> ---
>>>>>>    drivers/gpu/drm/amd/amdgpu/gfxhub_v1_0.c | 2 +-
>>>>>>    1 file changed, 1 insertion(+), 1 deletion(-)
>>>>>>
>>>>>> diff --git a/drivers/gpu/drm/amd/amdgpu/gfxhub_v1_0.c 
>>>>>> b/drivers/gpu/drm/amd/
>>>>> amdgpu/gfxhub_v1_0.c
>>>>>> index 005075f..41313514 100644
>>>>>> --- a/drivers/gpu/drm/amd/amdgpu/gfxhub_v1_0.c
>>>>>> +++ b/drivers/gpu/drm/amd/amdgpu/gfxhub_v1_0.c
>>>>>> @@ -368,7 +368,7 @@ static int gfxhub_v1_0_suspend(void *handle)
>>>>>>      static int gfxhub_v1_0_resume(void *handle)
>>>>>>    {
>>>>>> -     return 0;
>>>>>> +     return gfxhub_v1_0_hw_init(handle);
>>>>>>    }
>>>>>>      static bool gfxhub_v1_0_is_idle(void *handle)
>>>> _______________________________________________
>>>> amd-gfx mailing list
>>>> amd-gfx at lists.freedesktop.org
>>>> https://lists.freedesktop.org/mailman/listinfo/amd-gfx
>>>
>>
>



More information about the amd-gfx mailing list