|
Revision tags: v6.15, v6.15-rc7, v6.15-rc6, v6.15-rc5, v6.15-rc4, v6.15-rc3, v6.15-rc2, v6.15-rc1, v6.14, v6.14-rc7 |
|
| #
3b669df9 |
| 14-Mar-2025 |
Alex Deucher <[email protected]> |
drm/amdgpu/vcn: adjust workload profile handling
No need to make the workload profile setup dependent on the results of cancelling the delayed work thread. We have all of the necessary checking in p
drm/amdgpu/vcn: adjust workload profile handling
No need to make the workload profile setup dependent on the results of cancelling the delayed work thread. We have all of the necessary checking in place for the workload profile reference counting, so separate the two. As it is now, we can theoretically end up with the call from begin_use happening while the worker thread is executing which would result in the profile not getting set for that submission. It should not affect the reference counting.
v2: bail early if the the profile is already active (Lijo)
Reviewed-by: Lijo Lazar <[email protected]> Signed-off-by: Alex Deucher <[email protected]>
show more ...
|
| #
ca6575a3 |
| 12-Mar-2025 |
Alex Deucher <[email protected]> |
drm/amdgpu/vcn: fix ref counting for ring based profile handling
We need to make sure the workload profile ref counts are balanced. This isn't currently the case because we can increment the count
drm/amdgpu/vcn: fix ref counting for ring based profile handling
We need to make sure the workload profile ref counts are balanced. This isn't currently the case because we can increment the count on submissions, but the decrement may be delayed as work comes in. Track when we enable the workload profile so the references are balanced.
v2: switch to a mutex and active flag v3: fix mutex init
Fixes: 1443dd3c67f6 ("drm/amd/pm: fix and simplify workload handling") Cc: Yang Wang <[email protected]> Cc: Kenneth Feng <[email protected]> Reviewed-by: Kenneth Feng <[email protected]> Signed-off-by: Alex Deucher <[email protected]>
show more ...
|
|
Revision tags: v6.14-rc6, v6.14-rc5, v6.14-rc4, v6.14-rc3, v6.14-rc2, v6.14-rc1, v6.13, v6.13-rc7 |
|
| #
4d1b6535 |
| 07-Jan-2025 |
Alex Deucher <[email protected]> |
drm/amdgpu/vcn: use dev_info() for firmware information
To properly handle multiple GPUs.
Reviewed-by: Boyuan Zhang <[email protected]> Signed-off-by: Alex Deucher <[email protected]>
|
| #
c51aa792 |
| 07-Jan-2025 |
Alex Deucher <[email protected]> |
drm/amdgpu/vcn: optimize firmware storage
If each instance uses the same fw image, only store one copy in the driver.
Acked-by: Boyuan Zhang <[email protected]> Signed-off-by: Alex Deucher <alex
drm/amdgpu/vcn: optimize firmware storage
If each instance uses the same fw image, only store one copy in the driver.
Acked-by: Boyuan Zhang <[email protected]> Signed-off-by: Alex Deucher <[email protected]>
show more ...
|
|
Revision tags: v6.13-rc6, v6.13-rc5, v6.13-rc4, v6.13-rc3, v6.13-rc2, v6.13-rc1 |
|
| #
a2cf2a88 |
| 26-Nov-2024 |
Alex Deucher <[email protected]> |
drm/amdgpu/vcn: add a generic helper for set_power_gating_state
It's common for all VCN variants.
Reviewed-by: Boyuan Zhang <[email protected]> Signed-off-by: Alex Deucher <alexander.deucher@amd
drm/amdgpu/vcn: add a generic helper for set_power_gating_state
It's common for all VCN variants.
Reviewed-by: Boyuan Zhang <[email protected]> Signed-off-by: Alex Deucher <[email protected]>
show more ...
|
| #
4ce4fe27 |
| 26-Nov-2024 |
Alex Deucher <[email protected]> |
drm/amdgpu/vcn: use per instance callbacks for idle work handler
Use the vcn instance power gating callbacks rather than the IP powergating callback. This limits power gating to only the instance i
drm/amdgpu/vcn: use per instance callbacks for idle work handler
Use the vcn instance power gating callbacks rather than the IP powergating callback. This limits power gating to only the instance in use rather than all of the instances.
Reviewed-by: Boyuan Zhang <[email protected]> Signed-off-by: Alex Deucher <[email protected]>
show more ...
|
| #
64303b72 |
| 26-Nov-2024 |
Alex Deucher <[email protected]> |
drm/amdgpu/vcn: adjust pause_dpg_mode function signature
Change it to take a vcn instance rather than adev to align with the vcn instance changes.
TODO: clean up the function internals to use the v
drm/amdgpu/vcn: adjust pause_dpg_mode function signature
Change it to take a vcn instance rather than adev to align with the vcn instance changes.
TODO: clean up the function internals to use the vinst state directly rather than accessing it indirectly via adev->vcn.inst[].
Reviewed-by: Boyuan Zhang <[email protected]> Signed-off-by: Alex Deucher <[email protected]>
show more ...
|
|
Revision tags: v6.12 |
|
| #
f9867563 |
| 15-Nov-2024 |
Alex Deucher <[email protected]> |
drm/amdgpu/vcn: switch vcn helpers to be instance based
Pass the instance to the helpers.
Reviewed-by: Boyuan Zhang <[email protected]> Signed-off-by: Alex Deucher <[email protected]>
|
| #
cb107271 |
| 15-Nov-2024 |
Alex Deucher <[email protected]> |
drm/amdgpu/vcn: move more instanced data to vcn_instance
Move more per instance data into the per instance structure.
v2: index instances directly on vcn1.0 and 2.0 to make it clear that they only
drm/amdgpu/vcn: move more instanced data to vcn_instance
Move more per instance data into the per instance structure.
v2: index instances directly on vcn1.0 and 2.0 to make it clear that they only support a single instance (Lijo) v3: fix typo on vcn 2.5
Reviewed-by: Boyuan Zhang <[email protected]> (v2) Signed-off-by: Alex Deucher <[email protected]>
show more ...
|
| #
bee48570 |
| 13-Nov-2024 |
Alex Deucher <[email protected]> |
drm/amdgpu/vcn: switch work handler to be per instance
Have a separate work handler for each VCN instance. This paves the way for per instance VCN power gating at runtime.
v2: index instances direc
drm/amdgpu/vcn: switch work handler to be per instance
Have a separate work handler for each VCN instance. This paves the way for per instance VCN power gating at runtime.
v2: index instances directly on vcn1.0 and 2.0 to make it clear that they only support a single instance (Lijo)
Reviewed-by: Boyuan Zhang <[email protected]> Signed-off-by: Alex Deucher <[email protected]>
show more ...
|
| #
0014952b |
| 06-Dec-2024 |
Pierre-Eric Pelloux-Prayer <[email protected]> |
drm/amdgpu: drop the amdgpu_device argument from amdgpu_ib_free
It's unused.
Signed-off-by: Pierre-Eric Pelloux-Prayer <[email protected]> Reviewed-by: Alex Deucher <alexander.deuc
drm/amdgpu: drop the amdgpu_device argument from amdgpu_ib_free
It's unused.
Signed-off-by: Pierre-Eric Pelloux-Prayer <[email protected]> Reviewed-by: Alex Deucher <[email protected]> Reviewed-by: Christian König <[email protected]> Signed-off-by: Alex Deucher <[email protected]>
show more ...
|
|
Revision tags: v6.12-rc7, v6.12-rc6, v6.12-rc5, v6.12-rc4, v6.12-rc3 |
|
| #
346492f3 |
| 12-Oct-2024 |
Sonny Jiang <[email protected]> |
drm/amdgpu: Add VCN_5_0_1 support
Add vcn support for VCN_5_0_1
v2: rebase, squash in fixes (Alex)
Signed-off-by: Sonny Jiang <[email protected]> Acked-by: Leo Liu <[email protected]> Signed-off-by:
drm/amdgpu: Add VCN_5_0_1 support
Add vcn support for VCN_5_0_1
v2: rebase, squash in fixes (Alex)
Signed-off-by: Sonny Jiang <[email protected]> Acked-by: Leo Liu <[email protected]> Signed-off-by: Alex Deucher <[email protected]>
show more ...
|
| #
fdce10ff |
| 12-Oct-2024 |
Sonny Jiang <[email protected]> |
drm/amdgpu: Add VCN_5_0_1 firmware
Add vcn_5_0_1 firmware support
Signed-off-by: Sonny Jiang <[email protected]> Acked-by: Leo Liu <[email protected]> Signed-off-by: Alex Deucher <alexander.deucher@am
drm/amdgpu: Add VCN_5_0_1 firmware
Add vcn_5_0_1 firmware support
Signed-off-by: Sonny Jiang <[email protected]> Acked-by: Leo Liu <[email protected]> Signed-off-by: Alex Deucher <[email protected]>
show more ...
|
| #
ea5d4934 |
| 03-Dec-2024 |
Mario Limonciello <[email protected]> |
drm/amd: Add the capability to mark certain firmware as "required"
Some of the firmware that is loaded by amdgpu is not actually required. For example the ISP firmware on some SoCs is optional, and
drm/amd: Add the capability to mark certain firmware as "required"
Some of the firmware that is loaded by amdgpu is not actually required. For example the ISP firmware on some SoCs is optional, and if it's not present the ISP IP block just won't be initialized.
The firmware loader core however will show a warning when this happens like this: ``` Direct firmware load for amdgpu/isp_4_1_0.bin failed with error -2 ```
To avoid confusion for non-required firmware, adjust the amd-ucode helper to take an extra argument indicating if the firmware is required or optional.
On optional firmware use firmware_request_nowarn() instead of request_firmware() to avoid the warnings.
Reviewed-by: Alex Deucher <[email protected]> Link: https://lore.kernel.org/amd-gfx/[email protected]/T/#t Signed-off-by: Mario Limonciello <[email protected]> Signed-off-by: Alex Deucher <[email protected]>
show more ...
|
| #
de258d06 |
| 29-Nov-2024 |
Sathishkumar S <[email protected]> |
drm/amdgpu: Add amdgpu_vcn_sched_mask debugfs
Add debugfs entry to enable or disable job submission to specific vcn instances. The entry is created only when there is more than an instance and is un
drm/amdgpu: Add amdgpu_vcn_sched_mask debugfs
Add debugfs entry to enable or disable job submission to specific vcn instances. The entry is created only when there is more than an instance and is unified queue type.
Signed-off-by: Sathishkumar S <[email protected]> Reviewed-by: Jesse Zhang <[email protected]> Signed-off-by: Alex Deucher <[email protected]>
show more ...
|
| #
cf1aa9ff |
| 07-Oct-2024 |
Boyuan Zhang <[email protected]> |
drm/amdgpu: move per inst variables to amdgpu_vcn_inst
Move all per instance variables from amdgpu_vcn to amdgpu_vcn_inst.
Move adev->vcn.fw[i] from amdgpu_vcn to amdgpu_vcn_inst. Move adev->vcn.vc
drm/amdgpu: move per inst variables to amdgpu_vcn_inst
Move all per instance variables from amdgpu_vcn to amdgpu_vcn_inst.
Move adev->vcn.fw[i] from amdgpu_vcn to amdgpu_vcn_inst. Move adev->vcn.vcn_config[i] from amdgpu_vcn to amdgpu_vcn_inst. Move adev->vcn.vcn_codec_disable_mask[i] from amdgpu_vcn to amdgpu_vcn_inst.
Signed-off-by: Boyuan Zhang <[email protected]> Reviewed-by: Christian König <[email protected]> Reviewed-by: Alex Deucher <[email protected]> Signed-off-by: Alex Deucher <[email protected]>
show more ...
|
| #
2f1b1352 |
| 18-Nov-2024 |
[email protected] <[email protected]> |
drm/amdgpu: Fix sysfs warning when hotplugging
Fix the similar warning when hotplugging:
[ 155.585721] kernfs: can not remove 'enforce_isolation', no directory [ 155.592201] WARNING: CPU: 3 PID:
drm/amdgpu: Fix sysfs warning when hotplugging
Fix the similar warning when hotplugging:
[ 155.585721] kernfs: can not remove 'enforce_isolation', no directory [ 155.592201] WARNING: CPU: 3 PID: 6960 at fs/kernfs/dir.c:1683 kernfs_remove_by_name_ns+0xb9/0xc0 [ 155.601145] Modules linked in: xt_MASQUERADE xt_comment nft_compat veth bridge stp llc overlay nft_fib_inet nft_fib_ipv4 nft_fib_ipv6 nft_fib nft_reject_inet nf_reject_ipv4 nf_reject_ipv6 nft_reject nft_ct nft_chain_nat nf_nat nf_conntrack nf_defrag_ipv6 nf_defrag_ipv4 ip_set nf_tables nfnetlink qrtr intel_rapl_msr amd_atl intel_rapl_common amd64_edac edac_mce_amd amdgpu kvm_amd kvm ipmi_ssif amdxcp rapl drm_exec gpu_sched drm_buddy i2c_algo_bit drm_suballoc_helper drm_ttm_helper ttm pcspkr drm_display_helper acpi_cpufreq drm_kms_helper video wmi k10temp i2c_piix4 acpi_ipmi ipmi_si drm zram ip_tables loop squashfs dm_multipath crct10dif_pclmul crc32_pclmul crc32c_intel ghash_clmulni_intel sha512_ssse3 sha256_ssse3 sha1_ssse3 sp5100_tco ixgbe rfkill ccp dca sunrpc be2iscsi bnx2i cnic uio cxgb4i cxgb4 tls cxgb3i cxgb3 mdio libcxgbi libcxgb qla4xxx iscsi_boot_sysfs iscsi_tcp libiscsi_tcp libiscsi scsi_transport_iscsi ipmi_devintf ipmi_msghandler fuse [ 155.685224] systemd-journald[1354]: Compressed data object 957 -> 524 using ZSTD [ 155.685687] CPU: 3 PID: 6960 Comm: amd_pci_unplug Not tainted 6.10.0-1148853.1.zuul.164395107d6642bdb451071313e9378d #1 [ 155.704149] Hardware name: TYAN B8021G88V2HR-2T/S8021GM2NR-2T, BIOS V1.03.B10 04/01/2019 [ 155.712383] RIP: 0010:kernfs_remove_by_name_ns+0xb9/0xc0 [ 155.717805] Code: a0 00 48 89 ef e8 37 96 c7 ff 5b b8 fe ff ff ff 5d 41 5c 41 5d e9 f7 96 a0 00 0f 0b eb ab 48 c7 c7 48 ba 7e 8f e8 f7 66 bf ff <0f> 0b eb dc 0f 1f 00 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 [ 155.736766] RSP: 0018:ffffb1685d7a3e20 EFLAGS: 00010296 [ 155.742108] RAX: 0000000000000038 RBX: ffff929e94c80000 RCX: 0000000000000000 [ 155.749363] RDX: ffff928e1efaf200 RSI: ffff928e1efa18c0 RDI: ffff928e1efa18c0 [ 155.756612] RBP: 0000000000000008 R08: 0000000000000000 R09: 0000000000000003 [ 155.763855] R10: ffffb1685d7a3cd8 R11: ffffffff8fb3e1c8 R12: ffffffffc1ef5341 [ 155.771104] R13: ffff929e94cc5530 R14: 0000000000000000 R15: 0000000000000000 [ 155.778357] FS: 00007fd9dd8d9c40(0000) GS:ffff928e1ef80000(0000) knlGS:0000000000000000 [ 155.786594] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 155.792450] CR2: 0000561245ceee38 CR3: 0000000113018000 CR4: 00000000003506f0 [ 155.799702] Call Trace: [ 155.802254] <TASK> [ 155.804460] ? __warn+0x80/0x120 [ 155.807798] ? kernfs_remove_by_name_ns+0xb9/0xc0 [ 155.812617] ? report_bug+0x164/0x190 [ 155.816393] ? handle_bug+0x3c/0x80 [ 155.819994] ? exc_invalid_op+0x17/0x70 [ 155.823939] ? asm_exc_invalid_op+0x1a/0x20 [ 155.828235] ? kernfs_remove_by_name_ns+0xb9/0xc0 [ 155.833058] amdgpu_gfx_sysfs_fini+0x59/0xd0 [amdgpu] [ 155.838637] gfx_v9_0_sw_fini+0x123/0x1c0 [amdgpu] [ 155.843887] amdgpu_device_fini_sw+0xbc/0x3e0 [amdgpu] [ 155.849432] amdgpu_driver_release_kms+0x16/0x30 [amdgpu] [ 155.855235] drm_dev_put.part.0+0x3c/0x60 [drm] [ 155.859914] drm_release+0x8b/0xc0 [drm] [ 155.863978] __fput+0xf1/0x2c0 [ 155.867141] __x64_sys_close+0x3c/0x80 [ 155.870998] do_syscall_64+0x64/0x170
V2: Add details in comments (Tim)
Signed-off-by: Jesse Zhang <[email protected]> Reported-by: Andy Dong <[email protected]> Reviewed-by: Tim Huang <[email protected]> Signed-off-by: Alex Deucher <[email protected]>
show more ...
|
| #
fb989824 |
| 07-Nov-2024 |
[email protected] <[email protected]> |
drm/amdgpu: Add sysfs interface for vcn reset mask
Add the sysfs interface for vcn: vcn_reset_mask
The interface is read-only and show the resets supported by the IP. For example, full adapter rese
drm/amdgpu: Add sysfs interface for vcn reset mask
Add the sysfs interface for vcn: vcn_reset_mask
The interface is read-only and show the resets supported by the IP. For example, full adapter reset (mode1/mode2/BACO/etc), soft reset, queue reset, and pipe reset.
V2: the sysfs node returns a text string instead of some flags (Christian)
V2: the sysfs node returns a text string instead of some flags (Christian) v3: add a generic helper which takes the ring as parameter and print the strings in the order they are applied (Christian)
check amdgpu_gpu_recovery before creating sysfs file itself, and initialize supported_reset_types in IP version files (Lijo) v4: s/sdma/vcn/ in the reset mask setup
Acked-by: Christian König <[email protected]> Signed-off-by: Jesse Zhang <[email protected]> Suggested-by: Alex Deucher <[email protected]> Reviewed-by: Tim Huang <[email protected]> Signed-off-by: Alex Deucher <[email protected]>
show more ...
|
| #
591aec15 |
| 15-Oct-2024 |
Lijo Lazar <[email protected]> |
drm/amdgpu: Save VCN shared memory with init reset
VCN shared memory is in framebuffer and there are some flags initialized during sw_init. Ideally, such programming should be during hw_init.
Make
drm/amdgpu: Save VCN shared memory with init reset
VCN shared memory is in framebuffer and there are some flags initialized during sw_init. Ideally, such programming should be during hw_init.
Make sure the flags are saved during reset on initialization since that reset will affect frame buffer region. For clarity, separate it out to another function.
Fixes: 1e4acf4d93cd ("drm/amdgpu: Add reset on init handler for XGMI") Signed-off-by: Lijo Lazar <[email protected]> Reported-by: Hao Zhou <[email protected]> Reviewed-by: Leo Liu <[email protected]> Signed-off-by: Alex Deucher <[email protected]>
show more ...
|
|
Revision tags: v6.12-rc2, v6.12-rc1, v6.11, v6.11-rc7, v6.11-rc6, v6.11-rc5, v6.11-rc4, v6.11-rc3, v6.11-rc2, v6.11-rc1, v6.10 |
|
| #
7d75ef37 |
| 10-Jul-2024 |
Boyuan Zhang <[email protected]> |
drm/amdgpu/vcn: not pause dpg for unified queue
For unified queue, DPG pause for encoding is done inside VCN firmware, so there is no need to pause dpg based on ring type in kernel.
For VCN3 and be
drm/amdgpu/vcn: not pause dpg for unified queue
For unified queue, DPG pause for encoding is done inside VCN firmware, so there is no need to pause dpg based on ring type in kernel.
For VCN3 and below, pausing DPG for encoding in kernel is still needed.
v2: add more comments v3: update commit message
Signed-off-by: Boyuan Zhang <[email protected]> Acked-by: Alex Deucher <[email protected]> Reviewed-by: Ruijing Dong <[email protected]> Signed-off-by: Alex Deucher <[email protected]>
show more ...
|
| #
ecfa23c8 |
| 11-Jul-2024 |
Boyuan Zhang <[email protected]> |
drm/amdgpu/vcn: identify unified queue in sw init
Determine whether VCN using unified queue in sw_init, instead of calling functions later on.
v2: fix coding style
Signed-off-by: Boyuan Zhang <boy
drm/amdgpu/vcn: identify unified queue in sw init
Determine whether VCN using unified queue in sw_init, instead of calling functions later on.
v2: fix coding style
Signed-off-by: Boyuan Zhang <[email protected]> Acked-by: Alex Deucher <[email protected]> Reviewed-by: Ruijing Dong <[email protected]> Signed-off-by: Alex Deucher <[email protected]>
show more ...
|
|
Revision tags: v6.10-rc7, v6.10-rc6, v6.10-rc5, v6.10-rc4, v6.10-rc3, v6.10-rc2 |
|
| #
b441e9ac |
| 30-May-2024 |
Yang Wang <[email protected]> |
drm/amdgpu: refine vcn firmware loading
refine vcn firmware loading
Signed-off-by: Yang Wang <[email protected]> Reviewed-by: Christian König <[email protected]> Signed-off-by: Alex Deu
drm/amdgpu: refine vcn firmware loading
refine vcn firmware loading
Signed-off-by: Yang Wang <[email protected]> Reviewed-by: Christian König <[email protected]> Signed-off-by: Alex Deucher <[email protected]>
show more ...
|
|
Revision tags: v6.10-rc1 |
|
| #
813e7d4c |
| 23-May-2024 |
David (Ming Qiang) Wu <[email protected]> |
drm/amdgpu: drop some kernel messages in VCN code
We have messages when the VCN fails to initialize and there is no need to report on success. Also PSP loading FWs is the default for production.
Ac
drm/amdgpu: drop some kernel messages in VCN code
We have messages when the VCN fails to initialize and there is no need to report on success. Also PSP loading FWs is the default for production.
Acked-by: Christian König <[email protected]> Reviewed-by: Sonny Jiang <[email protected]> Signed-off-by: David (Ming Qiang) Wu <[email protected]> Signed-off-by: Alex Deucher <[email protected]>
show more ...
|
|
Revision tags: v6.9, v6.9-rc7, v6.9-rc6, v6.9-rc5, v6.9-rc4 |
|
| #
e56b0421 |
| 13-Apr-2024 |
Sonny Jiang <[email protected]> |
drm/amdgpu: IB test encode test package change for VCN5
VCN5 session info package interface changed
Signed-off-by: Sonny Jiang <[email protected]> Reviewed-by: Leo Liu <[email protected]> Signed-of
drm/amdgpu: IB test encode test package change for VCN5
VCN5 session info package interface changed
Signed-off-by: Sonny Jiang <[email protected]> Reviewed-by: Leo Liu <[email protected]> Signed-off-by: Alex Deucher <[email protected]>
show more ...
|
| #
754c366e |
| 23-Apr-2024 |
Sonny Jiang <[email protected]> |
drm/amdgpu: update fw_share for VCN5
kmd_fw_shared changed in VCN5
Signed-off-by: Sonny Jiang <[email protected]> Reviewed-by: Ruijing Dong <[email protected]> Signed-off-by: Alex Deucher <ale
drm/amdgpu: update fw_share for VCN5
kmd_fw_shared changed in VCN5
Signed-off-by: Sonny Jiang <[email protected]> Reviewed-by: Ruijing Dong <[email protected]> Signed-off-by: Alex Deucher <[email protected]>
show more ...
|