mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-28 11:18:45 +07:00
drm/amd/display: Update DMCU versioning mechanism
[Why] Current date based versioning doesn't tell us about feature version and build version, and is not useful for debug. [How] Add versioning based on feature and build Signed-off-by: Josip Pavic <Josip.Pavic@amd.com> Reviewed-by: Anthony Koo <Anthony.Koo@amd.com> Acked-by: Leo Li <sunpeng.li@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
parent
b2e8530249
commit
07772b0715
@ -331,10 +331,10 @@ static void dcn10_get_dmcu_version(struct dmcu *dmcu)
|
||||
/* Write address to IRAM_RD_ADDR and read from DATA register */
|
||||
REG_WRITE(DMCU_IRAM_RD_CTRL, dmcu_version_offset);
|
||||
dmcu->dmcu_version.interface_version = REG_READ(DMCU_IRAM_RD_DATA);
|
||||
dmcu->dmcu_version.year = ((REG_READ(DMCU_IRAM_RD_DATA) << 8) |
|
||||
dmcu->dmcu_version.abm_version = REG_READ(DMCU_IRAM_RD_DATA);
|
||||
dmcu->dmcu_version.psr_version = REG_READ(DMCU_IRAM_RD_DATA);
|
||||
dmcu->dmcu_version.build_version = ((REG_READ(DMCU_IRAM_RD_DATA) << 8) |
|
||||
REG_READ(DMCU_IRAM_RD_DATA));
|
||||
dmcu->dmcu_version.month = REG_READ(DMCU_IRAM_RD_DATA);
|
||||
dmcu->dmcu_version.date = REG_READ(DMCU_IRAM_RD_DATA);
|
||||
|
||||
/* Disable write access to IRAM to allow dynamic sleep state */
|
||||
REG_UPDATE_2(DMCU_RAM_ACCESS_CTRL,
|
||||
|
@ -39,10 +39,10 @@ enum dmcu_state {
|
||||
};
|
||||
|
||||
struct dmcu_version {
|
||||
unsigned int date;
|
||||
unsigned int month;
|
||||
unsigned int year;
|
||||
unsigned int interface_version;
|
||||
unsigned int abm_version;
|
||||
unsigned int psr_version;
|
||||
unsigned int build_version;
|
||||
};
|
||||
|
||||
struct dmcu {
|
||||
|
@ -87,11 +87,10 @@ struct iram_table_v_2 {
|
||||
|
||||
/* For reading PSR State directly from IRAM */
|
||||
uint8_t psr_state; /* 0xf0 */
|
||||
uint8_t dmcu_interface_version; /* 0xf1 */
|
||||
uint8_t dmcu_date_version_year_b0; /* 0xf2 */
|
||||
uint8_t dmcu_date_version_year_b1; /* 0xf3 */
|
||||
uint8_t dmcu_date_version_month; /* 0xf4 */
|
||||
uint8_t dmcu_date_version_day; /* 0xf5 */
|
||||
uint8_t dmcu_mcp_interface_version; /* 0xf1 */
|
||||
uint8_t dmcu_abm_feature_version; /* 0xf2 */
|
||||
uint8_t dmcu_psr_feature_version; /* 0xf3 */
|
||||
uint16_t dmcu_version; /* 0xf4 */
|
||||
uint8_t dmcu_state; /* 0xf6 */
|
||||
|
||||
uint16_t blRampReduction; /* 0xf7 */
|
||||
|
Loading…
Reference in New Issue
Block a user