| // Copyright 2021 The ChromiumOS Authors |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #ifndef RMAD_UTILS_CBI_UTILS_H_ |
| #define RMAD_UTILS_CBI_UTILS_H_ |
| |
| #include <string> |
| |
| namespace rmad { |
| |
| class CbiUtils { |
| public: |
| CbiUtils() = default; |
| virtual ~CbiUtils() = default; |
| |
| // Get the sku id of the device from cbi. |
| virtual bool GetSkuId(uint32_t* sku_id) const = 0; |
| |
| // Get the dram part number of the device from cbi. |
| virtual bool GetDramPartNum(std::string* dram_part_num) const = 0; |
| |
| // Get the second source factory cache of the device from cbi. |
| virtual bool GetSsfc(uint32_t* ssfc) const = 0; |
| |
| // Get the firmware config of the device from cbi. |
| virtual bool GetFirmwareConfig(uint32_t* firmware_config) const = 0; |
| |
| // Set the sku id of the device to cbi. |
| virtual bool SetSkuId(uint32_t sku_id) = 0; |
| |
| // Set the dram part number of the device to cbi. |
| virtual bool SetDramPartNum(const std::string& dram_part_num) = 0; |
| |
| // Set the second source factory cache of the device to cbi. |
| virtual bool SetSsfc(uint32_t ssfc) = 0; |
| |
| // Set the firmware config of the device to cbi. |
| virtual bool SetFirmwareConfig(uint32_t firmware_config) = 0; |
| }; |
| |
| } // namespace rmad |
| |
| #endif // RMAD_UTILS_CBI_UTILS_H_ |