drm/amd/display: [FW Promotion] Release 0.0.255.0

Reviewed-by: Leo Li <sunpeng.li@amd.com>
Signed-off-by: Taimur Hassan <Syed.Hassan@amd.com>
Signed-off-by: Zaeem Mohamed <zaeem.mohamed@amd.com>
Tested-by: Daniel Wheeler <daniel.wheeler@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
Taimur Hassan 2025-02-16 15:06:06 -05:00 committed by Alex Deucher
parent f3dde2ff7f
commit d7dc4917ae

View File

@ -160,6 +160,13 @@
#define dmub_memset(dest, val, bytes) memset((dest), (val), (bytes))
#endif
/**
* OS/FW agnostic memcmp
*/
#ifndef dmub_memcmp
#define dmub_memcmp(lhs, rhs, bytes) memcmp((lhs), (rhs), (bytes))
#endif
/**
* OS/FW agnostic udelay
*/
@ -1460,6 +1467,11 @@ enum dmub_cmd_type {
*/
DMUB_CMD__PSP = 88,
/**
* Command type used for all Fused IO commands.
*/
DMUB_CMD__FUSED_IO = 89,
DMUB_CMD__VBIOS = 128,
};
@ -1491,6 +1503,10 @@ enum dmub_out_cmd_type {
* Command type used for HPD redetect notification
*/
DMUB_OUT_CMD__HPD_SENSE_NOTIFY = 6,
/**
* Command type used for Fused IO notification
*/
DMUB_OUT_CMD__FUSED_IO = 7,
};
/* DMUB_CMD__DPIA command sub-types. */
@ -5325,6 +5341,63 @@ struct dmub_rb_cmd_get_usbc_cable_id {
} data;
};
enum dmub_cmd_fused_io_sub_type {
DMUB_CMD__FUSED_IO_EXECUTE = 0,
DMUB_CMD__FUSED_IO_ABORT = 1,
};
enum dmub_cmd_fused_request_type {
FUSED_REQUEST_READ,
FUSED_REQUEST_WRITE,
FUSED_REQUEST_POLL,
};
enum dmub_cmd_fused_request_status {
FUSED_REQUEST_STATUS_SUCCESS,
FUSED_REQUEST_STATUS_BEGIN,
FUSED_REQUEST_STATUS_SUBMIT,
FUSED_REQUEST_STATUS_REPLY,
FUSED_REQUEST_STATUS_POLL,
FUSED_REQUEST_STATUS_ABORTED,
FUSED_REQUEST_STATUS_FAILED = 0x80,
FUSED_REQUEST_STATUS_INVALID,
FUSED_REQUEST_STATUS_BUSY,
FUSED_REQUEST_STATUS_TIMEOUT,
FUSED_REQUEST_STATUS_POLL_TIMEOUT,
};
struct dmub_cmd_fused_request {
uint8_t status;
uint8_t type : 2;
uint8_t _reserved0 : 3;
uint8_t poll_mask_msb : 3; // Number of MSB to zero out from last byte before comparing
uint8_t identifier;
uint8_t _reserved1;
uint32_t timeout_us;
union dmub_cmd_fused_request_location {
struct dmub_cmd_fused_request_location_i2c {
uint8_t is_aux : 1; // False
uint8_t ddc_line : 3;
uint8_t _reserved0 : 4;
uint8_t address;
uint8_t offset;
uint8_t length;
} i2c;
struct dmub_cmd_fused_request_location_aux {
uint32_t is_aux : 1; // True
uint32_t ddc_line : 3;
uint32_t address : 20;
uint32_t length : 8; // Automatically split into 16B transactions
} aux;
} u;
uint8_t buffer[0x30]; // Read: out, write: in, poll: expected
};
struct dmub_rb_cmd_fused_io {
struct dmub_cmd_header header;
struct dmub_cmd_fused_request request;
};
/**
* Command type of a DMUB_CMD__SECURE_DISPLAY command
*/
@ -5738,6 +5811,8 @@ union dmub_rb_cmd {
struct dmub_rb_cmd_fams2_drr_update fams2_drr_update;
struct dmub_rb_cmd_fams2_flip fams2_flip;
struct dmub_rb_cmd_fused_io fused_io;
};
/**
@ -5768,6 +5843,7 @@ union dmub_rb_out_cmd {
* HPD sense notification command.
*/
struct dmub_rb_cmd_hpd_sense_notify hpd_sense_notify;
struct dmub_rb_cmd_fused_io fused_io;
};
#pragma pack(pop)