Koleksiyonlar ile düzeninizi koruyun İçeriği tercihlerinize göre kaydedin ve kategorilere ayırın.

nvram_device Yapı Referansı

nvram_device Yapı Referansı

#include < nvram.h >

Veri alanları

struct hw_device_t yaygın
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 *cihaz, 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 *cihaz, uint32_t dizini, uint64_t *boyut)
nvram_result_t (* get_space_controls )(const struct nvram_device *device, uint32_t indeksi, 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 indeksi, int *write_lock_enabled, int *read_lock_enabled)
nvram_result_t (* create_space )(const struct nvram_device *device, uint32_t indeksi, uint64_t size_in_bytes, const nvram_control_t *control_list, uint32_t list_size, const uint8_t *yetkilendirme_değeri, uint32_t yetkilendirme_değer_boyutu)
nvram_result_t (* delete_space )(const struct nvram_device *cihaz, uint32_t dizini, const uint8_t *yetkilendirme_değeri, uint32_t yetkilendirme_değeri_boyutu)
nvram_result_t (* disable_create )(const struct nvram_device *device)
nvram_result_t (* write_space )(const struct nvram_device *device, uint32_t dizini, const uint8_t *buffer, uint64_t buffer_size, const uint8_t *yetkilendirme_değeri, uint32_t yetki_değeri_boyutu)
nvram_result_t (* read_space )(const struct nvram_device *device, uint32_t indeksi, uint64_t num_bytes_to_read, const uint8_t *yetkilendirme_değeri, uint32_t yetki_değeri_size, uint8_t *arabellek, uint64_t *bytes_read)
nvram_result_t (* enable_write_lock )(const struct nvram_device *cihaz, uint32_t dizini, const uint8_t *yetkilendirme_değeri, uint32_t yetkilendirme_değeri_boyutu)
nvram_result_t (* enable_read_lock )(const struct nvram_device *cihaz, uint32_t dizini, const uint8_t *yetkilendirme_değeri, uint32_t yetkilendirme_değeri_boyutu)

Detaylı Açıklama

nvram.h dosyasının 48. satırındaki tanım.

Saha Dokümantasyonu

struct hw_device_t ortak

nvram_device için yaygın yöntemler. Bu, nvram_device öğesinin ilk üyesi olmalıdır , çünkü bu yapının kullanıcıları hw_device_t öğesini nvram_device_t öğesinin bir nvram_device öğesine başvurduğu bilinen bağlamlarda nvram_device işaretçisine aktaracaktır .

nvram.h dosyasının 55. satırındaki tanım.

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 *yetkilendirme_değeri, _uint_size_t yetkilendirme_değeri)

Verilen dizin, boyut, denetimler ve yetkilendirme değeriyle yeni bir alan oluşturur.

cihaz - nvram_device örneği. dizin - Yeni alan için bir dizin. Dizin herhangi bir 32 bitlik değer olabilir, ancak halihazırda mevcut bir alana atanmış olmamalıdır. size_in_bytes - Alan için ayrılacak bayt sayısı. control_list - Alan için zorlanacak bir dizi kontrol. list_size - |control_list| içindeki öğelerin sayısı. yetkilendirme_değeri - Eğer |kontrol_listesi| NV_CONTROL_READ_AUTHORIZATION ve/veya NV_CONTROL_WRITE_AUTHORIZATION içeriyorsa, bu parametre bu politikalar için yetkilendirme değerini sağlar (her iki kontrol de ayarlanmışsa bu değer her ikisi için de geçerlidir). Aksi takdirde, bu değer yok sayılır ve NULL olabilir. yetkilendirme_değeri_boyutu - |yetkilendirme_değeri| içindeki bayt sayısı.

nvram.h dosyasının 187 satırındaki tanım.

nvram_result_t (* delete_space)(const struct nvram_device *device, uint32_t indeksi, const uint8_t *yetkilendirme_değeri, uint32_t yetki_değeri_boyutu)

Bir boşluğu siler.

cihaz - nvram_device örneği. indeks - Boşluk indeksi. yetkilendirme_değeri - Alan NV_CONTROL_WRITE_AUTHORIZATION ilkesine sahipse, bu parametre yetkilendirme değerini sağlar. Aksi takdirde, bu değer yok sayılır ve NULL olabilir. yetkilendirme_değeri_boyutu - |yetkilendirme_değeri| içindeki bayt sayısı.

nvram.h dosyasının 207 satırındaki tanım.

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

Bir sonraki tam cihaz sıfırlamasına kadar daha fazla alan oluşturulmasını devre dışı bırakır (fabrika sıfırlamasında olduğu gibi, yeniden başlatmada değil). NV_CreateSpace'e yapılan sonraki çağrılar NV_RESULT_OPERATION_DISABLED döndürmelidir.

cihaz - nvram_device örneği.

nvram.h dosyasının 219. satırındaki tanım.

nvram_result_t (* enable_read_lock)(const struct nvram_device *device, uint32_t dizini, const uint8_t *yetkilendirme_değeri, uint32_t yetki_değeri_boyutu)

Politikasına göre verilen alan için bir okuma kilidi etkinleştirir. Alanda NV_CONTROL_BOOT_READ_LOCK ayarı yoksa bu işlevin etkisi olmaz ve bir hata verebilir.

cihaz - nvram_device örneği. indeks - Boşluk indeksi. yetkilendirme_değeri - Alanın NV_CONTROL_READ_AUTHORIZATION politikası varsa, bu parametre yetkilendirme değerini sağlar. (Okumayı kilitlemek için yazma erişimine gerek olmadığına dikkat edin. Bir okuma kilidi her zaman geçicidir.) Aksi takdirde, bu değer yok sayılır ve NULL olabilir. yetkilendirme_değeri_boyutu - |yetkilendirme_değeri| içindeki bayt sayısı.

nvram.h dosyasının 317 satırındaki tanım.

nvram_result_t (* enable_write_lock)(const struct nvram_device *device, uint32_t indeksi, const uint8_t *yetkilendirme_değeri, uint32_t yetkilendirme_değeri_boyutu)

Politikasına göre verilen alan için bir yazma kilidi etkinleştirir. Boşlukta NV_CONTROL_PERSISTENT_WRITE_LOCK veya NV_CONTROL_BOOT_WRITE_LOCK seti yoksa bu işlevin etkisi yoktur ve bir hata verebilir.

cihaz - nvram_device örneği. indeks - Boşluk indeksi. yetkilendirme_değeri - Alan NV_CONTROL_WRITE_AUTHORIZATION ilkesine sahipse, bu parametre yetkilendirme değerini sağlar. Aksi takdirde, bu değer yok sayılır ve NULL olabilir. yetkilendirme_değeri_boyutu - |yetkilendirme_değeri| içindeki bayt sayısı.

nvram.h dosyasının 294. satırındaki tanım.

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

NVRAM'de bulunan ayrılmamış bayt sayısını verir. Bir uygulama mevcut boyutu bilmiyorsa, bir tahmin veya toplam boyut sağlayabilir.

cihaz - nvram_device örneği. kullanılabilir_boyut - Çıktıyı alır. Boş olamaz.

nvram.h dosyasının 76. satırındaki tanım.

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

Tek bir alan için ayrılabilecek maksimum bayt sayısını verir. Bu her zaman en az 32 olacaktır. Bir uygulama maksimum boyutu sınırlamıyorsa toplam boyutu sağlayabilir.

cihaz - nvram_device örneği. max_space_size - Çıktıyı alır. Boş olamaz.

nvram.h dosyasının 87. satırındaki tanım.

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

Ayrılabilecek maksimum toplam alan sayısını verir. Bu her zaman en az 8 olacaktır. Herhangi bir sayıda boşluk destekleniyorsa NV_UNLIMITED_SPACES çıktısı alınır (yalnızca kullanılabilir NVRAM baytlarıyla sınırlıdır).

cihaz - nvram_device örneği. num_spaces - Çıktıyı alır. Boş olamaz.

nvram.h dosyasının 99. satırındaki tanım.

nvram_result_t (* get_space_controls)(const struct nvram_device *device, uint32_t indeksi, uint32_t max_list_size, nvram_control_t *control_list, uint32_t *list_size)

Belirli bir alanla ilişkili kontrollerin listesini çıkarır.

cihaz - nvram_device örneği. indeks - Boşluk indeksi. max_list_size - |control_list| dizi. control_list - Verilen |max_list_size|'a kadar olan kontrollerin listesini alır. |max_list_size| ise NULL olabilir 0'dır. list_size - |control_list|'de doldurulan öğelerin sayısını veya |control_list| ise mevcut öğelerin sayısını alır. NULL'dur.

nvram.h dosyasının 144. satırındaki tanım.

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)

Oluşturulan alan dizinlerinin bir listesini verir. Eğer |max_list_size| 0, yalnızca |list_size| nüfusludur.

cihaz - nvram_device örneği. max_list_size - |space_index_list| içindeki öğe sayısı dizi. space_index_list - Verilen |max_list_size| değerine kadar oluşturulan boşlukların listesini alır. |max_list_size| ise NULL olabilir 0'dır. list_size - |space_index_list|'de doldurulan öğelerin sayısını veya |space_index_list| ise kullanılabilir öğelerin sayısını alır. NULL'dur.

nvram.h dosyasının 116. satırındaki tanım.

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

Belirli bir alanın boyutunu bayt olarak verir.

cihaz - nvram_device örneği. indeks - Boşluk indeksi. size - Çıktıyı alır. Boş olamaz.

nvram.h dosyasının 128. satırındaki tanım.

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

NVRAM'de bulunan toplam bayt sayısını verir. Bu her zaman en az 2048 olacaktır. Bir uygulama toplam boyutu bilmiyorsa bir tahmin veya 2048 sağlayabilir.

cihaz - nvram_device örneği. total_size - Çıktıyı alır. Boş olamaz.

nvram.h dosyasının 65. satırındaki tanım.

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

Verilen alan için kilitlerin etkinleştirilip etkinleştirilmediğini verir. Bir kilit etkinleştirildiğinde, işlem devre dışı bırakılır ve bu işlemi gerçekleştirmeye yönelik herhangi bir girişim NV_RESULT_OPERATION_DISABLED ile sonuçlanacaktır.

cihaz - nvram_device örneği. indeks - Boşluk indeksi. write_lock_enabled - Sıfırdan farklı olarak ayarlanır, eğer yazma işlemleri şu anda devre dışıysa. read_lock_enabled - Sıfırdan farklı olarak ayarlanacak, eğer okuma işlemleri şu anda devre dışıysa.

nvram.h dosyasının 161 satırındaki tanım.

nvram_result_t (* read_space)(const struct nvram_device *device, uint32_t indeksi, uint64_t num_bytes_to_read, const uint8_t *yetkilendirme_değeri, uint32_t yetki_değeri_size, uint8_t *buffert, uint_64_)

Bir boşluğun içeriğini okur. Boşluk hiç yazılmamışsa, okunan tüm baytlar 0x00 olacaktır.

cihaz - nvram_device örneği. indeks - Boşluk indeksi. num_bytes_to_read - Okunacak bayt sayısı; |tampon| bu kadar baytı tutacak kadar büyük olmalıdır. Bu, alanın boyutundan daha fazlaysa, tüm alan okunur. Bu, boşluğun boyutundan küçükse, boşluktaki ilk baytlar okunur. yetkilendirme_değeri - Alanın NV_CONTROL_READ_AUTHORIZATION politikası varsa, bu parametre yetkilendirme değerini sağlar. Aksi takdirde, bu değer yok sayılır ve NULL olabilir. yetkilendirme_değeri_boyutu - |yetkilendirme_değeri| içindeki bayt sayısı. tampon - Alandan okunan verileri alır. En az |num_bytes_to_read| bayt boyutundadır. bytes_read - Okunan bayt sayısı. NV_RESULT_SUCCESS döndürülürse, bu |num_bytes_to_read| veya alanın boyutu.

nvram.h dosyasının 272. satırındaki tanım.

nvram_result_t (* write_space)(const struct nvram_device *device, uint32_t indeksi, const uint8_t *buffer, uint64_t buffer_size, const uint8_t *yetkilendirme_değeri, uint32_t yetki_değeri_boyutu)

Bir boşluğun içeriğini yazar. Alan NV_CONTROL_WRITE_EXTEND ile yapılandırılırsa, mevcut verileri genişletmek için giriş verileri kullanılır.

cihaz - nvram_device örneği. indeks - Boşluk indeksi. arabellek - Yazılacak veriler. buffer_size - |buffer| içindeki bayt sayısı. Bu, alanın boyutundan küçükse, kalan bayt 0x00 olarak ayarlanacaktır. Bu, alanın boyutundan fazlaysa, NV_RESULT_INVALID_PARAMETER değerini döndürür. yetkilendirme_değeri - Alan NV_CONTROL_WRITE_AUTHORIZATION ilkesine sahipse, bu parametre yetkilendirme değerini sağlar. Aksi takdirde, bu değer yok sayılır ve NULL olabilir. yetkilendirme_değeri_boyutu - |yetkilendirme_değeri| içindeki bayt sayısı.

nvram.h dosyasının 241 satırındaki tanım.


Bu yapı için belgeler aşağıdaki dosyadan oluşturulmuştur:
  • donanım/libdonanım/içerme/donanım/ nvram.h