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.hu...@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@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx




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

Reply via email to