[PATCH V3 00/44] VCN instance rework

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

 



These series reworks how instances are handled
for VCN to better split the state between instances.

This allows for per instance powergating and opens
the path to further splitting VCN IP blocks
per instance in the future if that is desirable. Per
instance powergating is needed for per engine resets
and can help save power on devices with multiple VCN
instances.

V3: Suggestions from Lijo, optimize fw binary storage

Alex Deucher (44):
  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/vcn5.0.1: split code along instances
  drm/amdgpu/vcn: switch work handler to be per instance
  drm/amdgpu/vcn: make powergating status per instance
  drm/amdgpu/vcn: move more instanced data to vcn_instance
  drm/amdgpu/vcn: switch vcn helpers to be instance based
  drm/amdgpu/vcn3.0: convert internal functions to use vcn_inst
  drm/amdgpu/vcn1.0: convert internal functions to use vcn_inst
  drm/amdgpu/vcn2.0: convert internal functions to use vcn_inst
  drm/amdgpu/vcn2.5: convert internal functions to use vcn_inst
  drm/amdgpu/vcn4.0: convert internal functions to use vcn_inst
  drm/amdgpu/vcn4.0.3: convert internal functions to use vcn_inst
  drm/amdgpu/vcn4.0.5: convert internal functions to use vcn_inst
  drm/amdgpu/vcn5.0.0: convert internal functions to use vcn_inst
  drm/amdgpu/vcn5.0.1: convert internal functions to use vcn_inst
  drm/amdgpu/vcn: adjust pause_dpg_mode function signature
  drm/amdgpu/vcn: add new per instance callback for powergating
  drm/amdgpu/vcn1.0: add set_pg_state callback
  drm/amdgpu/vcn2.0: add set_pg_state callback
  drm/amdgpu/vcn2.5: add set_pg_state callback
  drm/amdgpu/vcn3.0: add set_pg_state callback
  drm/amdgpu/vcn4.0: add set_pg_state callback
  drm/amdgpu/vcn4.0.3: add set_pg_state callback
  drm/amdgpu/vcn4.0.5: add set_pg_state callback
  drm/amdgpu/vcn5.0.0: add set_pg_state callback
  drm/amdgpu/vcn5.0.1: add set_pg_state callback
  drm/amdgpu/vcn: use per instance callbacks for idle work handler
  drm/amdgpu/vcn: add a generic helper for set_power_gating_state
  drm/amdgpu/vcn1.0: use generic set_power_gating_state helper
  drm/amdgpu/vcn2.0: use generic set_power_gating_state helper
  drm/amdgpu/vcn2.5: use generic set_power_gating_state helper
  drm/amdgpu/vcn3.0: use generic set_power_gating_state helper
  drm/amdgpu/vcn4.0: use generic set_power_gating_state helper
  drm/amdgpu/vcn4.0.3: use generic set_power_gating_state helper
  drm/amdgpu/vcn4.0.5: use generic set_power_gating_state helper
  drm/amdgpu/vcn5.0.0: use generic set_power_gating_state helper
  drm/amdgpu/vcn5.0.1: use generic set_power_gating_state helper
  drm/amdgpu/vcn: optimize firmware storage
  drm/amdgpu/vcn: use dev_info() for firmware information

 drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c   |    2 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c   |  464 ++++-----
 drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.h   |   47 +-
 drivers/gpu/drm/amd/amdgpu/jpeg_v1_0.c    |    6 +-
 drivers/gpu/drm/amd/amdgpu/vcn_v1_0.c     |  193 ++--
 drivers/gpu/drm/amd/amdgpu/vcn_v2_0.c     |  213 +++--
 drivers/gpu/drm/amd/amdgpu/vcn_v2_5.c     | 1033 +++++++++++----------
 drivers/gpu/drm/amd/amdgpu/vcn_v3_0.c     |  658 +++++++------
 drivers/gpu/drm/amd/amdgpu/vcn_v4_0.c     |  661 ++++++-------
 drivers/gpu/drm/amd/amdgpu/vcn_v4_0_3.c   |  611 ++++++------
 drivers/gpu/drm/amd/amdgpu/vcn_v4_0_5.c   |  647 +++++++------
 drivers/gpu/drm/amd/amdgpu/vcn_v5_0_0.c   |  588 ++++++------
 drivers/gpu/drm/amd/amdgpu/vcn_v5_0_1.c   |  499 +++++-----
 drivers/gpu/drm/amd/pm/swsmu/amdgpu_smu.c |    8 +-
 14 files changed, 2951 insertions(+), 2679 deletions(-)

-- 
2.48.1




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

  Powered by Linux