SMU_MTYPE
SMU_MTYPE(U16), temperature_hotspot); \
SMU_MTYPE(U16), temperature_mem); \
SMU_MTYPE(U16), temperature_vrsoc); \
SMU_MTYPE(U16), curr_socket_power); \
SMU_MTYPE(U16), average_gfx_activity); \
SMU_MTYPE(U16), average_umc_activity); \
SMU_MTYPE(U64), mem_max_bandwidth); \
SMU_MTYPE(U64), energy_accumulator); \
SMU_MTYPE(U64), system_clock_counter); \
SMU_MTYPE(U64), accumulation_counter); \
SMU_MTYPE(U32), prochot_residency_acc); \
SMU_MTYPE(U32), ppt_residency_acc); \
SMU_MTYPE(U32), socket_thm_residency_acc); \
SMU_MTYPE(U32), vr_thm_residency_acc); \
SMU_MTYPE(U32), hbm_thm_residency_acc); \
SMU_MTYPE(U32), gfxclk_lock_status); \
SMU_MTYPE(U16), pcie_link_width); \
SMU_MTYPE(U16), pcie_link_speed); \
SMU_MTYPE(U16), xgmi_link_width); \
SMU_MTYPE(U16), xgmi_link_speed); \
SMU_MTYPE(U32), gfx_activity_acc); \
SMU_MTYPE(U32), mem_activity_acc); \
SMU_MTYPE(U64), pcie_bandwidth_acc); \
SMU_MTYPE(U64), pcie_bandwidth_inst); \
SMU_MTYPE(U64), pcie_l0_to_recov_count_acc); \
SMU_MTYPE(U64), pcie_replay_count_acc); \
SMU_MTYPE(U64), pcie_replay_rover_count_acc); \
SMU_MTYPE(U32), pcie_nak_sent_count_acc); \
SMU_MTYPE(U32), pcie_nak_rcvd_count_acc); \
SMU_MTYPE(U64), xgmi_read_data_acc, \
SMU_MTYPE(U64), xgmi_write_data_acc, \
SMU_MTYPE(U16), xgmi_link_status, \
SMU_MTYPE(U64), firmware_timestamp); \
SMU_MTYPE(U16), current_gfxclk, SMU_13_0_6_MAX_GFX_CLKS); \
SMU_MTYPE(U16), current_socclk, SMU_13_0_6_MAX_CLKS); \
SMU_MTYPE(U16), current_vclk0, SMU_13_0_6_MAX_CLKS); \
SMU_MTYPE(U16), current_dclk0, SMU_13_0_6_MAX_CLKS); \
SMU_MTYPE(U16), current_uclk); \
SMU_MUNIT(NONE), SMU_MTYPE(U32), \
SMU_MTYPE(U32), gfx_busy_inst, SMU_13_0_6_MAX_XCC); \
SMU_ARRAY(SMU_MATTR(JPEG_BUSY), SMU_MUNIT(PERCENT), SMU_MTYPE(U16), \
SMU_ARRAY(SMU_MATTR(VCN_BUSY), SMU_MUNIT(PERCENT), SMU_MTYPE(U16), \
SMU_ARRAY(SMU_MATTR(GFX_BUSY_ACC), SMU_MUNIT(PERCENT), SMU_MTYPE(U64), \
SMU_MTYPE(U64), gfx_below_host_limit_ppt_acc, \
SMU_MTYPE(U64), gfx_below_host_limit_thm_acc, \
SMU_MTYPE(U64), gfx_low_utilization_acc, \
SMU_MTYPE(U64), gfx_below_host_limit_total_acc, \
SMU_MTYPE(U16), temperature_hbm, \
SMU_MTYPE(U16), temperature_aid, SMU_13_0_6_MAX_AID); \
SMU_MTYPE(U16), temperature_xcd, SMU_13_0_6_MAX_XCC); \
SMU_MTYPE(U16), current_gfxclk, SMU_13_0_6_MAX_XCC); \
SMU_MTYPE(U16), current_socclk, SMU_13_0_6_MAX_CLKS); \
SMU_MTYPE(U16), current_vclk0, SMU_13_0_6_MAX_CLKS); \
SMU_MTYPE(U16), current_dclk0, SMU_13_0_6_MAX_CLKS); \
SMU_MTYPE(U16), current_uclk); \
SMU_MTYPE(U32), gfx_busy_inst, SMU_13_0_6_MAX_XCC); \
SMU_ARRAY(SMU_MATTR(JPEG_BUSY), SMU_MUNIT(PERCENT), SMU_MTYPE(U16), \
SMU_ARRAY(SMU_MATTR(VCN_BUSY), SMU_MUNIT(PERCENT), SMU_MTYPE(U16), \
SMU_ARRAY(SMU_MATTR(GFX_BUSY_ACC), SMU_MUNIT(PERCENT), SMU_MTYPE(U64), \
SMU_MTYPE(U64), gfx_below_host_limit_ppt_acc, \
SMU_MTYPE(U64), gfx_below_host_limit_thm_acc, \
SMU_MTYPE(U64), gfx_low_utilization_acc, \
SMU_MTYPE(U64), gfx_below_host_limit_total_acc, \
SMU_MTYPE(U64), accumulation_counter); \
SMU_MTYPE(U64), firmware_timestamp);
SMU_MTYPE(U64), accumulation_counter); \
SMU_MTYPE(U64), prochot_residency_acc); \
SMU_MTYPE(U64), ppt_residency_acc); \
SMU_MTYPE(U64), socket_thm_residency_acc); \
SMU_MTYPE(U64), vr_thm_residency_acc); \
SMU_MTYPE(U64), hbm_thm_residency_acc); \
SMU_MTYPE(U32), gfxclk_lock_status); \
SMU_MTYPE(U16), pcie_link_width); \
SMU_MTYPE(U16), pcie_link_speed); \
SMU_MTYPE(U16), xgmi_link_width); \
SMU_MTYPE(U16), xgmi_link_speed); \
SMU_MTYPE(U64), gfx_activity_acc); \
SMU_MTYPE(U64), mem_activity_acc); \
SMU_MTYPE(U64), pcie_bandwidth_acc, SMU_15_0_8_MAX_MID); \
SMU_MTYPE(U32), pcie_bandwidth_inst, SMU_15_0_8_MAX_MID); \
SMU_MTYPE(U64), pcie_l0_to_recov_count_acc); \
SMU_MTYPE(U64), pcie_replay_count_acc); \
SMU_MTYPE(U64), pcie_replay_rover_count_acc); \
SMU_MTYPE(U64), pcie_nak_sent_count_acc); \
SMU_MTYPE(U64), pcie_nak_rcvd_count_acc); \
SMU_MTYPE(U16), xgmi_link_status, \
SMU_MTYPE(U64), xgmi_read_data_acc); \
SMU_MTYPE(U64), xgmi_write_data_acc); \
SMU_MTYPE(U64), firmware_timestamp); \
SMU_MTYPE(U16), current_gfxclk, SMU_15_0_8_MAX_GFX_CLKS); \
SMU_MTYPE(U16), current_socclk, SMU_15_0_8_MAX_MID); \
SMU_MTYPE(U16), current_vclk0, SMU_15_0_8_MAX_VCN); \
SMU_MTYPE(U16), current_dclk0, SMU_15_0_8_MAX_VCN); \
SMU_MTYPE(U16), current_uclk, SMU_15_0_8_MAX_AID); \
SMU_MUNIT(NONE), SMU_MTYPE(U64), \
SMU_MTYPE(U32), gfx_busy_inst, SMU_15_0_8_MAX_XCC); \
SMU_ARRAY(SMU_MATTR(JPEG_BUSY), SMU_MUNIT(PERCENT), SMU_MTYPE(U16), \
SMU_ARRAY(SMU_MATTR(VCN_BUSY), SMU_MUNIT(PERCENT), SMU_MTYPE(U16), \
SMU_ARRAY(SMU_MATTR(GFX_BUSY_ACC), SMU_MUNIT(NONE), SMU_MTYPE(U64), \
SMU_MTYPE(U64), gfx_below_host_limit_ppt_acc, \
SMU_MTYPE(U64), gfx_below_host_limit_thm_acc, \
SMU_MTYPE(U64), gfx_low_utilization_acc, \
SMU_MTYPE(U64), gfx_below_host_limit_total_acc, \
SMU_MTYPE(U64), accumulation_counter); \
SMU_MTYPE(U16), label_version); \
SMU_MTYPE(U16), node_id); \
SMU_MTYPE(S16), node_temp_retimer); \
SMU_MTYPE(S16), node_temp_ibc); \
SMU_MTYPE(S16), node_temp_ibc_2); \
SMU_MTYPE(S16), node_temp_vdd18_vr); \
SMU_MTYPE(S16), node_temp_04_hbm_b_vr); \
SMU_MTYPE(S16), node_temp_04_hbm_d_vr); \
SMU_MTYPE(S16), vr_temp_vddcr_socio_a); \
SMU_MTYPE(S16), vr_temp_vddcr_socio_c); \
SMU_MTYPE(S16), vr_temp_vddcr_x0); \
SMU_MTYPE(S16), vr_temp_vddcr_x1); \
SMU_MTYPE(S16), vr_temp_vddio_hbm_b); \
SMU_MTYPE(S16), vr_temp_vddio_hbm_d); \
SMU_MTYPE(S16), vr_temp_vddio_04_hbm_b); \
SMU_MTYPE(S16), vr_temp_vddio_04_hbm_d); \
SMU_MTYPE(S16), vr_temp_vddcr_hbm_b); \
SMU_MTYPE(S16), vr_temp_vddcr_hbm_d); \
SMU_MTYPE(S16), vr_temp_vddcr_075_hbm_b); \
SMU_MTYPE(S16), vr_temp_vddcr_075_hbm_d); \
SMU_MTYPE(S16), vr_temp_vddio_11_gta_a); \
SMU_MTYPE(S16), vr_temp_vddio_11_gta_c); \
SMU_MTYPE(S16), vr_temp_vddan_075_gta_a); \
SMU_MTYPE(S16), vr_temp_vddan_075_gta_c); \
SMU_MTYPE(S16), vr_temp_vddcr_075_ucie); \
SMU_MTYPE(S16), vr_temp_vddio_065_ucieaa); \
SMU_MTYPE(S16), vr_temp_vddio_065_ucieam_a); \
SMU_MTYPE(S16), vr_temp_vddio_065_ucieam_c); \
SMU_MTYPE(S16), vr_temp_vddan_075);
SMU_MTYPE(U64), accumulation_counter); \
SMU_MTYPE(U16), label_version); \
SMU_MTYPE(U16), node_id); \
SMU_MTYPE(S16), system_temp_ubb_fpga); \
SMU_MTYPE(S16), system_temp_ubb_front); \
SMU_MTYPE(S16), system_temp_ubb_back); \
SMU_MTYPE(S16), system_temp_ubb_oam7); \
SMU_MTYPE(S16), system_temp_ubb_ibc); \
SMU_MTYPE(S16), system_temp_ubb_ufpga); \
SMU_MTYPE(S16), system_temp_ubb_oam1); \
SMU_MTYPE(S16), system_temp_oam_0_1_hsc); \
SMU_MTYPE(S16), system_temp_oam_2_3_hsc); \
SMU_MTYPE(S16), system_temp_oam_4_5_hsc); \
SMU_MTYPE(S16), system_temp_oam_6_7_hsc); \
SMU_MTYPE(S16), system_temp_ubb_fpga_0v72_vr); \
SMU_MTYPE(S16), system_temp_ubb_fpga_3v3_vr); \
SMU_MTYPE(S16), system_temp_retimer_0_1_2_3_1v2_vr); \
SMU_MTYPE(S16), system_temp_retimer_4_5_6_7_1v2_vr); \
SMU_MTYPE(S16), system_temp_retimer_0_1_0v9_vr); \
SMU_MTYPE(S16), system_temp_retimer_4_5_0v9_vr); \
SMU_MTYPE(S16), system_temp_retimer_2_3_0v9_vr); \
SMU_MTYPE(S16), system_temp_retimer_6_7_0v9_vr); \
SMU_MTYPE(S16), system_temp_oam_0_1_2_3_3v3_vr); \
SMU_MTYPE(S16), system_temp_oam_4_5_6_7_3v3_vr); \
SMU_MTYPE(S16), system_temp_ibc_hsc); \
SMU_MTYPE(S16), system_temp_ibc);
SMU_MTYPE(U16), current_gfxclk, SMU_15_0_8_MAX_XCC); \
SMU_MTYPE(U16), current_vclk, SMU_15_0_8_MAX_VCN); \
SMU_MTYPE(U16), current_dclk, SMU_15_0_8_MAX_VCN); \
SMU_MTYPE(U8), gfx_busy_inst, SMU_15_0_8_MAX_XCC); \
SMU_ARRAY(SMU_MATTR(JPEG_BUSY), SMU_MUNIT(PERCENT), SMU_MTYPE(U8), \
SMU_ARRAY(SMU_MATTR(VCN_BUSY), SMU_MUNIT(PERCENT), SMU_MTYPE(U8), \
SMU_ARRAY(SMU_MATTR(GFX_BUSY_ACC), SMU_MUNIT(NONE), SMU_MTYPE(U64), \
SMU_MTYPE(U64), gfx_below_host_limit_ppt_acc, \
SMU_MTYPE(U64), gfx_below_host_limit_thm_acc, \
SMU_MTYPE(U64), gfx_low_utilization_acc, \
SMU_MTYPE(U64), gfx_below_host_limit_total_acc, \
SMU_MTYPE(U64), accumulation_counter); \
SMU_MTYPE(U64), firmware_timestamp);
SMU_MTYPE(U16), temperature_hotspot); \
SMU_MTYPE(U16), temperature_mem); \
SMU_MTYPE(U16), temperature_vrsoc); \
SMU_MTYPE(U16), temperature_hbm, \
SMU_MTYPE(U16), temperature_mid, SMU_15_0_8_MAX_MID); \
SMU_MTYPE(U16), temperature_aid, SMU_15_0_8_MAX_AID); \
SMU_MTYPE(U16), temperature_xcd, SMU_15_0_8_MAX_XCC); \
SMU_MTYPE(U16), curr_socket_power); \
SMU_MTYPE(U16), average_gfx_activity); \
SMU_MTYPE(U16), average_umc_activity); \
SMU_MTYPE(U64), mem_max_bandwidth); \
SMU_MTYPE(U64), energy_accumulator); \
SMU_MTYPE(U64), system_clock_counter); \