1 // SPDX-License-Identifier: MIT 2 // 3 // Copyright 2024 Advanced Micro Devices, Inc. 4 // 5 // This is a stripped-down version of the smu13_driver_if.h file for the relevant DAL interfaces. 6 7 #define SMU14_DRIVER_IF_VERSION 0x1 8 9 //Only Clks that have DPM descriptors are listed here 10 typedef enum { 11 PPCLK_GFXCLK = 0, 12 PPCLK_SOCCLK, 13 PPCLK_UCLK, 14 PPCLK_FCLK, 15 PPCLK_DCLK_0, 16 PPCLK_VCLK_0, 17 PPCLK_DISPCLK, 18 PPCLK_DPPCLK, 19 PPCLK_DPREFCLK, 20 PPCLK_DCFCLK, 21 PPCLK_DTBCLK, 22 PPCLK_COUNT, 23 } PPCLK_e; 24 25 typedef struct { 26 uint8_t WmSetting; 27 uint8_t Flags; 28 uint8_t Padding[2]; 29 30 } WatermarkRowGeneric_t; 31 32 #define NUM_WM_RANGES 4 33 34 typedef enum { 35 WATERMARKS_CLOCK_RANGE = 0, 36 WATERMARKS_DUMMY_PSTATE, 37 WATERMARKS_MALL, 38 WATERMARKS_COUNT, 39 } WATERMARKS_FLAGS_e; 40 41 typedef struct { 42 // Watermarks 43 WatermarkRowGeneric_t WatermarkRow[NUM_WM_RANGES]; 44 } Watermarks_t; 45 46 typedef struct { 47 Watermarks_t Watermarks; 48 uint32_t Spare[16]; 49 50 uint32_t MmHubPadding[8]; // SMU internal use 51 } WatermarksExternal_t; 52 53 // Table types 54 #define TABLE_PMFW_PPTABLE 0 55 #define TABLE_COMBO_PPTABLE 1 56 #define TABLE_WATERMARKS 2 57 #define TABLE_AVFS_PSM_DEBUG 3 58 #define TABLE_PMSTATUSLOG 4 59 #define TABLE_SMU_METRICS 5 60 #define TABLE_DRIVER_SMU_CONFIG 6 61 #define TABLE_ACTIVITY_MONITOR_COEFF 7 62 #define TABLE_OVERDRIVE 8 63 #define TABLE_I2C_COMMANDS 9 64 #define TABLE_DRIVER_INFO 10 65 #define TABLE_ECCINFO 11 66 #define TABLE_COUNT 12 67