Riferimento alla struttura nvram_device

Riferimento alla struttura nvram_device

#include < nvram.h >

Campi dati

struttura hw_device_t Comune
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_tauthorization_value_size)
nvram_result_t (* delete_space )(const struct nvram_device *device, uint32_t index, const uint8_t *authorization_value, uint32_tauthorization_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_tauthorization_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 automation_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_tauthorization_value_size)
nvram_result_t (* enable_read_lock )(const struct nvram_device *device, uint32_t index, const uint8_t *authorization_value, uint32_tauthorization_value_size)

Descrizione dettagliata

Definizione alla riga 48 del file nvram.h .

Documentazione sul campo

struct hw_device_t comune

Metodi comuni di nvram_device . Questo deve essere il primo membro di nvram_device poiché gli utenti di questa struttura eseguiranno il cast di un puntatore da hw_device_t a nvram_device in contesti in cui è noto che hw_device_t fa riferimento a nvram_device .

Definizione alla riga 55 del file nvram.h .

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 automation_value_size)

Crea un nuovo spazio con l'indice, la dimensione, i controlli e il valore di autorizzazione specificati.

dispositivo - L'istanza nvram_device . index - Un indice per il nuovo spazio. L'indice può essere qualsiasi valore a 32 bit ma non deve essere già assegnato a uno spazio esistente. size_in_bytes - Il numero di byte da allocare per lo spazio. control_list - Una matrice di controlli da applicare per lo spazio. list_size - Il numero di elementi in |control_list|. valore_autorizzazione - Se |lista_controllo| contiene NV_CONTROL_READ_AUTHORIZATION e/o NV_CONTROL_WRITE_AUTHORIZATION, quindi questo parametro fornisce il valore di autorizzazione per queste politiche (se sono impostati entrambi i controlli, questo valore si applica a entrambi). In caso contrario, questo valore viene ignorato e potrebbe essere NULL. dimensione_valore_autorizzazione - Il numero di byte in |valore_autorizzazione|.

Definizione alla riga 187 del file nvram.h .

nvram_result_t (* delete_space)(const struct nvram_device *device, uint32_t index, const uint8_t *authorization_value, uint32_tauthorization_value_size)

Elimina uno spazio.

dispositivo - L'istanza nvram_device . index - L'indice dello spazio. valore_autorizzazione - Se lo spazio ha la politica NV_CONTROL_WRITE_AUTHORIZATION, questo parametro fornisce il valore di autorizzazione. In caso contrario, questo valore viene ignorato e potrebbe essere NULL. dimensione_valore_autorizzazione - Il numero di byte in |valore_autorizzazione|.

Definizione alla riga 207 del file nvram.h .

nvram_result_t (* disable_create)(const struct nvram_device *device)

Disabilita qualsiasi ulteriore creazione di spazi fino al successivo ripristino completo del dispositivo (come nel ripristino delle impostazioni di fabbrica, non nel riavvio). Le chiamate successive a NV_CreateSpace dovrebbero restituire NV_RESULT_OPERATION_DISABLED.

dispositivo - L'istanza nvram_device .

Definizione alla riga 219 del file nvram.h .

nvram_result_t (* enable_read_lock)(const struct nvram_device *device, uint32_t index, const uint8_t *authorization_value, uint32_tauthorization_value_size)

Abilita un blocco di lettura per lo spazio specificato in base alla sua politica. Se lo spazio non ha NV_CONTROL_BOOT_READ_LOCK impostato, questa funzione non ha effetto e potrebbe restituire un errore.

dispositivo - L'istanza nvram_device . index - L'indice dello spazio. valore_autorizzazione - Se lo spazio ha la politica NV_CONTROL_READ_AUTHORIZATION, questo parametro fornisce il valore di autorizzazione. (Si noti che non è necessario l'accesso in scrittura per bloccare la lettura. Un blocco in lettura è sempre volatile.) In caso contrario, questo valore viene ignorato e potrebbe essere NULL. dimensione_valore_autorizzazione - Il numero di byte in |valore_autorizzazione|.

Definizione alla riga 317 del file nvram.h .

nvram_result_t (* enable_write_lock)(const struct nvram_device *device, uint32_t index, const uint8_t *authorization_value, uint32_tauthorization_value_size)

Abilita un blocco in scrittura per lo spazio specificato in base alla sua politica. Se lo spazio non ha impostato NV_CONTROL_PERSISTENT_WRITE_LOCK o NV_CONTROL_BOOT_WRITE_LOCK, questa funzione non ha effetto e potrebbe restituire un errore.

dispositivo - L'istanza nvram_device . index - L'indice dello spazio. valore_autorizzazione - Se lo spazio ha la politica NV_CONTROL_WRITE_AUTHORIZATION, questo parametro fornisce il valore di autorizzazione. In caso contrario, questo valore viene ignorato e potrebbe essere NULL. dimensione_valore_autorizzazione - Il numero di byte in |valore_autorizzazione|.

Definizione alla riga 294 del file nvram.h .

nvram_result_t (* get_available_size_in_bytes)(const struct nvram_device *device, uint64_t *available_size)

Emette il numero non allocato di byte disponibili nella NVRAM. Se un'implementazione non conosce la dimensione disponibile, può fornire una stima o la dimensione totale.

dispositivo - L'istanza nvram_device . available_size - Riceve l'output. Non può essere NULL.

Definizione alla riga 76 del file nvram.h .

nvram_result_t (* get_max_space_size_in_bytes)(const struct nvram_device *device, uint64_t *max_space_size)

Emette il numero massimo di byte che possono essere allocati per un singolo spazio. Questo sarà sempre almeno 32. Se un'implementazione non limita la dimensione massima, può fornire la dimensione totale.

dispositivo - L'istanza nvram_device . max_space_size - Riceve l'output. Non può essere NULL.

Definizione alla riga 87 del file nvram.h .

nvram_result_t (* get_max_spaces)(const struct nvram_device *device, uint32_t *num_spaces)

Emette il numero totale massimo di spazi che possono essere allocati. Questo sarà sempre almeno 8. Emette NV_UNLIMITED_SPACES se è supportato un numero qualsiasi di spazi (limitato solo ai byte NVRAM disponibili).

dispositivo - L'istanza nvram_device . num_spaces - Riceve l'output. Non può essere NULL.

Definizione alla riga 99 del file nvram.h .

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)

Emette l'elenco dei controlli associati a un determinato spazio.

dispositivo - L'istanza nvram_device . index - L'indice dello spazio. max_list_size - Il numero di elementi nella |control_list| Vettore. control_list - Riceve l'elenco dei controlli fino a |max_list_size|. Può essere NULL se |max_list_size| è 0. list_size - Riceve il numero di elementi popolati in |control_list|, o il numero di elementi disponibili se |control_list| è zero.

Definizione alla riga 144 del file nvram.h .

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)

Emette un elenco di indici di spazio creati. Se |dimensione_lista_max| è 0, solo |list_size| è popolato.

dispositivo - L'istanza nvram_device . max_list_size - Il numero di elementi nella |space_index_list| Vettore. space_index_list - Riceve l'elenco degli spazi creati fino alla |max_list_size| indicata. Può essere NULL se |max_list_size| è 0. list_size - Riceve il numero di elementi popolati in |space_index_list|, o il numero di elementi disponibili se |space_index_list| è zero.

Definizione alla riga 116 del file nvram.h .

nvram_result_t (* get_space_size)(const struct nvram_device *device, uint32_t index, uint64_t *size)

Emette la dimensione, in byte, di un determinato spazio.

dispositivo - L'istanza nvram_device . index - L'indice dello spazio. size - Riceve l'output. Non può essere NULL.

Definizione alla riga 128 del file nvram.h .

nvram_result_t (* get_total_size_in_bytes)(const struct nvram_device *device, uint64_t *total_size)

Emette il numero totale di byte disponibili nella NVRAM. Questo sarà sempre almeno 2048. Se un'implementazione non conosce la dimensione totale può fornire una stima o 2048.

dispositivo - L'istanza nvram_device . total_size - Riceve l'output. Non può essere NULL.

Definizione alla riga 65 del file nvram.h .

nvram_result_t (* is_space_locked)(const struct nvram_device *device, uint32_t index, int *write_lock_enabled, int *read_lock_enabled)

Indica se i blocchi sono abilitati per lo spazio specificato. Quando un blocco è abilitato, l'operazione è disabilitata e qualsiasi tentativo di eseguire tale operazione risulterà in NV_RESULT_OPERATION_DISABLED.

dispositivo - L'istanza nvram_device . index - L'indice dello spazio. write_lock_enabled - Verrà impostato su un valore diverso da zero se le operazioni di scrittura sono attualmente disabilitate. read_lock_enabled - Verrà impostato su un valore diverso da zero se le operazioni di lettura sono attualmente disabilitate.

Definizione alla riga 161 del file nvram.h .

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_tauthorization_value_size, uint8_t *buffer, uint64_t *bytes_read)

Legge il contenuto di uno spazio. Se lo spazio non è mai stato scritto, tutti i byte letti saranno 0x00.

dispositivo - L'istanza nvram_device . index - L'indice dello spazio. num_bytes_to_read - Il numero di byte da leggere; |buffer| deve essere abbastanza grande da contenere così tanti byte. Se questa è maggiore della dimensione dello spazio, viene letto l'intero spazio. Se questa è inferiore alla dimensione dello spazio, vengono letti i primi byte nello spazio. valore_autorizzazione - Se lo spazio ha la politica NV_CONTROL_READ_AUTHORIZATION, questo parametro fornisce il valore di autorizzazione. In caso contrario, questo valore viene ignorato e potrebbe essere NULL. dimensione_valore_autorizzazione - Il numero di byte in |valore_autorizzazione|. buffer - Riceve i dati letti dallo spazio. Deve essere almeno |num_bytes_to_read| byte di dimensione. bytes_read - Il numero di byte letti. Se viene restituito NV_RESULT_SUCCESS, questo sarà impostato sul minore di |num_bytes_to_read| o la dimensione dello spazio.

Definizione alla riga 272 del file nvram.h .

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_tauthorization_value_size)

Scrive il contenuto di uno spazio. Se lo spazio è configurato con NV_CONTROL_WRITE_EXTEND, i dati di input vengono utilizzati per estendere i dati correnti.

dispositivo - L'istanza nvram_device . index - L'indice dello spazio. buffer - I dati da scrivere. buffer_size - Il numero di byte in |buffer|. Se questo è inferiore alla dimensione dello spazio, i byte rimanenti verranno impostati su 0x00. Se è maggiore della dimensione dello spazio, restituisce NV_RESULT_INVALID_PARAMETER. valore_autorizzazione - Se lo spazio ha la politica NV_CONTROL_WRITE_AUTHORIZATION, questo parametro fornisce il valore di autorizzazione. In caso contrario, questo valore viene ignorato e potrebbe essere NULL. dimensione_valore_autorizzazione - Il numero di byte in |valore_autorizzazione|.

Definizione alla riga 241 del file nvram.h .


La documentazione per questa struttura è stata generata dal seguente file:
  • hardware/libhardware/include/hardware/ nvram.h