Informacje o strukturze nvram_device

Informacje o strukturze nvram_device

#include < nvram.h >

Pola danych

struct hw_device_t   wspólne
 
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)
 

Szczegółowy opis

Definicja w wierszu 48 pliku nvram.h .

Dokumentacja pola

struct hw_device_t common

Typowe metody nvram_device . Ten element musi być pierwszym elementem nvram_device ponieważ użytkownicy tej struktury będą rzutować hw_device_t do nvram_device wskaźnika w kontekstach, w których wiadomo, że hw_device_t odwołuje się do nvram_device .

Definicja w wierszu 55 pliku 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 authorization_value_size)

Tworzy nowy pokój z podanym indeksem, rozmiarem, kontrolkami i wartością autoryzacji.

device – instancja nvram_device indeks – indeks nowej przestrzeni. Indeks może być dowolną 32-bitową wartością, ale nie może być już przypisany do istniejącej przestrzeni. size_in_bytes – liczba bajtów do przydzielenia dla przestrzeni. control_list – tablica kontroli, które mają być stosowane w przypadku przestrzeni. list_size – liczba elementów w |control_list|. authorization_value – jeśli |control_list| zawiera NV_CONTROL_READ_AUTHORIZATION lub NV_CONTROL_WRITE_AUTHORIZATION, to ten parametr podaje wartość autoryzacji dla tych zasad (jeśli oba te elementy są ustawione, ta wartość ma zastosowanie do obu). W przeciwnym razie ta wartość jest ignorowana i może być NULL. authorization_value_size – liczba bajtów w elemencie |authorization_value|.

Definicja w wierszu 187 pliku nvram.h .

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

usunąć pokój;

device – instancja nvram_device index – indeks przestrzeni. authorization_value – jeśli przestrzeń ma zasadę NV_CONTROL_WRITE_AUTHORIZATION, ten parametr podaje wartość autoryzacji. W przeciwnym razie ta wartość jest ignorowana i może być NULL. authorization_value_size – liczba bajtów w elemencie |authorization_value|.

Definicja w wierszu 207 pliku nvram.h .

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

Blokuje dalsze tworzenie przestrzeni do momentu następnego pełnego resetowania urządzenia (czyli przywracania do ustawień fabrycznych, a nie ponownego uruchamiania). Kolejne wywołania funkcji NV_CreateSpace powinny zwracać wartość NV_RESULT_OPERATION_DISABLED.

device – wystąpienie nvram_device .

Definicja w wierszu 219 pliku nvram.h .

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

Włącza blokadę odczytu w danej przestrzeni zgodnie z jej zasadami. Jeśli w przestrzeni nie ma ustawionego NV_CONTROL_BOOT_READ_LOCK, ta funkcja nie będzie miała żadnego wpływu i może zwrócić błąd.

device – instancja nvram_device index – indeks przestrzeni. authorization_value – jeśli przestrzeń ma zasadę NV_CONTROL_READ_AUTHORIZATION, ten parametr podaje wartość autoryzacji. (Pamiętaj, że aby zablokować dostęp do odczytu, nie musisz mieć uprawnień do zapisu. Blokada odczytu jest zawsze niestabilna. W przeciwnym razie ta wartość jest ignorowana i może być NULL. authorization_value_size – liczba bajtów w elemencie |authorization_value|.

Definicja w wierszu 317 pliku nvram.h .

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

Włącza blokadę zapisu w danej przestrzeni zgodnie z jej zasadami. Jeśli w przestrzeni nie ma ustawionych parametrów NV_CONTROL_PERSISTENT_WRITE_LOCK lub NV_CONTROL_BOOT_WRITE_LOCK, ta funkcja nie ma żadnego efektu i może zwrócić błąd.

device – instancja nvram_device index – indeks przestrzeni. authorization_value – jeśli przestrzeń ma zasadę NV_CONTROL_WRITE_AUTHORIZATION, ten parametr podaje wartość autoryzacji. W przeciwnym razie ta wartość jest ignorowana i może być NULL. authorization_value_size – liczba bajtów w elemencie |authorization_value|.

Definicja w wierszu 294 pliku nvram.h .

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

Wyprowadza nieprzydzieloną liczbę bajtów dostępnych w NVRAM. Jeśli implementacja nie zna dostępnego rozmiaru, może podać szacowany lub całkowity rozmiar.

device – instancja nvram_device available_size – zwraca dane wyjściowe. Nie może zawierać wartości NULL.

Definicja w wierszu 76 pliku nvram.h .

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

Wypisuje maksymalną liczbę bajtów, które można przydzielić dla pojedynczego znaku. Zawsze będzie co najmniej 32. Jeśli implementacja nie ogranicza maksymalnego rozmiaru, może podać łączny rozmiar.

device – instancja nvram_device max_space_size – otrzymuje dane wyjściowe. Nie może zawierać wartości NULL.

Definicja w wierszu 87 pliku nvram.h .

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

Wypisuje maksymalną łączną liczbę miejsc, które można przydzielić. Zawsze będzie to co najmniej 8. Wypisuje NV_UNLIMITED_SPACES, jeśli obsługiwana jest dowolna liczba miejsc (ograniczona tylko do dostępnych bajtów NVRAM).

device – instancja nvram_device num_spaces – odbiera dane wyjściowe. Nie może zawierać wartości NULL.

Definicja w wierszu 99 pliku 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)

Wypisuje listę elementów sterujących powiązanych z daną przestrzenią.

device – instancja nvram_device indeks – indeks miejsca. max_list_size – liczba elementów w tablicy |control_list|. control_list – otrzymuje listę elementów sterujących do podanej wartości |max_list_size|. Może być NULL, jeśli |max_list_size| ma wartość 0. list_size – otrzymuje liczbę elementów wypełnionych w |control_list| lub liczbę dostępnych elementów, jeśli |control_list| ma wartość NULL.

Definicja w wierszu 144 pliku 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)

Wypisuje listę utworzonych indeksów pokoi. Jeśli |max_list_size| ma wartość 0, wypełniane jest tylko pole |list_size|.

device – instancja nvram_device space_index_list – otrzymuje listę utworzonych przestrzeni do podanej wartości |max_list_size|. Może być NULL, jeśli |max_list_size| ma wartość 0. list_size – otrzymuje liczbę elementów wypełnionych w |space_index_list| lub liczbę dostępnych elementów, jeśli |space_index_list| ma wartość NULL.

Definicja w wierszu 116 pliku nvram.h .

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

Wypisuje rozmiar danej przestrzeni w bajtach.

device – instancja nvram_device index – indeks miejsca. size – otrzymuje dane wyjściowe. Nie może zawierać wartości NULL.

Definicja w wierszu 128 pliku nvram.h .

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

Wypisuje łączną liczbę bajtów dostępnych w NVRAM. Zawsze będzie to co najmniej 2048. Jeśli implementacja nie zna całkowitego rozmiaru, może podać szacowany rozmiar lub 2048.

device – instancja nvram_device total_size – otrzymuje dane wyjściowe. Nie może zawierać wartości NULL.

Definicja w wierszu 65 pliku nvram.h .

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

Wypisuje, czy w danej przestrzeni są włączone blokady. Gdy blokada jest włączona, operacja jest wyłączona, a próba jej wykonania spowoduje zwrócenie wartości NV_RESULT_OPERATION_DISABLED.

device – instancja nvram_device index – indeks miejsca. write_lock_enabled – jeśli operacje zapisu są obecnie wyłączone, zostanie ustawiona wartość niezerowa. read_lock_enabled – jeśli operacje odczytu są obecnie wyłączone, zostanie ustawiona wartość niezerowa.

Definicja w wierszu 161 pliku 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_t authorization_value_size, uint8_t *buffer, uint64_t *bytes_read)

odczytuje zawartość pokoju; Jeśli miejsce nigdy nie zostało zapisane, wszystkie odczytane bajty będą miały wartość 0x00.

device – instancja nvram_device . index – indeks miejsca. num_bytes_to_read – liczba bajtów do odczytu; |buffer| musi być wystarczająco duży, aby pomieścić taką liczbę bajtów. Jeśli jest on większy niż rozmiar pokoju, cały pokój jest odczytywany. Jeśli jest ona mniejsza niż rozmiar przestrzeni, odczytywane są pierwsze bajty. authorization_value – jeśli przestrzeń ma zasadę NV_CONTROL_READ_AUTHORIZATION, ten parametr podaje wartość autoryzacji. W przeciwnym razie ta wartość jest ignorowana i może być NULL. authorization_value_size – liczba bajtów w polu |authorization_value|. buffer – otrzymuje dane odczytane z przestrzeni. Rozmiar musi wynosić co najmniej |num_bytes_to_read| bajtów. bytes_read – liczba odczytanych bajtów. Jeśli zwrócona zostanie wartość NV_RESULT_SUCCESS, zostanie ona ustawiona na mniejszą z wartości |num_bytes_to_read| lub rozmiaru przestrzeni.

Definicja w wierszu 272 pliku 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_t authorization_value_size)

Zapisywanie zawartości pokoju. Jeśli przestrzeń jest skonfigurowana za pomocą NV_CONTROL_WRITE_EXTEND, dane wejściowe są używane do rozszerzania bieżących danych.

device – instancja nvram_device . index – indeks miejsca. buffer – dane do zapisania. buffer_size – liczba bajtów w polu |buffer|. Jeśli jest ona mniejsza niż rozmiar miejsca, pozostałe bajty zostaną ustawione na 0x00. Jeśli jest to więcej niż rozmiar przestrzeni, zwraca NV_RESULT_INVALID_PARAMETER. authorization_value – jeśli przestrzeń ma zasadę NV_CONTROL_WRITE_AUTHORIZATION, ten parametr podaje wartość autoryzacji. W przeciwnym razie ta wartość jest ignorowana i może być NULL. authorization_value_size – liczba bajtów w elemencie |authorization_value|.

Definicja w wierszu 241 w pliku nvram.h .


Dokumentacja tego typu danych została wygenerowana z tego pliku:
  • hardware/libhardware/include/hardware/ nvram.h