nvram_device-Strukturreferenz
#include <
nvram.h
>
Datenfelder |
|
struct hw_device_t | common |
nvram_result_t (* | get_total_size_in_bytes )(const struct nvram_device *device, uint64_t *total_size) |
nvram_result_t (* | get_available_size_in_bytes )(const struct nvram_device *device, uint64_t *available_size) |
nvram_result_t (* | get_max_space_size_in_bytes )(const struct nvram_device *device, uint64_t *max_space_size) |
nvram_result_t (* | get_max_spaces )(const struct nvram_device *device, uint32_t *num_spaces) |
nvram_result_t (* | get_space_list )(const struct nvram_device *device, uint32_t max_list_size, uint32_t *space_index_list, uint32_t *list_size) |
nvram_result_t (* | get_space_size )(const struct nvram_device *device, uint32_t index, uint64_t *size) |
nvram_result_t (* | get_space_controls )(const struct nvram_device *device, uint32_t index, uint32_t max_list_size, nvram_control_t *control_list, uint32_t *list_size) |
nvram_result_t (* | is_space_locked )(const struct nvram_device *device, uint32_t index, int *write_lock_enabled, int *read_lock_enabled) |
nvram_result_t (* | create_space )(const struct nvram_device *device, uint32_t index, uint64_t size_in_bytes, const nvram_control_t *control_list, uint32_t list_size, const uint8_t *authorization_value, uint32_t authorization_value_size) |
nvram_result_t (* | delete_space )(const struct nvram_device *device, uint32_t index, const uint8_t *authorization_value, uint32_t authorization_value_size) |
nvram_result_t (* | disable_create )(const struct nvram_device *device) |
nvram_result_t (* | write_space )(const struct nvram_device *device, uint32_t index, const uint8_t *buffer, uint64_t buffer_size, const uint8_t *authorization_value, uint32_t authorization_value_size) |
nvram_result_t (* | read_space )(const struct nvram_device *device, uint32_t index, uint64_t num_bytes_to_read, const uint8_t *authorization_value, uint32_t authorization_value_size, uint8_t *buffer, uint64_t *bytes_read) |
nvram_result_t (* | enable_write_lock )(const struct nvram_device *device, uint32_t index, const uint8_t *authorization_value, uint32_t authorization_value_size) |
nvram_result_t (* | enable_read_lock )(const struct nvram_device *device, uint32_t index, const uint8_t *authorization_value, uint32_t authorization_value_size) |
Detaillierte Beschreibung
Felddokumentation
struct hw_device_t common |
Gängige Methoden von nvram_device Dieser muss das erste Mitglied von nvram_device sein, da Nutzer dieser Struktur einen hw_device_t in einen nvram_device -Pointer umwandeln, wenn bekannt ist, dass hw_device_t auf ein nvram_device verweist.
nvram_result_t (* create_space)(const struct nvram_device *device, uint32_t index, uint64_t size_in_bytes, const nvram_control_t *control_list, uint32_t list_size, const uint8_t *authorization_value, uint32_t authorization_value_size) |
Erstellt einen neuen Gruppenbereich mit dem angegebenen Index, der angegebenen Größe, den angegebenen Steuerelementen und dem angegebenen Autorisierungswert.
device: Die nvram_device -Instanz. Der Index kann ein beliebiger 32‑Bit-Wert sein, darf aber keinem vorhandenen Speicherplatz zugewiesen sein. „size_in_bytes“ ist die Anzahl der Bytes, die für den Speicherplatz zugewiesen werden sollen. „control_list“ ist ein Array mit Steuerelementen, die für den Speicherplatz erzwungen werden sollen. „list_size“ ist die Anzahl der Elemente in „control_list“. „authorization_value“: Wenn „control_list“ NV_CONTROL_READ_AUTHORIZATION und / oder NV_CONTROL_WRITE_AUTHORIZATION enthält, gibt dieser Parameter den Autorisierungswert für diese Richtlinien an. Wenn beide Steuerelemente festgelegt sind, gilt dieser Wert für beide. Andernfalls wird dieser Wert ignoriert und kann NULL sein. authorization_value_size – Die Anzahl der Byte in |authorization_value|.
nvram_result_t (* delete_space)(const struct nvram_device *device, uint32_t index, const uint8_t *authorization_value, uint32_t authorization_value_size) |
Löscht einen Gruppenbereich.
device: Die nvram_device -Instanz. Andernfalls wird dieser Wert ignoriert und kann NULL sein. authorization_value_size – Die Anzahl der Byte in |authorization_value|.
nvram_result_t (* disable_create)(const struct nvram_device *device) |
Das Erstellen weiterer Gruppenbereiche wird bis zum nächsten vollständigen Zurücksetzen des Geräts deaktiviert (d. h. auf die Werkseinstellungen, nicht nur ein Neustart). Nachfolgende Aufrufe von NV_CreateSpace sollten NV_RESULT_OPERATION_DISABLED zurückgeben.
device: Die Instanz nvram_device .
nvram_result_t (* enable_read_lock)(const struct nvram_device *device, uint32_t index, const uint8_t *authorization_value, uint32_t authorization_value_size) |
Aktiviert eine Lesesperre für den angegebenen Bereich gemäß der zugehörigen Richtlinie. Wenn für den Speicherplatz nicht NV_CONTROL_BOOT_READ_LOCK festgelegt ist, hat diese Funktion keine Auswirkungen und es wird möglicherweise ein Fehler zurückgegeben.
device: Die nvram_device -Instanz. Hinweis: Für die Sperrung zum Lesen ist kein Schreibzugriff erforderlich. Eine Lesesperre ist immer flüchtig.) Andernfalls wird dieser Wert ignoriert und kann NULL sein. authorization_value_size – Die Anzahl der Byte in |authorization_value|.
nvram_result_t (* enable_write_lock)(const struct nvram_device *device, uint32_t index, const uint8_t *authorization_value, uint32_t authorization_value_size) |
Aktiviert eine Schreibsperre für den angegebenen Gruppenbereich gemäß der entsprechenden Richtlinie. Wenn für den Speicherplatz weder NV_CONTROL_PERSISTENT_WRITE_LOCK noch NV_CONTROL_BOOT_WRITE_LOCK festgelegt ist, hat diese Funktion keine Auswirkungen und es wird möglicherweise ein Fehler zurückgegeben.
device: Die nvram_device -Instanz. Andernfalls wird dieser Wert ignoriert und kann NULL sein. authorization_value_size – Die Anzahl der Byte in |authorization_value|.
nvram_result_t (* get_available_size_in_bytes)(const struct nvram_device *device, uint64_t *available_size) |
Gibt die Anzahl der nicht zugewiesenen Bytes im NVRAM aus. Wenn die verfügbare Größe bei einer Implementierung nicht bekannt ist, kann eine Schätzung oder die Gesamtgröße angegeben werden.
device: Die Instanz „nvram_device“ . Darf nicht NULL sein.
nvram_result_t (* get_max_space_size_in_bytes)(const struct nvram_device *device, uint64_t *max_space_size) |
Gibt die maximale Anzahl von Byte aus, die einem einzelnen Speicherplatz zugewiesen werden können. Dieser Wert ist immer mindestens 32. Wenn die maximale Größe in einer Implementierung nicht begrenzt ist, kann die Gesamtgröße angegeben werden.
device: Die nvram_device -Instanz. max_space_size: Hier wird die Ausgabe empfangen. Darf nicht NULL sein.
nvram_result_t (* get_max_spaces)(const struct nvram_device *device, uint32_t *num_spaces) |
Die maximale Gesamtzahl der Bereiche, die zugewiesen werden können. Dieser Wert ist immer mindestens 8. Gibt NV_UNLIMITED_SPACES aus, wenn beliebig viele Speicherplätze unterstützt werden (nur auf verfügbare NVRAM-Byte beschränkt).
device: Die nvram_device -Instanz. Darf nicht NULL sein.
nvram_result_t (* get_space_controls)(const struct nvram_device *device, uint32_t index, uint32_t max_list_size, nvram_control_t *control_list, uint32_t *list_size) |
Liste der Steuerelemente, die mit einem bestimmten Gruppenbereich verknüpft sind.
device: Die nvram_device -Instanz.
nvram_result_t (* get_space_list)(const struct nvram_device *device, uint32_t max_list_size, uint32_t *space_index_list, uint32_t *list_size) |
Liste der erstellten Indexe für Gruppenbereiche ausgeben Wenn |max_list_size| = 0 ist, wird nur |list_size| ausgefüllt.
device: Die nvram_device -Instanz. max_list_size: Die Anzahl der Elemente im Array „space_index_list“. space_index_list: Die Liste der erstellten Bereiche bis zur angegebenen „max_list_size“. Kann NULL sein, wenn „max_list_size“ = 0. list_size: Die Anzahl der Elemente in „space_index_list“ oder die Anzahl der verfügbaren Elemente, wenn „space_index_list“ NULL ist.
nvram_result_t (* get_space_size)(const struct nvram_device *device, uint32_t index, uint64_t *size) |
Gibt die Größe eines bestimmten Speicherplatzes in Byte aus.
device: Die nvram_device -Instanz. Darf nicht NULL sein.
nvram_result_t (* get_total_size_in_bytes)(const struct nvram_device *device, uint64_t *total_size) |
Gibt die Gesamtzahl der im NVRAM verfügbaren Bytes aus. Dieser Wert ist immer mindestens 2.048. Wenn die Gesamtgröße bei einer Implementierung nicht bekannt ist, kann eine Schätzung oder 2048 angegeben werden.
device: Die nvram_device Instanz. total_size: Hier wird die Ausgabe empfangen. Darf nicht NULL sein.
nvram_result_t (* is_space_locked)(const struct nvram_device *device, uint32_t index, int *write_lock_enabled, int *read_lock_enabled) |
Gibt an, ob Schlösser für den angegebenen Bereich aktiviert sind. Wenn eine Sperre aktiviert ist, wird der Vorgang deaktiviert und jeder Versuch, diesen Vorgang auszuführen, führt zu NV_RESULT_OPERATION_DISABLED.
device: Die Nvram-Geräte-Instanz .
nvram_result_t (* read_space)(const struct nvram_device *device, uint32_t index, uint64_t num_bytes_to_read, const uint8_t *authorization_value, uint32_t authorization_value_size, uint8_t *buffer, uint64_t *bytes_read) |
Liest den Inhalt eines Gruppenbereichs. Wenn der Speicherplatz noch nie beschrieben wurde, haben alle gelesenen Bytes den Wert 0x00.
device: Die nvram_device -Instanz. Wenn dieser Wert größer als die Größe des Speicherplatzes ist, wird der gesamte Speicherplatz gelesen. Wenn dieser Wert kleiner als die Größe des Speicherplatzes ist, werden die ersten Bytes im Speicherplatz gelesen. authorization_value: Wenn für den Speicherplatz die Richtlinie „NV_CONTROL_READ_AUTHORIZATION“ gilt, enthält dieser Parameter den Autorisierungswert. Andernfalls wird dieser Wert ignoriert und kann NULL sein. authorization_value_size – Die Anzahl der Byte in |authorization_value|. buffer – Hier werden die Daten empfangen, die aus dem Speicherbereich gelesen wurden. Muss mindestens |num_bytes_to_read| Byte groß sein. „bytes_read“ ist die Anzahl der gelesenen Byte. Wenn NV_RESULT_SUCCESS zurückgegeben wird, wird dieser Wert auf den kleineren Wert von |num_bytes_to_read| oder der Größe des Speicherplatzes festgelegt.
nvram_result_t (* write_space)(const struct nvram_device *device, uint32_t index, const uint8_t *buffer, uint64_t buffer_size, const uint8_t *authorization_value, uint32_t authorization_value_size) |
Schreibt den Inhalt eines Bereichs auf. Wenn der Speicherplatz mit NV_CONTROL_WRITE_EXTEND konfiguriert ist, werden die Eingabedaten verwendet, um die aktuellen Daten zu erweitern.
device: Die nvram_device -Instanz. Wenn dieser Wert größer als die Größe des Gruppenbereichs ist, wird NV_RESULT_INVALID_PARAMETER zurückgegeben. authorization_value: Wenn für den Gruppenbereich die Richtlinie NV_CONTROL_WRITE_AUTHORIZATION gilt, enthält dieser Parameter den Autorisierungswert. Andernfalls wird dieser Wert ignoriert und kann NULL sein. authorization_value_size – Die Anzahl der Byte in |authorization_value|.
Die Dokumentation für diese Struktur wurde aus der folgenden Datei generiert:
- hardware/libhardware/include/hardware/ nvram.h