11/*
2- * Copyright (C) 2019-2020 Intel Corporation
2+ * Copyright (C) 2019-2021 Intel Corporation
33 *
44 * SPDX-License-Identifier: MIT
55 *
@@ -25,8 +25,9 @@ zesGetDeviceProcAddrTable(
2525 zes_device_dditable_t *pDdiTable) {
2626 if (nullptr == pDdiTable)
2727 return ZE_RESULT_ERROR_INVALID_ARGUMENT;
28- if (driver_ddiTable.version < version)
29- return ZE_RESULT_ERROR_UNKNOWN;
28+ if (ZE_MAJOR_VERSION (driver_ddiTable.version ) != ZE_MAJOR_VERSION (version) ||
29+ ZE_MINOR_VERSION (driver_ddiTable.version ) > ZE_MINOR_VERSION (version))
30+ return ZE_RESULT_ERROR_UNSUPPORTED_VERSION;
3031 ze_result_t result = ZE_RESULT_SUCCESS;
3132
3233 NEO::EnvironmentVariableReader envReader;
@@ -70,8 +71,9 @@ zesGetDriverProcAddrTable(
7071 zes_driver_dditable_t *pDdiTable) {
7172 if (nullptr == pDdiTable)
7273 return ZE_RESULT_ERROR_INVALID_ARGUMENT;
73- if (driver_ddiTable.version < version)
74- return ZE_RESULT_ERROR_UNKNOWN;
74+ if (ZE_MAJOR_VERSION (driver_ddiTable.version ) != ZE_MAJOR_VERSION (version) ||
75+ ZE_MINOR_VERSION (driver_ddiTable.version ) > ZE_MINOR_VERSION (version))
76+ return ZE_RESULT_ERROR_UNSUPPORTED_VERSION;
7577 ze_result_t result = ZE_RESULT_SUCCESS;
7678
7779 NEO::EnvironmentVariableReader envReader;
@@ -92,8 +94,9 @@ zesGetDiagnosticsProcAddrTable(
9294 zes_diagnostics_dditable_t *pDdiTable) {
9395 if (nullptr == pDdiTable)
9496 return ZE_RESULT_ERROR_INVALID_ARGUMENT;
95- if (driver_ddiTable.version < version)
96- return ZE_RESULT_ERROR_UNKNOWN;
97+ if (ZE_MAJOR_VERSION (driver_ddiTable.version ) != ZE_MAJOR_VERSION (version) ||
98+ ZE_MINOR_VERSION (driver_ddiTable.version ) > ZE_MINOR_VERSION (version))
99+ return ZE_RESULT_ERROR_UNSUPPORTED_VERSION;
97100 ze_result_t result = ZE_RESULT_SUCCESS;
98101
99102 NEO::EnvironmentVariableReader envReader;
@@ -117,8 +120,9 @@ zesGetEngineProcAddrTable(
117120 zes_engine_dditable_t *pDdiTable) {
118121 if (nullptr == pDdiTable)
119122 return ZE_RESULT_ERROR_INVALID_ARGUMENT;
120- if (driver_ddiTable.version < version)
121- return ZE_RESULT_ERROR_UNKNOWN;
123+ if (ZE_MAJOR_VERSION (driver_ddiTable.version ) != ZE_MAJOR_VERSION (version) ||
124+ ZE_MINOR_VERSION (driver_ddiTable.version ) > ZE_MINOR_VERSION (version))
125+ return ZE_RESULT_ERROR_UNSUPPORTED_VERSION;
122126
123127 ze_result_t result = ZE_RESULT_SUCCESS;
124128
@@ -142,8 +146,9 @@ zesGetFabricPortProcAddrTable(
142146 zes_fabric_port_dditable_t *pDdiTable) {
143147 if (nullptr == pDdiTable)
144148 return ZE_RESULT_ERROR_INVALID_ARGUMENT;
145- if (driver_ddiTable.version < version)
146- return ZE_RESULT_ERROR_UNKNOWN;
149+ if (ZE_MAJOR_VERSION (driver_ddiTable.version ) != ZE_MAJOR_VERSION (version) ||
150+ ZE_MINOR_VERSION (driver_ddiTable.version ) > ZE_MINOR_VERSION (version))
151+ return ZE_RESULT_ERROR_UNSUPPORTED_VERSION;
147152 ze_result_t result = ZE_RESULT_SUCCESS;
148153
149154 NEO::EnvironmentVariableReader envReader;
@@ -170,8 +175,9 @@ zesGetFanProcAddrTable(
170175 zes_fan_dditable_t *pDdiTable) {
171176 if (nullptr == pDdiTable)
172177 return ZE_RESULT_ERROR_INVALID_ARGUMENT;
173- if (driver_ddiTable.version < version)
174- return ZE_RESULT_ERROR_UNKNOWN;
178+ if (ZE_MAJOR_VERSION (driver_ddiTable.version ) != ZE_MAJOR_VERSION (version) ||
179+ ZE_MINOR_VERSION (driver_ddiTable.version ) > ZE_MINOR_VERSION (version))
180+ return ZE_RESULT_ERROR_UNSUPPORTED_VERSION;
175181 ze_result_t result = ZE_RESULT_SUCCESS;
176182
177183 NEO::EnvironmentVariableReader envReader;
@@ -198,8 +204,9 @@ zesGetFirmwareProcAddrTable(
198204 zes_firmware_dditable_t *pDdiTable) {
199205 if (nullptr == pDdiTable)
200206 return ZE_RESULT_ERROR_INVALID_ARGUMENT;
201- if (driver_ddiTable.version < version)
202- return ZE_RESULT_ERROR_UNKNOWN;
207+ if (ZE_MAJOR_VERSION (driver_ddiTable.version ) != ZE_MAJOR_VERSION (version) ||
208+ ZE_MINOR_VERSION (driver_ddiTable.version ) > ZE_MINOR_VERSION (version))
209+ return ZE_RESULT_ERROR_UNSUPPORTED_VERSION;
203210 ze_result_t result = ZE_RESULT_SUCCESS;
204211
205212 NEO::EnvironmentVariableReader envReader;
@@ -222,8 +229,9 @@ zesGetFrequencyProcAddrTable(
222229 zes_frequency_dditable_t *pDdiTable) {
223230 if (nullptr == pDdiTable)
224231 return ZE_RESULT_ERROR_INVALID_ARGUMENT;
225- if (driver_ddiTable.version < version)
226- return ZE_RESULT_ERROR_UNKNOWN;
232+ if (ZE_MAJOR_VERSION (driver_ddiTable.version ) != ZE_MAJOR_VERSION (version) ||
233+ ZE_MINOR_VERSION (driver_ddiTable.version ) > ZE_MINOR_VERSION (version))
234+ return ZE_RESULT_ERROR_UNSUPPORTED_VERSION;
227235
228236 ze_result_t result = ZE_RESULT_SUCCESS;
229237
@@ -262,8 +270,9 @@ zesGetLedProcAddrTable(
262270 zes_led_dditable_t *pDdiTable) {
263271 if (nullptr == pDdiTable)
264272 return ZE_RESULT_ERROR_INVALID_ARGUMENT;
265- if (driver_ddiTable.version < version)
266- return ZE_RESULT_ERROR_UNKNOWN;
273+ if (ZE_MAJOR_VERSION (driver_ddiTable.version ) != ZE_MAJOR_VERSION (version) ||
274+ ZE_MINOR_VERSION (driver_ddiTable.version ) > ZE_MINOR_VERSION (version))
275+ return ZE_RESULT_ERROR_UNSUPPORTED_VERSION;
267276 ze_result_t result = ZE_RESULT_SUCCESS;
268277
269278 NEO::EnvironmentVariableReader envReader;
@@ -288,8 +297,9 @@ zesGetMemoryProcAddrTable(
288297 zes_memory_dditable_t *pDdiTable) {
289298 if (nullptr == pDdiTable)
290299 return ZE_RESULT_ERROR_INVALID_ARGUMENT;
291- if (driver_ddiTable.version < version)
292- return ZE_RESULT_ERROR_UNKNOWN;
300+ if (ZE_MAJOR_VERSION (driver_ddiTable.version ) != ZE_MAJOR_VERSION (version) ||
301+ ZE_MINOR_VERSION (driver_ddiTable.version ) > ZE_MINOR_VERSION (version))
302+ return ZE_RESULT_ERROR_UNSUPPORTED_VERSION;
293303 ze_result_t result = ZE_RESULT_SUCCESS;
294304
295305 NEO::EnvironmentVariableReader envReader;
@@ -313,8 +323,9 @@ zesGetPerformanceFactorProcAddrTable(
313323 zes_performance_factor_dditable_t *pDdiTable) {
314324 if (nullptr == pDdiTable)
315325 return ZE_RESULT_ERROR_INVALID_ARGUMENT;
316- if (driver_ddiTable.version < version)
317- return ZE_RESULT_ERROR_UNKNOWN;
326+ if (ZE_MAJOR_VERSION (driver_ddiTable.version ) != ZE_MAJOR_VERSION (version) ||
327+ ZE_MINOR_VERSION (driver_ddiTable.version ) > ZE_MINOR_VERSION (version))
328+ return ZE_RESULT_ERROR_UNSUPPORTED_VERSION;
318329 ze_result_t result = ZE_RESULT_SUCCESS;
319330
320331 NEO::EnvironmentVariableReader envReader;
@@ -338,8 +349,9 @@ zesGetPowerProcAddrTable(
338349 zes_power_dditable_t *pDdiTable) {
339350 if (nullptr == pDdiTable)
340351 return ZE_RESULT_ERROR_INVALID_ARGUMENT;
341- if (driver_ddiTable.version < version)
342- return ZE_RESULT_ERROR_UNKNOWN;
352+ if (ZE_MAJOR_VERSION (driver_ddiTable.version ) != ZE_MAJOR_VERSION (version) ||
353+ ZE_MINOR_VERSION (driver_ddiTable.version ) > ZE_MINOR_VERSION (version))
354+ return ZE_RESULT_ERROR_UNSUPPORTED_VERSION;
343355 ze_result_t result = ZE_RESULT_SUCCESS;
344356
345357 NEO::EnvironmentVariableReader envReader;
@@ -366,8 +378,9 @@ zesGetPsuProcAddrTable(
366378 zes_psu_dditable_t *pDdiTable) {
367379 if (nullptr == pDdiTable)
368380 return ZE_RESULT_ERROR_INVALID_ARGUMENT;
369- if (driver_ddiTable.version < version)
370- return ZE_RESULT_ERROR_UNKNOWN;
381+ if (ZE_MAJOR_VERSION (driver_ddiTable.version ) != ZE_MAJOR_VERSION (version) ||
382+ ZE_MINOR_VERSION (driver_ddiTable.version ) > ZE_MINOR_VERSION (version))
383+ return ZE_RESULT_ERROR_UNSUPPORTED_VERSION;
371384 ze_result_t result = ZE_RESULT_SUCCESS;
372385
373386 NEO::EnvironmentVariableReader envReader;
@@ -390,8 +403,9 @@ zesGetRasProcAddrTable(
390403 zes_ras_dditable_t *pDdiTable) {
391404 if (nullptr == pDdiTable)
392405 return ZE_RESULT_ERROR_INVALID_ARGUMENT;
393- if (driver_ddiTable.version < version)
394- return ZE_RESULT_ERROR_UNKNOWN;
406+ if (ZE_MAJOR_VERSION (driver_ddiTable.version ) != ZE_MAJOR_VERSION (version) ||
407+ ZE_MINOR_VERSION (driver_ddiTable.version ) > ZE_MINOR_VERSION (version))
408+ return ZE_RESULT_ERROR_UNSUPPORTED_VERSION;
395409 ze_result_t result = ZE_RESULT_SUCCESS;
396410
397411 NEO::EnvironmentVariableReader envReader;
@@ -416,8 +430,9 @@ zesGetSchedulerProcAddrTable(
416430 zes_scheduler_dditable_t *pDdiTable) {
417431 if (nullptr == pDdiTable)
418432 return ZE_RESULT_ERROR_INVALID_ARGUMENT;
419- if (driver_ddiTable.version < version)
420- return ZE_RESULT_ERROR_UNKNOWN;
433+ if (ZE_MAJOR_VERSION (driver_ddiTable.version ) != ZE_MAJOR_VERSION (version) ||
434+ ZE_MINOR_VERSION (driver_ddiTable.version ) > ZE_MINOR_VERSION (version))
435+ return ZE_RESULT_ERROR_UNSUPPORTED_VERSION;
421436 ze_result_t result = ZE_RESULT_SUCCESS;
422437
423438 NEO::EnvironmentVariableReader envReader;
@@ -446,8 +461,9 @@ zesGetStandbyProcAddrTable(
446461 zes_standby_dditable_t *pDdiTable) {
447462 if (nullptr == pDdiTable)
448463 return ZE_RESULT_ERROR_INVALID_ARGUMENT;
449- if (driver_ddiTable.version < version)
450- return ZE_RESULT_ERROR_UNKNOWN;
464+ if (ZE_MAJOR_VERSION (driver_ddiTable.version ) != ZE_MAJOR_VERSION (version) ||
465+ ZE_MINOR_VERSION (driver_ddiTable.version ) > ZE_MINOR_VERSION (version))
466+ return ZE_RESULT_ERROR_UNSUPPORTED_VERSION;
451467 ze_result_t result = ZE_RESULT_SUCCESS;
452468
453469 NEO::EnvironmentVariableReader envReader;
@@ -471,8 +487,9 @@ zesGetTemperatureProcAddrTable(
471487 zes_temperature_dditable_t *pDdiTable) {
472488 if (nullptr == pDdiTable)
473489 return ZE_RESULT_ERROR_INVALID_ARGUMENT;
474- if (driver_ddiTable.version < version)
475- return ZE_RESULT_ERROR_UNKNOWN;
490+ if (ZE_MAJOR_VERSION (driver_ddiTable.version ) != ZE_MAJOR_VERSION (version) ||
491+ ZE_MINOR_VERSION (driver_ddiTable.version ) > ZE_MINOR_VERSION (version))
492+ return ZE_RESULT_ERROR_UNSUPPORTED_VERSION;
476493 ze_result_t result = ZE_RESULT_SUCCESS;
477494
478495 NEO::EnvironmentVariableReader envReader;
0 commit comments