diff options
| author | Oleh Kuzhylnyi <[email protected]> | 2025-04-24 12:40:09 +0000 |
|---|---|---|
| committer | Alex Deucher <[email protected]> | 2025-06-03 19:35:27 +0000 |
| commit | db122ece325a3a19eeabf98e61db70fe890b4b5a (patch) | |
| tree | 0d13c62437a6403194117a8e214a1e9d9f05e16d /drivers/gpu/drm/amd/display/dmub/dmub_srv.h | |
| parent | drm/amd/display: move RMCM programming (diff) | |
| download | kernel-db122ece325a3a19eeabf98e61db70fe890b4b5a.tar.gz kernel-db122ece325a3a19eeabf98e61db70fe890b4b5a.zip | |
drm/amd/display: Indirect buffer transport for FAMS2 commands
[Why]
The quantity and duration of FAMS2 commands are set to increase
in future products. This necessitates the implementation of a new
mechanism for chaining commands together, allowing all commands
to be processed within a single transaction.
[How]
The indirect buffer acts as a shared buffer on the driver side,
mapped to DMUB's internal CW7 address. Its source address and
size are sent through mailbox command to DMUB, triggering the
transaction.
Reviewed-by: Alvin Lee <[email protected]>
Signed-off-by: Oleh Kuzhylnyi <[email protected]>
Signed-off-by: Wayne Lin <[email protected]>
Tested-by: Daniel Wheeler <[email protected]>
Signed-off-by: Alex Deucher <[email protected]>
Diffstat (limited to 'drivers/gpu/drm/amd/display/dmub/dmub_srv.h')
| -rw-r--r-- | drivers/gpu/drm/amd/display/dmub/dmub_srv.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/gpu/drm/amd/display/dmub/dmub_srv.h b/drivers/gpu/drm/amd/display/dmub/dmub_srv.h index 3f3fa1b6a69e..211486724e84 100644 --- a/drivers/gpu/drm/amd/display/dmub/dmub_srv.h +++ b/drivers/gpu/drm/amd/display/dmub/dmub_srv.h @@ -129,6 +129,7 @@ enum dmub_window_id { DMUB_WINDOW_5_TRACEBUFF, DMUB_WINDOW_6_FW_STATE, DMUB_WINDOW_7_SCRATCH_MEM, + DMUB_WINDOW_IB_MEM, DMUB_WINDOW_SHARED_STATE, DMUB_WINDOW_TOTAL, }; @@ -539,6 +540,7 @@ struct dmub_srv { uint32_t fw_version; bool is_virtual; struct dmub_fb scratch_mem_fb; + struct dmub_fb ib_mem_gart; volatile struct dmub_shared_state_feature_block *shared_state; volatile const struct dmub_fw_state *fw_state; |
