2020-07-29 17:45:54 +08:00
|
|
|
/*
|
|
|
|
* Copyright (C) 2019-2020 Intel Corporation
|
|
|
|
*
|
|
|
|
* SPDX-License-Identifier: MIT
|
|
|
|
*
|
|
|
|
*/
|
|
|
|
|
|
|
|
#include "level_zero/source/inc/ze_intel_gpu.h"
|
|
|
|
#include <level_zero/ze_api.h>
|
|
|
|
#include <level_zero/ze_ddi.h>
|
|
|
|
#include <level_zero/zes_api.h>
|
|
|
|
#include <level_zero/zes_ddi.h>
|
|
|
|
#include <level_zero/zet_api.h>
|
|
|
|
#include <level_zero/zet_ddi.h>
|
|
|
|
|
|
|
|
#include "ze_ddi_tables.h"
|
|
|
|
|
|
|
|
extern ze_gpu_driver_dditable_t driver_ddiTable;
|
|
|
|
|
|
|
|
ZE_DLLEXPORT ze_result_t ZE_APICALL
|
|
|
|
zesGetDeviceProcAddrTable(
|
|
|
|
ze_api_version_t version,
|
|
|
|
zes_device_dditable_t *pDdiTable) {
|
|
|
|
if (nullptr == pDdiTable)
|
|
|
|
return ZE_RESULT_ERROR_INVALID_ARGUMENT;
|
|
|
|
if (driver_ddiTable.version < version)
|
|
|
|
return ZE_RESULT_ERROR_UNKNOWN;
|
2020-10-12 16:54:21 +08:00
|
|
|
if (nullptr == driver_ddiTable.driverLibrary) {
|
|
|
|
return ZE_RESULT_ERROR_UNINITIALIZED;
|
|
|
|
}
|
2020-07-29 17:45:54 +08:00
|
|
|
ze_result_t result = ZE_RESULT_SUCCESS;
|
|
|
|
|
2020-10-12 16:54:21 +08:00
|
|
|
pDdiTable->pfnGetProperties = (zes_pfnDeviceGetProperties_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesDeviceGetProperties);
|
|
|
|
pDdiTable->pfnGetState = (zes_pfnDeviceGetState_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesDeviceGetState);
|
|
|
|
pDdiTable->pfnReset = (zes_pfnDeviceReset_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesDeviceReset);
|
|
|
|
pDdiTable->pfnProcessesGetState = (zes_pfnDeviceProcessesGetState_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesDeviceProcessesGetState);
|
|
|
|
pDdiTable->pfnPciGetProperties = (zes_pfnDevicePciGetProperties_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesDevicePciGetProperties);
|
|
|
|
pDdiTable->pfnPciGetState = (zes_pfnDevicePciGetState_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesDevicePciGetState);
|
|
|
|
pDdiTable->pfnPciGetBars = (zes_pfnDevicePciGetBars_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesDevicePciGetBars);
|
|
|
|
pDdiTable->pfnPciGetStats = (zes_pfnDevicePciGetStats_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesDevicePciGetStats);
|
|
|
|
pDdiTable->pfnEnumDiagnosticTestSuites = (zes_pfnDeviceEnumDiagnosticTestSuites_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesDeviceEnumDiagnosticTestSuites);
|
|
|
|
pDdiTable->pfnEnumEngineGroups = (zes_pfnDeviceEnumEngineGroups_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesDeviceEnumEngineGroups);
|
|
|
|
pDdiTable->pfnEventRegister = (zes_pfnDeviceEventRegister_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesDeviceEventRegister);
|
|
|
|
pDdiTable->pfnEnumFabricPorts = (zes_pfnDeviceEnumFabricPorts_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesDeviceEnumFabricPorts);
|
|
|
|
pDdiTable->pfnEnumFans = (zes_pfnDeviceEnumFans_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesDeviceEnumFans);
|
|
|
|
pDdiTable->pfnEnumFirmwares = (zes_pfnDeviceEnumFirmwares_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesDeviceEnumFirmwares);
|
|
|
|
pDdiTable->pfnEnumFrequencyDomains = (zes_pfnDeviceEnumFrequencyDomains_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesDeviceEnumFrequencyDomains);
|
|
|
|
pDdiTable->pfnEnumLeds = (zes_pfnDeviceEnumLeds_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesDeviceEnumLeds);
|
|
|
|
pDdiTable->pfnEnumMemoryModules = (zes_pfnDeviceEnumMemoryModules_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesDeviceEnumMemoryModules);
|
|
|
|
pDdiTable->pfnEnumPerformanceFactorDomains = (zes_pfnDeviceEnumPerformanceFactorDomains_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesDeviceEnumPerformanceFactorDomains);
|
|
|
|
pDdiTable->pfnEnumPowerDomains = (zes_pfnDeviceEnumPowerDomains_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesDeviceEnumPowerDomains);
|
|
|
|
pDdiTable->pfnEnumPsus = (zes_pfnDeviceEnumPsus_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesDeviceEnumPsus);
|
|
|
|
pDdiTable->pfnEnumRasErrorSets = (zes_pfnDeviceEnumRasErrorSets_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesDeviceEnumRasErrorSets);
|
|
|
|
pDdiTable->pfnEnumSchedulers = (zes_pfnDeviceEnumSchedulers_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesDeviceEnumSchedulers);
|
|
|
|
pDdiTable->pfnEnumStandbyDomains = (zes_pfnDeviceEnumStandbyDomains_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesDeviceEnumStandbyDomains);
|
|
|
|
pDdiTable->pfnEnumTemperatureSensors = (zes_pfnDeviceEnumTemperatureSensors_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesDeviceEnumTemperatureSensors);
|
2020-07-29 17:45:54 +08:00
|
|
|
return result;
|
|
|
|
}
|
|
|
|
|
|
|
|
ZE_DLLEXPORT ze_result_t ZE_APICALL
|
|
|
|
zesGetDriverProcAddrTable(
|
|
|
|
ze_api_version_t version,
|
|
|
|
zes_driver_dditable_t *pDdiTable) {
|
|
|
|
if (nullptr == pDdiTable)
|
|
|
|
return ZE_RESULT_ERROR_INVALID_ARGUMENT;
|
|
|
|
if (driver_ddiTable.version < version)
|
|
|
|
return ZE_RESULT_ERROR_UNKNOWN;
|
2020-10-12 16:54:21 +08:00
|
|
|
if (nullptr == driver_ddiTable.driverLibrary) {
|
|
|
|
return ZE_RESULT_ERROR_UNINITIALIZED;
|
|
|
|
}
|
2020-07-29 17:45:54 +08:00
|
|
|
ze_result_t result = ZE_RESULT_SUCCESS;
|
2020-10-12 16:54:21 +08:00
|
|
|
pDdiTable->pfnEventListen = (zes_pfnDriverEventListen_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesDriverEventListen);
|
2020-07-29 17:45:54 +08:00
|
|
|
return result;
|
|
|
|
}
|
|
|
|
|
|
|
|
ZE_DLLEXPORT ze_result_t ZE_APICALL
|
|
|
|
zesGetDiagnosticsProcAddrTable(
|
|
|
|
ze_api_version_t version,
|
|
|
|
zes_diagnostics_dditable_t *pDdiTable) {
|
|
|
|
if (nullptr == pDdiTable)
|
|
|
|
return ZE_RESULT_ERROR_INVALID_ARGUMENT;
|
|
|
|
if (driver_ddiTable.version < version)
|
|
|
|
return ZE_RESULT_ERROR_UNKNOWN;
|
2020-10-12 16:54:21 +08:00
|
|
|
if (nullptr == driver_ddiTable.driverLibrary) {
|
|
|
|
return ZE_RESULT_ERROR_UNINITIALIZED;
|
|
|
|
}
|
2020-07-29 17:45:54 +08:00
|
|
|
ze_result_t result = ZE_RESULT_SUCCESS;
|
2020-10-12 16:54:21 +08:00
|
|
|
pDdiTable->pfnGetProperties = (zes_pfnDiagnosticsGetProperties_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesDiagnosticsGetProperties);
|
|
|
|
pDdiTable->pfnGetTests = (zes_pfnDiagnosticsGetTests_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesDiagnosticsGetTests);
|
|
|
|
pDdiTable->pfnRunTests = (zes_pfnDiagnosticsRunTests_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesDiagnosticsRunTests);
|
2020-07-29 17:45:54 +08:00
|
|
|
|
|
|
|
return result;
|
|
|
|
}
|
|
|
|
|
|
|
|
ZE_DLLEXPORT ze_result_t ZE_APICALL
|
|
|
|
zesGetEngineProcAddrTable(
|
|
|
|
ze_api_version_t version,
|
|
|
|
zes_engine_dditable_t *pDdiTable) {
|
|
|
|
if (nullptr == pDdiTable)
|
|
|
|
return ZE_RESULT_ERROR_INVALID_ARGUMENT;
|
|
|
|
if (driver_ddiTable.version < version)
|
|
|
|
return ZE_RESULT_ERROR_UNKNOWN;
|
2020-10-12 16:54:21 +08:00
|
|
|
if (nullptr == driver_ddiTable.driverLibrary) {
|
|
|
|
return ZE_RESULT_ERROR_UNINITIALIZED;
|
|
|
|
}
|
2020-07-29 17:45:54 +08:00
|
|
|
ze_result_t result = ZE_RESULT_SUCCESS;
|
2020-10-12 16:54:21 +08:00
|
|
|
pDdiTable->pfnGetProperties = (zes_pfnEngineGetProperties_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesEngineGetProperties);
|
|
|
|
pDdiTable->pfnGetActivity = (zes_pfnEngineGetActivity_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesEngineGetActivity);
|
2020-07-29 17:45:54 +08:00
|
|
|
|
|
|
|
return result;
|
|
|
|
}
|
|
|
|
|
|
|
|
ZE_DLLEXPORT ze_result_t ZE_APICALL
|
|
|
|
zesGetFabricPortProcAddrTable(
|
|
|
|
ze_api_version_t version,
|
|
|
|
zes_fabric_port_dditable_t *pDdiTable) {
|
|
|
|
if (nullptr == pDdiTable)
|
|
|
|
return ZE_RESULT_ERROR_INVALID_ARGUMENT;
|
|
|
|
if (driver_ddiTable.version < version)
|
|
|
|
return ZE_RESULT_ERROR_UNKNOWN;
|
2020-10-12 16:54:21 +08:00
|
|
|
if (nullptr == driver_ddiTable.driverLibrary) {
|
|
|
|
return ZE_RESULT_ERROR_UNINITIALIZED;
|
|
|
|
}
|
2020-07-29 17:45:54 +08:00
|
|
|
ze_result_t result = ZE_RESULT_SUCCESS;
|
|
|
|
|
2020-10-12 16:54:21 +08:00
|
|
|
pDdiTable->pfnGetProperties = (zes_pfnFabricPortGetProperties_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesFabricPortGetProperties);
|
|
|
|
pDdiTable->pfnGetLinkType = (zes_pfnFabricPortGetLinkType_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesFabricPortGetLinkType);
|
|
|
|
pDdiTable->pfnGetConfig = (zes_pfnFabricPortGetConfig_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesFabricPortGetConfig);
|
|
|
|
pDdiTable->pfnSetConfig = (zes_pfnFabricPortSetConfig_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesFabricPortSetConfig);
|
|
|
|
pDdiTable->pfnGetState = (zes_pfnFabricPortGetState_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesFabricPortGetState);
|
|
|
|
pDdiTable->pfnGetThroughput = (zes_pfnFabricPortGetThroughput_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesFabricPortGetThroughput);
|
2020-07-29 17:45:54 +08:00
|
|
|
|
|
|
|
return result;
|
|
|
|
}
|
|
|
|
|
|
|
|
ZE_DLLEXPORT ze_result_t ZE_APICALL
|
|
|
|
zesGetFanProcAddrTable(
|
|
|
|
ze_api_version_t version,
|
|
|
|
zes_fan_dditable_t *pDdiTable) {
|
|
|
|
if (nullptr == pDdiTable)
|
|
|
|
return ZE_RESULT_ERROR_INVALID_ARGUMENT;
|
|
|
|
if (driver_ddiTable.version < version)
|
|
|
|
return ZE_RESULT_ERROR_UNKNOWN;
|
2020-10-12 16:54:21 +08:00
|
|
|
if (nullptr == driver_ddiTable.driverLibrary) {
|
|
|
|
return ZE_RESULT_ERROR_UNINITIALIZED;
|
|
|
|
}
|
2020-07-29 17:45:54 +08:00
|
|
|
ze_result_t result = ZE_RESULT_SUCCESS;
|
|
|
|
|
2020-10-12 16:54:21 +08:00
|
|
|
pDdiTable->pfnGetProperties = (zes_pfnFanGetProperties_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesFanGetProperties);
|
|
|
|
pDdiTable->pfnGetConfig = (zes_pfnFanGetConfig_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesFanGetConfig);
|
|
|
|
pDdiTable->pfnSetDefaultMode = (zes_pfnFanSetDefaultMode_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesFanSetDefaultMode);
|
|
|
|
pDdiTable->pfnSetFixedSpeedMode = (zes_pfnFanSetFixedSpeedMode_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesFanSetFixedSpeedMode);
|
|
|
|
pDdiTable->pfnSetSpeedTableMode = (zes_pfnFanSetSpeedTableMode_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesFanSetSpeedTableMode);
|
|
|
|
pDdiTable->pfnGetState = (zes_pfnFanGetState_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesFanGetState);
|
2020-07-29 17:45:54 +08:00
|
|
|
|
|
|
|
return result;
|
|
|
|
}
|
|
|
|
|
|
|
|
ZE_DLLEXPORT ze_result_t ZE_APICALL
|
|
|
|
zesGetFirmwareProcAddrTable(
|
|
|
|
ze_api_version_t version,
|
|
|
|
zes_firmware_dditable_t *pDdiTable) {
|
|
|
|
if (nullptr == pDdiTable)
|
|
|
|
return ZE_RESULT_ERROR_INVALID_ARGUMENT;
|
|
|
|
if (driver_ddiTable.version < version)
|
|
|
|
return ZE_RESULT_ERROR_UNKNOWN;
|
2020-10-12 16:54:21 +08:00
|
|
|
if (nullptr == driver_ddiTable.driverLibrary) {
|
|
|
|
return ZE_RESULT_ERROR_UNINITIALIZED;
|
|
|
|
}
|
2020-07-29 17:45:54 +08:00
|
|
|
ze_result_t result = ZE_RESULT_SUCCESS;
|
2020-10-12 16:54:21 +08:00
|
|
|
pDdiTable->pfnGetProperties = (zes_pfnFirmwareGetProperties_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesFirmwareGetProperties);
|
|
|
|
pDdiTable->pfnFlash = (zes_pfnFirmwareFlash_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesFirmwareFlash);
|
2020-07-29 17:45:54 +08:00
|
|
|
|
|
|
|
return result;
|
|
|
|
}
|
|
|
|
|
|
|
|
ZE_DLLEXPORT ze_result_t ZE_APICALL
|
|
|
|
zesGetFrequencyProcAddrTable(
|
|
|
|
ze_api_version_t version,
|
|
|
|
zes_frequency_dditable_t *pDdiTable) {
|
|
|
|
if (nullptr == pDdiTable)
|
|
|
|
return ZE_RESULT_ERROR_INVALID_ARGUMENT;
|
|
|
|
if (driver_ddiTable.version < version)
|
|
|
|
return ZE_RESULT_ERROR_UNKNOWN;
|
2020-10-12 16:54:21 +08:00
|
|
|
if (nullptr == driver_ddiTable.driverLibrary) {
|
|
|
|
return ZE_RESULT_ERROR_UNINITIALIZED;
|
|
|
|
}
|
2020-07-29 17:45:54 +08:00
|
|
|
ze_result_t result = ZE_RESULT_SUCCESS;
|
2020-10-12 16:54:21 +08:00
|
|
|
pDdiTable->pfnGetProperties = (zes_pfnFrequencyGetProperties_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesFrequencyGetProperties);
|
|
|
|
pDdiTable->pfnGetAvailableClocks = (zes_pfnFrequencyGetAvailableClocks_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesFrequencyGetAvailableClocks);
|
|
|
|
pDdiTable->pfnGetRange = (zes_pfnFrequencyGetRange_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesFrequencyGetRange);
|
|
|
|
pDdiTable->pfnSetRange = (zes_pfnFrequencySetRange_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesFrequencySetRange);
|
|
|
|
pDdiTable->pfnGetState = (zes_pfnFrequencyGetState_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesFrequencyGetState);
|
|
|
|
pDdiTable->pfnGetThrottleTime = (zes_pfnFrequencyGetThrottleTime_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesFrequencyGetThrottleTime);
|
|
|
|
pDdiTable->pfnOcGetCapabilities = (zes_pfnFrequencyOcGetCapabilities_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesFrequencyOcGetCapabilities);
|
|
|
|
pDdiTable->pfnOcGetFrequencyTarget = (zes_pfnFrequencyOcGetFrequencyTarget_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesFrequencyOcGetFrequencyTarget);
|
|
|
|
pDdiTable->pfnOcSetFrequencyTarget = (zes_pfnFrequencyOcSetFrequencyTarget_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesFrequencyOcSetFrequencyTarget);
|
|
|
|
pDdiTable->pfnOcGetVoltageTarget = (zes_pfnFrequencyOcGetVoltageTarget_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesFrequencyOcGetVoltageTarget);
|
|
|
|
pDdiTable->pfnOcSetVoltageTarget = (zes_pfnFrequencyOcSetVoltageTarget_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesFrequencyOcSetVoltageTarget);
|
|
|
|
pDdiTable->pfnOcSetMode = (zes_pfnFrequencyOcSetMode_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesFrequencyOcSetMode);
|
|
|
|
pDdiTable->pfnOcGetMode = (zes_pfnFrequencyOcGetMode_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesFrequencyOcGetMode);
|
|
|
|
pDdiTable->pfnOcGetIccMax = (zes_pfnFrequencyOcGetIccMax_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesFrequencyOcGetIccMax);
|
|
|
|
pDdiTable->pfnOcSetIccMax = (zes_pfnFrequencyOcSetIccMax_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesFrequencyOcSetIccMax);
|
|
|
|
pDdiTable->pfnOcGetTjMax = (zes_pfnFrequencyOcGetTjMax_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesFrequencyOcGetTjMax);
|
|
|
|
pDdiTable->pfnOcSetTjMax = (zes_pfnFrequencyOcSetTjMax_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesFrequencyOcSetTjMax);
|
2020-07-29 17:45:54 +08:00
|
|
|
|
|
|
|
return result;
|
|
|
|
}
|
|
|
|
|
|
|
|
ZE_DLLEXPORT ze_result_t ZE_APICALL
|
|
|
|
zesGetLedProcAddrTable(
|
|
|
|
ze_api_version_t version,
|
|
|
|
zes_led_dditable_t *pDdiTable) {
|
|
|
|
if (nullptr == pDdiTable)
|
|
|
|
return ZE_RESULT_ERROR_INVALID_ARGUMENT;
|
|
|
|
if (driver_ddiTable.version < version)
|
|
|
|
return ZE_RESULT_ERROR_UNKNOWN;
|
2020-10-12 16:54:21 +08:00
|
|
|
if (nullptr == driver_ddiTable.driverLibrary) {
|
|
|
|
return ZE_RESULT_ERROR_UNINITIALIZED;
|
|
|
|
}
|
2020-07-29 17:45:54 +08:00
|
|
|
ze_result_t result = ZE_RESULT_SUCCESS;
|
2020-10-12 16:54:21 +08:00
|
|
|
pDdiTable->pfnGetProperties = (zes_pfnLedGetProperties_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesLedGetProperties);
|
|
|
|
pDdiTable->pfnGetState = (zes_pfnLedGetState_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesLedGetState);
|
|
|
|
pDdiTable->pfnSetState = (zes_pfnLedSetState_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesLedSetState);
|
|
|
|
pDdiTable->pfnSetColor = (zes_pfnLedSetColor_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesLedSetColor);
|
2020-07-29 17:45:54 +08:00
|
|
|
|
|
|
|
return result;
|
|
|
|
}
|
|
|
|
|
|
|
|
ZE_DLLEXPORT ze_result_t ZE_APICALL
|
|
|
|
zesGetMemoryProcAddrTable(
|
|
|
|
ze_api_version_t version,
|
|
|
|
zes_memory_dditable_t *pDdiTable) {
|
|
|
|
if (nullptr == pDdiTable)
|
|
|
|
return ZE_RESULT_ERROR_INVALID_ARGUMENT;
|
|
|
|
if (driver_ddiTable.version < version)
|
|
|
|
return ZE_RESULT_ERROR_UNKNOWN;
|
2020-10-12 16:54:21 +08:00
|
|
|
if (nullptr == driver_ddiTable.driverLibrary) {
|
|
|
|
return ZE_RESULT_ERROR_UNINITIALIZED;
|
|
|
|
}
|
2020-07-29 17:45:54 +08:00
|
|
|
ze_result_t result = ZE_RESULT_SUCCESS;
|
2020-10-12 16:54:21 +08:00
|
|
|
pDdiTable->pfnGetProperties = (zes_pfnMemoryGetProperties_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesMemoryGetProperties);
|
|
|
|
pDdiTable->pfnGetState = (zes_pfnMemoryGetState_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesMemoryGetState);
|
|
|
|
pDdiTable->pfnGetBandwidth = (zes_pfnMemoryGetBandwidth_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesMemoryGetBandwidth);
|
2020-07-29 17:45:54 +08:00
|
|
|
|
|
|
|
return result;
|
|
|
|
}
|
|
|
|
|
|
|
|
ZE_DLLEXPORT ze_result_t ZE_APICALL
|
|
|
|
zesGetPerformanceFactorProcAddrTable(
|
|
|
|
ze_api_version_t version,
|
|
|
|
zes_performance_factor_dditable_t *pDdiTable) {
|
|
|
|
if (nullptr == pDdiTable)
|
|
|
|
return ZE_RESULT_ERROR_INVALID_ARGUMENT;
|
|
|
|
if (driver_ddiTable.version < version)
|
|
|
|
return ZE_RESULT_ERROR_UNKNOWN;
|
2020-10-12 16:54:21 +08:00
|
|
|
if (nullptr == driver_ddiTable.driverLibrary) {
|
|
|
|
return ZE_RESULT_ERROR_UNINITIALIZED;
|
|
|
|
}
|
2020-07-29 17:45:54 +08:00
|
|
|
ze_result_t result = ZE_RESULT_SUCCESS;
|
2020-10-12 16:54:21 +08:00
|
|
|
pDdiTable->pfnGetProperties = (zes_pfnPerformanceFactorGetProperties_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesPerformanceFactorGetProperties);
|
|
|
|
pDdiTable->pfnGetConfig = (zes_pfnPerformanceFactorGetConfig_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesPerformanceFactorGetConfig);
|
|
|
|
pDdiTable->pfnSetConfig = (zes_pfnPerformanceFactorSetConfig_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesPerformanceFactorSetConfig);
|
2020-07-29 17:45:54 +08:00
|
|
|
|
|
|
|
return result;
|
|
|
|
}
|
|
|
|
|
|
|
|
ZE_DLLEXPORT ze_result_t ZE_APICALL
|
|
|
|
zesGetPowerProcAddrTable(
|
|
|
|
ze_api_version_t version,
|
|
|
|
zes_power_dditable_t *pDdiTable) {
|
|
|
|
if (nullptr == pDdiTable)
|
|
|
|
return ZE_RESULT_ERROR_INVALID_ARGUMENT;
|
|
|
|
if (driver_ddiTable.version < version)
|
|
|
|
return ZE_RESULT_ERROR_UNKNOWN;
|
2020-10-12 16:54:21 +08:00
|
|
|
if (nullptr == driver_ddiTable.driverLibrary) {
|
|
|
|
return ZE_RESULT_ERROR_UNINITIALIZED;
|
|
|
|
}
|
2020-07-29 17:45:54 +08:00
|
|
|
ze_result_t result = ZE_RESULT_SUCCESS;
|
2020-10-12 16:54:21 +08:00
|
|
|
pDdiTable->pfnGetProperties = (zes_pfnPowerGetProperties_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesPowerGetProperties);
|
|
|
|
pDdiTable->pfnGetEnergyCounter = (zes_pfnPowerGetEnergyCounter_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesPowerGetEnergyCounter);
|
|
|
|
pDdiTable->pfnGetLimits = (zes_pfnPowerGetLimits_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesPowerGetLimits);
|
|
|
|
pDdiTable->pfnSetLimits = (zes_pfnPowerSetLimits_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesPowerSetLimits);
|
|
|
|
pDdiTable->pfnGetEnergyThreshold = (zes_pfnPowerGetEnergyThreshold_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesPowerGetEnergyThreshold);
|
|
|
|
pDdiTable->pfnSetEnergyThreshold = (zes_pfnPowerSetEnergyThreshold_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesPowerSetEnergyThreshold);
|
2020-07-29 17:45:54 +08:00
|
|
|
|
|
|
|
return result;
|
|
|
|
}
|
|
|
|
|
|
|
|
ZE_DLLEXPORT ze_result_t ZE_APICALL
|
|
|
|
zesGetPsuProcAddrTable(
|
|
|
|
ze_api_version_t version,
|
|
|
|
zes_psu_dditable_t *pDdiTable) {
|
|
|
|
if (nullptr == pDdiTable)
|
|
|
|
return ZE_RESULT_ERROR_INVALID_ARGUMENT;
|
|
|
|
if (driver_ddiTable.version < version)
|
|
|
|
return ZE_RESULT_ERROR_UNKNOWN;
|
2020-10-12 16:54:21 +08:00
|
|
|
if (nullptr == driver_ddiTable.driverLibrary) {
|
|
|
|
return ZE_RESULT_ERROR_UNINITIALIZED;
|
|
|
|
}
|
2020-07-29 17:45:54 +08:00
|
|
|
ze_result_t result = ZE_RESULT_SUCCESS;
|
2020-10-12 16:54:21 +08:00
|
|
|
pDdiTable->pfnGetProperties = (zes_pfnPsuGetProperties_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesPsuGetProperties);
|
|
|
|
pDdiTable->pfnGetState = (zes_pfnPsuGetState_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesPsuGetState);
|
2020-07-29 17:45:54 +08:00
|
|
|
|
|
|
|
return result;
|
|
|
|
}
|
|
|
|
|
|
|
|
ZE_DLLEXPORT ze_result_t ZE_APICALL
|
|
|
|
zesGetRasProcAddrTable(
|
|
|
|
ze_api_version_t version,
|
|
|
|
zes_ras_dditable_t *pDdiTable) {
|
|
|
|
if (nullptr == pDdiTable)
|
|
|
|
return ZE_RESULT_ERROR_INVALID_ARGUMENT;
|
|
|
|
if (driver_ddiTable.version < version)
|
|
|
|
return ZE_RESULT_ERROR_UNKNOWN;
|
2020-10-12 16:54:21 +08:00
|
|
|
if (nullptr == driver_ddiTable.driverLibrary) {
|
|
|
|
return ZE_RESULT_ERROR_UNINITIALIZED;
|
|
|
|
}
|
2020-07-29 17:45:54 +08:00
|
|
|
ze_result_t result = ZE_RESULT_SUCCESS;
|
2020-10-12 16:54:21 +08:00
|
|
|
pDdiTable->pfnGetProperties = (zes_pfnRasGetProperties_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesRasGetProperties);
|
|
|
|
pDdiTable->pfnGetConfig = (zes_pfnRasGetConfig_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesRasGetConfig);
|
|
|
|
pDdiTable->pfnSetConfig = (zes_pfnRasSetConfig_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesRasSetConfig);
|
|
|
|
pDdiTable->pfnGetState = (zes_pfnRasGetState_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesRasGetState);
|
2020-07-29 17:45:54 +08:00
|
|
|
|
|
|
|
return result;
|
|
|
|
}
|
|
|
|
|
|
|
|
ZE_DLLEXPORT ze_result_t ZE_APICALL
|
|
|
|
zesGetSchedulerProcAddrTable(
|
|
|
|
ze_api_version_t version,
|
|
|
|
zes_scheduler_dditable_t *pDdiTable) {
|
|
|
|
if (nullptr == pDdiTable)
|
|
|
|
return ZE_RESULT_ERROR_INVALID_ARGUMENT;
|
|
|
|
if (driver_ddiTable.version < version)
|
|
|
|
return ZE_RESULT_ERROR_UNKNOWN;
|
2020-10-12 16:54:21 +08:00
|
|
|
if (nullptr == driver_ddiTable.driverLibrary) {
|
|
|
|
return ZE_RESULT_ERROR_UNINITIALIZED;
|
|
|
|
}
|
2020-07-29 17:45:54 +08:00
|
|
|
ze_result_t result = ZE_RESULT_SUCCESS;
|
2020-10-12 16:54:21 +08:00
|
|
|
pDdiTable->pfnGetProperties = (zes_pfnSchedulerGetProperties_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesSchedulerGetProperties);
|
|
|
|
pDdiTable->pfnGetCurrentMode = (zes_pfnSchedulerGetCurrentMode_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesSchedulerGetCurrentMode);
|
|
|
|
pDdiTable->pfnGetTimeoutModeProperties = (zes_pfnSchedulerGetTimeoutModeProperties_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesSchedulerGetTimeoutModeProperties);
|
|
|
|
pDdiTable->pfnGetTimesliceModeProperties = (zes_pfnSchedulerGetTimesliceModeProperties_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesSchedulerGetTimesliceModeProperties);
|
|
|
|
pDdiTable->pfnSetTimeoutMode = (zes_pfnSchedulerSetTimeoutMode_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesSchedulerSetTimeoutMode);
|
|
|
|
pDdiTable->pfnSetTimesliceMode = (zes_pfnSchedulerSetTimesliceMode_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesSchedulerSetTimesliceMode);
|
|
|
|
pDdiTable->pfnSetExclusiveMode = (zes_pfnSchedulerSetExclusiveMode_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesSchedulerSetExclusiveMode);
|
|
|
|
pDdiTable->pfnSetComputeUnitDebugMode = (zes_pfnSchedulerSetComputeUnitDebugMode_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesSchedulerSetComputeUnitDebugMode);
|
2020-07-29 17:45:54 +08:00
|
|
|
|
|
|
|
return result;
|
|
|
|
}
|
|
|
|
|
|
|
|
ZE_DLLEXPORT ze_result_t ZE_APICALL
|
|
|
|
zesGetStandbyProcAddrTable(
|
|
|
|
ze_api_version_t version,
|
|
|
|
zes_standby_dditable_t *pDdiTable) {
|
|
|
|
if (nullptr == pDdiTable)
|
|
|
|
return ZE_RESULT_ERROR_INVALID_ARGUMENT;
|
|
|
|
if (driver_ddiTable.version < version)
|
|
|
|
return ZE_RESULT_ERROR_UNKNOWN;
|
2020-10-12 16:54:21 +08:00
|
|
|
if (nullptr == driver_ddiTable.driverLibrary) {
|
|
|
|
return ZE_RESULT_ERROR_UNINITIALIZED;
|
|
|
|
}
|
2020-07-29 17:45:54 +08:00
|
|
|
ze_result_t result = ZE_RESULT_SUCCESS;
|
2020-10-12 16:54:21 +08:00
|
|
|
pDdiTable->pfnGetProperties = (zes_pfnStandbyGetProperties_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesStandbyGetProperties);
|
|
|
|
pDdiTable->pfnGetMode = (zes_pfnStandbyGetMode_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesStandbyGetMode);
|
|
|
|
pDdiTable->pfnSetMode = (zes_pfnStandbySetMode_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesStandbySetMode);
|
2020-07-29 17:45:54 +08:00
|
|
|
|
|
|
|
return result;
|
|
|
|
}
|
|
|
|
|
|
|
|
ZE_DLLEXPORT ze_result_t ZE_APICALL
|
|
|
|
zesGetTemperatureProcAddrTable(
|
|
|
|
ze_api_version_t version,
|
|
|
|
zes_temperature_dditable_t *pDdiTable) {
|
|
|
|
if (nullptr == pDdiTable)
|
|
|
|
return ZE_RESULT_ERROR_INVALID_ARGUMENT;
|
|
|
|
if (driver_ddiTable.version < version)
|
|
|
|
return ZE_RESULT_ERROR_UNKNOWN;
|
2020-10-12 16:54:21 +08:00
|
|
|
if (nullptr == driver_ddiTable.driverLibrary) {
|
|
|
|
return ZE_RESULT_ERROR_UNINITIALIZED;
|
|
|
|
}
|
2020-07-29 17:45:54 +08:00
|
|
|
ze_result_t result = ZE_RESULT_SUCCESS;
|
2020-10-12 16:54:21 +08:00
|
|
|
pDdiTable->pfnGetProperties = (zes_pfnTemperatureGetProperties_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesTemperatureGetProperties);
|
|
|
|
pDdiTable->pfnGetConfig = (zes_pfnTemperatureGetConfig_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesTemperatureGetConfig);
|
|
|
|
pDdiTable->pfnSetConfig = (zes_pfnTemperatureSetConfig_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesTemperatureSetConfig);
|
|
|
|
pDdiTable->pfnGetState = (zes_pfnTemperatureGetState_t)GET_FUNCTION_PTR(driver_ddiTable.driverLibrary, zesTemperatureGetState);
|
2020-07-29 17:45:54 +08:00
|
|
|
|
|
|
|
return result;
|
|
|
|
}
|