mirror of
https://github.com/intel/compute-runtime.git
synced 2025-12-31 12:11:31 +08:00
The following modifications were done as part of the fix for warm reset. 1. Release sysman resources before quiscenting the GPU. 2. Add additional checks to confirm quiscenting of the GPU before launching the diagnostics tests. 3. Fixed warm reset with wait time to allow the changes to be propagated to the entire GPU PCI tree. 4. Modified the ULT's completely to avoid the usage of MOCKS. 5. Made Diagnostics handle creation per-device from per-SubDevice. Related-To: LOCI-3053 Signed-off-by: Vilvaraj, T J Vivek <t.j.vivek.vilvaraj@intel.com>
30 lines
825 B
C++
30 lines
825 B
C++
/*
|
|
* Copyright (C) 2021-2022 Intel Corporation
|
|
*
|
|
* SPDX-License-Identifier: MIT
|
|
*
|
|
*/
|
|
|
|
#pragma once
|
|
|
|
#include "level_zero/tools/source/sysman/os_sysman.h"
|
|
#include <level_zero/zes_api.h>
|
|
|
|
#include <memory>
|
|
#include <string>
|
|
#include <vector>
|
|
|
|
namespace L0 {
|
|
|
|
class OsDiagnostics {
|
|
public:
|
|
virtual void osGetDiagProperties(zes_diag_properties_t *pProperties) = 0;
|
|
virtual ze_result_t osGetDiagTests(uint32_t *pCount, zes_diag_test_t *pTests) = 0;
|
|
virtual ze_result_t osRunDiagTests(uint32_t start, uint32_t end, zes_diag_result_t *pResult) = 0;
|
|
static std::unique_ptr<OsDiagnostics> create(OsSysman *pOsSysman, const std::string &diagTests);
|
|
static void getSupportedDiagTestsFromFW(void *pOsSysman, std::vector<std::string> &supportedDiagTests);
|
|
virtual ~OsDiagnostics() {}
|
|
};
|
|
|
|
} // namespace L0
|