Commit ac00bbf3 authored by Frank Min's avatar Frank Min Committed by Alex Deucher

drm/amdgpu:add callback in cgs for sriov detect

Signed-off-by: default avatarFrank Min <Frank.Min@amd.com>
Reviewed-by: default avatarAlex Deucher <alexander.deucher@amd.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent f501a7e5
...@@ -853,6 +853,12 @@ static int amdgpu_cgs_get_firmware_info(struct cgs_device *cgs_device, ...@@ -853,6 +853,12 @@ static int amdgpu_cgs_get_firmware_info(struct cgs_device *cgs_device,
return 0; return 0;
} }
static int amdgpu_cgs_is_virtualization_enabled(void *cgs_device)
{
CGS_FUNC_ADEV;
return amdgpu_sriov_vf(adev);
}
static int amdgpu_cgs_query_system_info(struct cgs_device *cgs_device, static int amdgpu_cgs_query_system_info(struct cgs_device *cgs_device,
struct cgs_system_info *sys_info) struct cgs_system_info *sys_info)
{ {
...@@ -1206,6 +1212,7 @@ static const struct cgs_ops amdgpu_cgs_ops = { ...@@ -1206,6 +1212,7 @@ static const struct cgs_ops amdgpu_cgs_ops = {
amdgpu_cgs_notify_dpm_enabled, amdgpu_cgs_notify_dpm_enabled,
amdgpu_cgs_call_acpi_method, amdgpu_cgs_call_acpi_method,
amdgpu_cgs_query_system_info, amdgpu_cgs_query_system_info,
amdgpu_cgs_is_virtualization_enabled
}; };
static const struct cgs_os_ops amdgpu_cgs_os_ops = { static const struct cgs_os_ops amdgpu_cgs_os_ops = {
......
...@@ -619,6 +619,8 @@ typedef int (*cgs_call_acpi_method)(struct cgs_device *cgs_device, ...@@ -619,6 +619,8 @@ typedef int (*cgs_call_acpi_method)(struct cgs_device *cgs_device,
typedef int (*cgs_query_system_info)(struct cgs_device *cgs_device, typedef int (*cgs_query_system_info)(struct cgs_device *cgs_device,
struct cgs_system_info *sys_info); struct cgs_system_info *sys_info);
typedef int (*cgs_is_virtualization_enabled_t)(void *cgs_device);
struct cgs_ops { struct cgs_ops {
/* memory management calls (similar to KFD interface) */ /* memory management calls (similar to KFD interface) */
cgs_gpu_mem_info_t gpu_mem_info; cgs_gpu_mem_info_t gpu_mem_info;
...@@ -670,6 +672,7 @@ struct cgs_ops { ...@@ -670,6 +672,7 @@ struct cgs_ops {
cgs_call_acpi_method call_acpi_method; cgs_call_acpi_method call_acpi_method;
/* get system info */ /* get system info */
cgs_query_system_info query_system_info; cgs_query_system_info query_system_info;
cgs_is_virtualization_enabled_t is_virtualization_enabled;
}; };
struct cgs_os_ops; /* To be define in OS-specific CGS header */ struct cgs_os_ops; /* To be define in OS-specific CGS header */
...@@ -773,4 +776,6 @@ struct cgs_device ...@@ -773,4 +776,6 @@ struct cgs_device
CGS_CALL(get_pci_resource, cgs_device, resource_type, size, offset, \ CGS_CALL(get_pci_resource, cgs_device, resource_type, size, offset, \
resource_base) resource_base)
#define cgs_is_virtualization_enabled(cgs_device) \
CGS_CALL(is_virtualization_enabled, cgs_device)
#endif /* _CGS_COMMON_H */ #endif /* _CGS_COMMON_H */
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment