sysman: add basic steps for IFR status.

In field repair status information is needed as part of Device
reset status

Signed-off-by: Vilvaraj, T J Vivek <t.j.vivek.vilvaraj@intel.com>
This commit is contained in:
Vilvaraj, T J Vivek
2021-02-24 16:35:03 +05:30
committed by Compute-Runtime-Automation
parent fabd834941
commit b56b204f3e
16 changed files with 120 additions and 55 deletions

View File

@@ -1,22 +1,27 @@
#
# Copyright (C) 2020 Intel Corporation
# Copyright (C) 2020-2021 Intel Corporation
#
# SPDX-License-Identifier: MIT
#
if(libigsc_FOUND)
set(L0_SRCS_TOOLS_SYSMAN_LINUX_FIRMWARE_UTIL
${CMAKE_CURRENT_SOURCE_DIR}/firmware_util_imp.cpp
${CMAKE_CURRENT_SOURCE_DIR}/firmware_util_imp.h
${CMAKE_CURRENT_SOURCE_DIR}${BRANCH_DIR_SUFFIX}/firmware_util_imp.cpp
${CMAKE_CURRENT_SOURCE_DIR}${BRANCH_DIR_SUFFIX}/firmware_util_imp.h
${CMAKE_CURRENT_SOURCE_DIR}/firmware_util_base.h
${CMAKE_CURRENT_SOURCE_DIR}/firmware_util_extended.h
${CMAKE_CURRENT_SOURCE_DIR}/firmware_util.h
)
else()
set(L0_SRCS_TOOLS_SYSMAN_LINUX_FIRMWARE_UTIL
${CMAKE_CURRENT_SOURCE_DIR}/firmware_util_imp_stub.cpp
${CMAKE_CURRENT_SOURCE_DIR}/firmware_util_base.h
${CMAKE_CURRENT_SOURCE_DIR}/firmware_util_extended.h
${CMAKE_CURRENT_SOURCE_DIR}/firmware_util.h
)
endif()
configure_file(${CMAKE_CURRENT_SOURCE_DIR}${BRANCH_DIR_SUFFIX}/firmware_util_extended.h ${CMAKE_CURRENT_SOURCE_DIR}/firmware_util_extended.h)
if(UNIX)
target_sources(${L0_STATIC_LIB_NAME}

View File

@@ -10,26 +10,16 @@
#include "shared/source/helpers/non_copyable_or_moveable.h"
#include "level_zero/core/source/device/device.h"
#include "level_zero/tools/source/sysman/linux/firmware_util/firmware_util_base.h"
#include "level_zero/tools/source/sysman/linux/firmware_util/firmware_util_extended.h"
#ifdef IGSC_PRESENT
#include "igsc_lib.h"
#else
typedef struct igsc_device_info {
} igsc_device_info_t;
#endif
#include <string>
#include <vector>
namespace L0 {
class FirmwareUtil {
class FirmwareUtil : public virtual FirmwareUtilBase, public virtual FirmwareUtilExtended {
public:
static FirmwareUtil *create();
virtual ze_result_t fwDeviceInit() = 0;
virtual ze_result_t getFirstDevice(igsc_device_info *) = 0;
virtual ze_result_t fwGetVersion(std::string &fwVersion) = 0;
virtual ze_result_t opromGetVersion(std::string &fwVersion) = 0;
virtual ze_result_t fwFlashGSC(void *pImage, uint32_t size) = 0;
virtual ze_result_t fwFlashOprom(void *pImage, uint32_t size) = 0;
virtual ~FirmwareUtil() = default;
};
} // namespace L0

View File

@@ -0,0 +1,31 @@
/*
* Copyright (C) 2020-2021 Intel Corporation
*
* SPDX-License-Identifier: MIT
*
*/
#pragma once
#include "shared/source/helpers/non_copyable_or_moveable.h"
#include "level_zero/core/source/device/device.h"
#ifdef IGSC_PRESENT
#include "igsc_lib.h"
#else
typedef struct igsc_device_info {
} igsc_device_info_t;
#endif
namespace L0 {
class FirmwareUtilBase {
public:
virtual ze_result_t fwDeviceInit() = 0;
virtual ze_result_t getFirstDevice(igsc_device_info *) = 0;
virtual ze_result_t fwGetVersion(std::string &fwVersion) = 0;
virtual ze_result_t opromGetVersion(std::string &fwVersion) = 0;
virtual ze_result_t fwFlashGSC(void *pImage, uint32_t size) = 0;
virtual ze_result_t fwFlashOprom(void *pImage, uint32_t size) = 0;
};
} // namespace L0

View File

@@ -0,0 +1,22 @@
/*
* Copyright (C) 2020-2021 Intel Corporation
*
* SPDX-License-Identifier: MIT
*
*/
#pragma once
#include "shared/source/helpers/non_copyable_or_moveable.h"
#include "level_zero/core/source/device/device.h"
#ifdef IGSC_PRESENT
#include "igsc_lib.h"
#endif
namespace L0 {
class FirmwareUtilExtended {
public:
};
} // namespace L0