mirror of
https://git.proxmox.com/git/fwupd
synced 2025-05-02 05:27:11 +00:00
144 lines
3.1 KiB
C
144 lines
3.1 KiB
C
/*
|
|
* Copyright (C) 2017 Richard Hughes <richard@hughsie.com>
|
|
*
|
|
* SPDX-License-Identifier: LGPL-2.1+
|
|
*/
|
|
|
|
#pragma once
|
|
|
|
#include <glib-object.h>
|
|
|
|
#include "fu-smbios.h"
|
|
|
|
#define FU_TYPE_HWIDS (fu_hwids_get_type())
|
|
|
|
G_DECLARE_FINAL_TYPE(FuHwids, fu_hwids, FU, HWIDS, GObject)
|
|
|
|
/**
|
|
* FU_HWIDS_KEY_BASEBOARD_MANUFACTURER:
|
|
*
|
|
* The HwID key for the baseboard (motherboard) vendor.
|
|
*
|
|
* Since: 1.3.7
|
|
**/
|
|
#define FU_HWIDS_KEY_BASEBOARD_MANUFACTURER "BaseboardManufacturer"
|
|
/**
|
|
* FU_HWIDS_KEY_BASEBOARD_PRODUCT:
|
|
*
|
|
* The HwID key for baseboard (motherboard) product.
|
|
*
|
|
* Since: 1.3.7
|
|
**/
|
|
#define FU_HWIDS_KEY_BASEBOARD_PRODUCT "BaseboardProduct"
|
|
/**
|
|
* FU_HWIDS_KEY_BIOS_MAJOR_RELEASE:
|
|
*
|
|
* The HwID key for the BIOS major version.
|
|
*
|
|
* Since: 1.3.7
|
|
**/
|
|
#define FU_HWIDS_KEY_BIOS_MAJOR_RELEASE "BiosMajorRelease"
|
|
/**
|
|
* FU_HWIDS_KEY_BIOS_MINOR_RELEASE:
|
|
*
|
|
* The HwID key for the BIOS minor version.
|
|
*
|
|
* Since: 1.3.7
|
|
**/
|
|
#define FU_HWIDS_KEY_BIOS_MINOR_RELEASE "BiosMinorRelease"
|
|
/**
|
|
* FU_HWIDS_KEY_BIOS_VENDOR:
|
|
*
|
|
* The HwID key for the BIOS vendor.
|
|
*
|
|
* Since: 1.3.7
|
|
**/
|
|
#define FU_HWIDS_KEY_BIOS_VENDOR "BiosVendor"
|
|
/**
|
|
* FU_HWIDS_KEY_BIOS_VERSION:
|
|
*
|
|
* The HwID key for the BIOS version.
|
|
*
|
|
* Since: 1.3.7
|
|
**/
|
|
#define FU_HWIDS_KEY_BIOS_VERSION "BiosVersion"
|
|
/**
|
|
* FU_HWIDS_KEY_FIRMWARE_MAJOR_RELEASE:
|
|
*
|
|
* The HwID key for the firmware major version.
|
|
*
|
|
* Since: 1.6.1
|
|
**/
|
|
#define FU_HWIDS_KEY_FIRMWARE_MAJOR_RELEASE "FirmwareMajorRelease"
|
|
/**
|
|
* FU_HWIDS_KEY_FIRMWARE_MINOR_RELEASE:
|
|
*
|
|
* The HwID key for the firmware minor version.
|
|
*
|
|
* Since: 1.6.1
|
|
**/
|
|
#define FU_HWIDS_KEY_FIRMWARE_MINOR_RELEASE "FirmwareMinorRelease"
|
|
/**
|
|
* FU_HWIDS_KEY_ENCLOSURE_KIND:
|
|
*
|
|
* The HwID key for the enclosure kind.
|
|
*
|
|
* Since: 1.3.7
|
|
**/
|
|
#define FU_HWIDS_KEY_ENCLOSURE_KIND "EnclosureKind"
|
|
/**
|
|
* FU_HWIDS_KEY_FAMILY:
|
|
*
|
|
* The HwID key for the deice family.
|
|
*
|
|
* Since: 1.3.7
|
|
**/
|
|
#define FU_HWIDS_KEY_FAMILY "Family"
|
|
/**
|
|
* FU_HWIDS_KEY_MANUFACTURER:
|
|
*
|
|
* The HwID key for the top-level product vendor.
|
|
*
|
|
* Since: 1.3.7
|
|
**/
|
|
#define FU_HWIDS_KEY_MANUFACTURER "Manufacturer"
|
|
/**
|
|
* FU_HWIDS_KEY_PRODUCT_NAME:
|
|
*
|
|
* The HwID key for the top-level product product name.
|
|
*
|
|
* Since: 1.3.7
|
|
**/
|
|
#define FU_HWIDS_KEY_PRODUCT_NAME "ProductName"
|
|
/**
|
|
* FU_HWIDS_KEY_PRODUCT_SKU:
|
|
*
|
|
* The HwID key for the top-level product SKU.
|
|
*
|
|
* Since: 1.3.7
|
|
**/
|
|
#define FU_HWIDS_KEY_PRODUCT_SKU "ProductSku"
|
|
|
|
FuHwids *
|
|
fu_hwids_new(void);
|
|
GPtrArray *
|
|
fu_hwids_get_keys(FuHwids *self);
|
|
const gchar *
|
|
fu_hwids_get_value(FuHwids *self, const gchar *key);
|
|
void
|
|
fu_hwids_add_smbios_override(FuHwids *self, const gchar *key, const gchar *value);
|
|
const gchar *
|
|
fu_hwids_get_replace_keys(FuHwids *self, const gchar *key);
|
|
gchar *
|
|
fu_hwids_get_replace_values(FuHwids *self,
|
|
const gchar *keys,
|
|
GError **error) G_GNUC_WARN_UNUSED_RESULT;
|
|
gchar *
|
|
fu_hwids_get_guid(FuHwids *self, const gchar *keys, GError **error) G_GNUC_WARN_UNUSED_RESULT;
|
|
GPtrArray *
|
|
fu_hwids_get_guids(FuHwids *self);
|
|
gboolean
|
|
fu_hwids_has_guid(FuHwids *self, const gchar *guid);
|
|
gboolean
|
|
fu_hwids_setup(FuHwids *self, FuSmbios *smbios, GError **error) G_GNUC_WARN_UNUSED_RESULT;
|