Ping on this series! On Wed, Nov 13, 2024 at 4:54 PM Alex Deucher <alexander.deucher@xxxxxxx> wrote: > > The original design of amdgpu called for separate IP blocks for each > instance of an IP on an SoC. This never really came to be however for > a variety of reasons. Boyuan's recent rework was able to get back to > that model, but in doing so it uncovered a lot of corner cases and > regressions. In fxing them up it became clear that at this point it > was not worth. This patch set partially reverts that work and reworks > it to align with the current model of having each IP module handle > all instances. While I was working on this, I noticed a few bugs as > well and they are fixed up. > > Patch 1: > Partially revert the previous VCN instance rework. This retains the > smu interface changes to handle per IP powergating. It only reverts > the spliting of VCN into per IP instances. This also reverts some of > Jesse's vcn sysfs changes as it made the revert easier and there were > some cut and paste typos in the patches. > > Patches 2-3: > Repply Jesse's sysfs changes with typos fixed. > > Patches 4: > JPEG bug fix I noticed while working on the code. > > Patches 5-10: > Rework the instance handling within the VCN IP modules. > > Patch 11: > Switch the VCN idle work handler to be per instance rather than per IP. > > Patch 12: > Store clockgating status per instance rather than per IP > > Patch 13-15: > Add new IP level per instance powergating callbacks and enable them > for VCN. > > Alex Deucher (13): > drm/amdgpu: partially revert VCN IP block instancing support > drm/amdgpu/jpeg: cancel the jpeg worker > drm/amdgpu/vcn2.5: split code along instances > drm/amdgpu/vcn3.0: split code along instances > drm/amdgpu/vcn4.0: split code along instances > drm/amdgpu/vcn4.0.3: split code along instances > drm/amdgpu/vcn4.0.5: split code along instances > drm/amdgpu/vcn5.0.0: split code along instances > drm/amdgpu/vcn: switch work handler to be per instance > drm/amdgpu/vcn: make powergating status per instance > drm/amdgpu: add new IP callback for per instance powergating > drm/amdgpu/vcn: add new instanced powergating IP callback > drm/amdgpu/vcn: update work handler for per instance powergating > > Jesse Zhang (1): > drm/amdgpu: fix warning when removing sysfs > > Jesse.zhang@xxxxxxx (1): > drm/amdgpu: Add sysfs interface for vcn reset mask > > drivers/gpu/drm/amd/amdgpu/amdgpu.h | 10 +- > drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 67 +- > drivers/gpu/drm/amd/amdgpu/amdgpu_discovery.c | 23 +- > drivers/gpu/drm/amd/amdgpu/amdgpu_jpeg.c | 4 +- > drivers/gpu/drm/amd/amdgpu/amdgpu_reset.c | 13 +- > drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c | 4 +- > drivers/gpu/drm/amd/amdgpu/amdgpu_vce.c | 4 +- > drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c | 334 +++--- > drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.h | 28 +- > drivers/gpu/drm/amd/amdgpu/amdgpu_vpe.c | 8 +- > drivers/gpu/drm/amd/amdgpu/jpeg_v1_0.c | 2 +- > drivers/gpu/drm/amd/amdgpu/jpeg_v2_0.c | 2 +- > drivers/gpu/drm/amd/amdgpu/jpeg_v2_5.c | 2 +- > drivers/gpu/drm/amd/amdgpu/jpeg_v3_0.c | 2 +- > drivers/gpu/drm/amd/amdgpu/jpeg_v4_0.c | 2 +- > drivers/gpu/drm/amd/amdgpu/jpeg_v4_0_5.c | 2 +- > drivers/gpu/drm/amd/amdgpu/jpeg_v5_0_0.c | 2 +- > drivers/gpu/drm/amd/amdgpu/uvd_v3_1.c | 2 +- > drivers/gpu/drm/amd/amdgpu/uvd_v4_2.c | 2 +- > drivers/gpu/drm/amd/amdgpu/uvd_v5_0.c | 2 +- > drivers/gpu/drm/amd/amdgpu/uvd_v6_0.c | 2 +- > drivers/gpu/drm/amd/amdgpu/uvd_v7_0.c | 2 +- > drivers/gpu/drm/amd/amdgpu/vce_v2_0.c | 2 +- > drivers/gpu/drm/amd/amdgpu/vce_v3_0.c | 2 +- > drivers/gpu/drm/amd/amdgpu/vce_v4_0.c | 2 +- > drivers/gpu/drm/amd/amdgpu/vcn_v1_0.c | 146 +-- > drivers/gpu/drm/amd/amdgpu/vcn_v2_0.c | 129 +- > drivers/gpu/drm/amd/amdgpu/vcn_v2_5.c | 1043 +++++++++-------- > drivers/gpu/drm/amd/amdgpu/vcn_v3_0.c | 725 ++++++------ > drivers/gpu/drm/amd/amdgpu/vcn_v4_0.c | 625 +++++----- > drivers/gpu/drm/amd/amdgpu/vcn_v4_0_3.c | 457 ++++---- > drivers/gpu/drm/amd/amdgpu/vcn_v4_0_5.c | 585 ++++----- > drivers/gpu/drm/amd/amdgpu/vcn_v5_0_0.c | 534 +++++---- > drivers/gpu/drm/amd/include/amd_shared.h | 3 + > drivers/gpu/drm/amd/pm/amdgpu_dpm.c | 6 +- > drivers/gpu/drm/amd/pm/legacy-dpm/kv_dpm.c | 8 +- > .../drm/amd/pm/powerplay/hwmgr/smu10_hwmgr.c | 6 +- > .../powerplay/hwmgr/smu7_clockpowergating.c | 12 +- > .../drm/amd/pm/powerplay/hwmgr/smu8_hwmgr.c | 12 +- > .../drm/amd/pm/powerplay/hwmgr/vega20_hwmgr.c | 6 +- > drivers/gpu/drm/amd/pm/swsmu/amdgpu_smu.c | 14 +- > 41 files changed, 2523 insertions(+), 2313 deletions(-) > > -- > 2.47.0 >