Commit c7fc0f37 authored by Pratik Vishwakarma's avatar Pratik Vishwakarma Committed by Alex Deucher
Browse files

drm/amd: Enable SMU 15_0_0 support



Add SMU 15_0_0

v2: rebase (Alex)
v3: fix clang build (Alex)

Signed-off-by: default avatarPratik Vishwakarma <Pratik.Vishwakarma@amd.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent a68654bf
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -2238,6 +2238,9 @@ static int amdgpu_discovery_set_smu_ip_blocks(struct amdgpu_device *adev)
	case IP_VERSION(14, 0, 5):
		amdgpu_device_ip_block_add(adev, &smu_v14_0_ip_block);
		break;
	case IP_VERSION(15, 0, 0):
		amdgpu_device_ip_block_add(adev, &smu_v15_0_ip_block);
		break;
	default:
		dev_err(adev->dev,
			"Failed to add smu ip block(MP1_HWIP:0x%x)\n",
+1 −0
Original line number Diff line number Diff line
@@ -29,6 +29,7 @@ extern const struct amdgpu_ip_block_version smu_v11_0_ip_block;
extern const struct amdgpu_ip_block_version smu_v12_0_ip_block;
extern const struct amdgpu_ip_block_version smu_v13_0_ip_block;
extern const struct amdgpu_ip_block_version smu_v14_0_ip_block;
extern const struct amdgpu_ip_block_version smu_v15_0_ip_block;

enum smu_temp_metric_type {
	SMU_TEMP_METRIC_BASEBOARD,
+1 −0
Original line number Diff line number Diff line
@@ -31,6 +31,7 @@ subdir-ccflags-y += \
		-I$(FULL_AMD_PATH)/pm/swsmu/smu12 \
		-I$(FULL_AMD_PATH)/pm/swsmu/smu13 \
		-I$(FULL_AMD_PATH)/pm/swsmu/smu14 \
		-I$(FULL_AMD_PATH)/pm/swsmu/smu15 \
		-I$(FULL_AMD_PATH)/pm/powerplay/inc \
		-I$(FULL_AMD_PATH)/pm/powerplay/smumgr\
		-I$(FULL_AMD_PATH)/pm/powerplay/hwmgr \
+1 −1
Original line number Diff line number Diff line
@@ -22,7 +22,7 @@

AMD_SWSMU_PATH = ../pm/swsmu

SWSMU_LIBS = smu11 smu12 smu13 smu14
SWSMU_LIBS = smu11 smu12 smu13 smu14 smu15

AMD_SWSMU = $(addsuffix /Makefile,$(addprefix $(FULL_AMD_PATH)/pm/swsmu/,$(SWSMU_LIBS)))

+12 −0
Original line number Diff line number Diff line
@@ -46,6 +46,7 @@
#include "smu_v13_0_7_ppt.h"
#include "smu_v14_0_0_ppt.h"
#include "smu_v14_0_2_ppt.h"
#include "smu_v15_0_0_ppt.h"
#include "amd_pcie.h"

/*
@@ -796,6 +797,9 @@ static int smu_set_funcs(struct amdgpu_device *adev)
	case IP_VERSION(14, 0, 3):
		smu_v14_0_2_set_ppt_funcs(smu);
		break;
	case IP_VERSION(15, 0, 0):
		smu_v15_0_0_set_ppt_funcs(smu);
		break;
	default:
		return -EINVAL;
	}
@@ -2806,6 +2810,14 @@ const struct amdgpu_ip_block_version smu_v14_0_ip_block = {
	.funcs = &smu_ip_funcs,
};

const struct amdgpu_ip_block_version smu_v15_0_ip_block = {
	.type = AMD_IP_BLOCK_TYPE_SMC,
	.major = 15,
	.minor = 0,
	.rev = 0,
	.funcs = &smu_ip_funcs,
};

const struct ras_smu_drv *smu_get_ras_smu_driver(void *handle)
{
	struct smu_context *smu = (struct smu_context *)handle;
Loading