Referensi Struktur nvram_device
#include < nvram.h >
Bidang Data | |
struct hw_device_t | umum |
nvram_result_t (* | get_total_size_in_bytes )(const struct nvram_device *perangkat, uint64_t *total_size) |
nvram_result_t (* | get_available_size_in_bytes )(const struct nvram_device *perangkat, uint64_t *available_size) |
nvram_result_t (* | get_max_space_size_in_bytes )(const struct nvram_device *perangkat, uint64_t *max_space_size) |
nvram_result_t (* | get_max_spaces )(const struct nvram_device *perangkat, uint32_t *num_spaces) |
nvram_result_t (* | get_space_list )(const struct nvram_device *perangkat, uint32_t max_list_size, uint32_t *space_index_list, uint32_t *list_size) |
nvram_result_t (* | get_space_size )(const struct nvram_device *perangkat, indeks uint32_t, uint64_t *ukuran) |
nvram_result_t (* | get_space_controls )(const struct nvram_device *perangkat, indeks uint32_t, uint32_t max_list_size, nvram_control_t *control_list, uint32_t *list_size) |
nvram_result_t (* | is_space_locked )(const struct nvram_device *perangkat, indeks uint32_t, int *write_lock_enabled, int *read_lock_enabled) |
nvram_result_t (* | create_space )(const struct nvram_device *perangkat, indeks uint32_t, 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 *perangkat, indeks uint32_t, const uint8_t *nilai_otorisasi, uint32_t otorisasi_nilai_ukuran) |
nvram_result_t (* | nonaktifkan_buat )(const struct nvram_device *perangkat) |
nvram_result_t (* | write_space )(const struct nvram_device *perangkat, indeks uint32_t, const uint8_t *buffer, uint64_t buffer_size, const uint8_t *authorization_value, uint32_t otorisasi_value_size) |
nvram_result_t (* | read_space )(const struct nvram_device *perangkat, indeks uint32_t, uint64_t num_bytes_to_read, const uint8_t *authorization_value, uint32_t otorisasi_value_size, uint8_t *buffer, uint64_t *bytes_read) |
nvram_result_t (* | aktifkan_write_lock )(const struct nvram_device *perangkat, indeks uint32_t, const uint8_t *nilai_otorisasi, uint32_t otorisasi_nilai_ukuran) |
nvram_result_t (* | aktifkan_read_lock )(const struct nvram_device *perangkat, indeks uint32_t, const uint8_t *nilai_otorisasi, uint32_t otorisasi_nilai_ukuran) |
Detil Deskripsi
Dokumentasi Lapangan
struct hw_device_t umum |
Metode umum nvram_device . Ini harus menjadi anggota pertama nvram_device karena pengguna struktur ini akan mentransmisikan pointer hw_device_t ke nvram_device dalam konteks yang diketahui bahwa hw_device_t merujuk ke nvram_device .
nvram_result_t (* create_space)(const struct nvram_device *perangkat, indeks uint32_t, 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) |
Membuat ruang baru dengan indeks, ukuran, kontrol, dan nilai otorisasi tertentu.
perangkat - Contoh nvram_device . indeks - Indeks untuk ruang baru. Indeks dapat berupa nilai 32-bit apa pun, namun belum boleh ditetapkan ke ruang yang ada. size_in_bytes - Jumlah byte yang akan dialokasikan untuk ruang tersebut. control_list - Serangkaian kontrol yang diterapkan pada ruang. list_size - Jumlah item di |control_list|. nilai_otorisasi - Jika |daftar_kontrol| berisi NV_CONTROL_READ_AUTHORIZATION dan/atau NV_CONTROL_WRITE_AUTHORIZATION, maka parameter ini memberikan nilai otorisasi untuk kebijakan tersebut (jika kedua kontrol disetel maka nilai ini berlaku untuk keduanya). Jika tidak, nilai ini akan diabaikan dan mungkin NULL. otorisasi_nilai_ukuran - Jumlah byte dalam |nilai_otorisasi|.
nvram_result_t (* delete_space)(const struct nvram_device *perangkat, indeks uint32_t, const uint8_t *authorization_value, uint32_t otorisasi_value_size) |
Menghapus spasi.
perangkat - Contoh nvram_device . indeks - Indeks ruang. otorisasi_nilai - Jika ruang memiliki kebijakan NV_CONTROL_WRITE_AUTHORIZATION, maka parameter ini memberikan nilai otorisasi. Jika tidak, nilai ini akan diabaikan dan mungkin NULL. otorisasi_nilai_ukuran - Jumlah byte dalam |nilai_otorisasi|.
nvram_result_t (* nonaktifkan_buat)(const struct nvram_device *perangkat) |
Menonaktifkan pembuatan ruang lebih lanjut hingga penyetelan ulang perangkat secara penuh berikutnya (seperti pada penyetelan ulang pabrik, bukan reboot). Panggilan selanjutnya ke NV_CreateSpace akan menghasilkan NV_RESULT_OPERATION_DISABLED.
perangkat - Contoh nvram_device .
nvram_result_t (* aktifkan_read_lock)(const struct nvram_device *perangkat, indeks uint32_t, const uint8_t *nilai_otorisasi, uint32_t otorisasi_nilai_ukuran) |
Mengaktifkan kunci baca untuk ruang tertentu sesuai dengan kebijakannya. Jika ruang tidak memiliki NV_CONTROL_BOOT_READ_LOCK yang disetel maka fungsi ini tidak berpengaruh dan mungkin menghasilkan kesalahan.
perangkat - Contoh nvram_device . indeks - Indeks ruang. otorisasi_nilai - Jika ruang memiliki kebijakan NV_CONTROL_READ_AUTHORIZATION, maka parameter ini memberikan nilai otorisasi. (Perhatikan bahwa tidak ada persyaratan untuk akses tulis agar dapat mengunci untuk membaca. Kunci baca selalu mudah berubah.) Jika tidak, nilai ini akan diabaikan dan mungkin NULL. otorisasi_nilai_ukuran - Jumlah byte dalam |nilai_otorisasi|.
nvram_result_t (* aktifkan_write_lock)(const struct nvram_device *perangkat, indeks uint32_t, const uint8_t *nilai_otorisasi, uint32_t otorisasi_nilai_ukuran) |
Mengaktifkan kunci tulis untuk ruang tertentu sesuai dengan kebijakannya. Jika ruang tidak memiliki NV_CONTROL_PERSISTENT_WRITE_LOCK atau NV_CONTROL_BOOT_WRITE_LOCK yang disetel, maka fungsi ini tidak berpengaruh dan mungkin menghasilkan kesalahan.
perangkat - Contoh nvram_device . indeks - Indeks ruang. otorisasi_nilai - Jika ruang memiliki kebijakan NV_CONTROL_WRITE_AUTHORIZATION, maka parameter ini memberikan nilai otorisasi. Jika tidak, nilai ini akan diabaikan dan mungkin NULL. otorisasi_nilai_ukuran - Jumlah byte dalam |nilai_otorisasi|.
nvram_result_t (* get_available_size_in_bytes)(const struct nvram_device *perangkat, uint64_t *available_size) |
Menghasilkan jumlah byte yang tidak terisi yang tersedia di NVRAM. Jika suatu implementasi tidak mengetahui ukuran yang tersedia, maka implementasi dapat memberikan perkiraan atau ukuran total.
perangkat - Contoh nvram_device . tersedia_ukuran - Menerima output. Tidak boleh NULL.
nvram_result_t (* get_max_space_size_in_bytes)(const struct nvram_device *perangkat, uint64_t *max_space_size) |
Menghasilkan jumlah byte maksimum yang dapat dialokasikan untuk satu spasi. Jumlahnya akan selalu minimal 32. Jika suatu implementasi tidak membatasi ukuran maksimum, maka implementasi tersebut dapat memberikan ukuran total.
perangkat - Contoh nvram_device . max_space_size - Menerima hasilnya. Tidak boleh NULL.
nvram_result_t (* get_max_spaces)(const struct nvram_device *perangkat, uint32_t *num_spaces) |
Menghasilkan jumlah total ruang maksimum yang dapat dialokasikan. Setidaknya akan selalu 8. Menghasilkan NV_UNLIMITED_SPACES jika sejumlah spasi didukung (hanya terbatas pada byte NVRAM yang tersedia).
perangkat - Contoh nvram_device . num_spaces - Menerima hasilnya. Tidak boleh NULL.
nvram_result_t (* get_space_controls)(const struct nvram_device *perangkat, indeks uint32_t, uint32_t max_list_size, nvram_control_t *control_list, uint32_t *list_size) |
Menghasilkan daftar kontrol yang terkait dengan ruang tertentu.
perangkat - Contoh nvram_device . indeks - Indeks ruang. max_list_size - Jumlah item di |control_list| Himpunan. control_list - Menerima daftar kontrol hingga |max_list_size| yang diberikan. Mungkin NULL jika |max_list_size| adalah 0. list_size - Menerima jumlah item yang diisi |control_list|, atau jumlah item yang tersedia jika |control_list| adalah NOL.
nvram_result_t (* get_space_list)(const struct nvram_device *perangkat, uint32_t max_list_size, uint32_t *space_index_list, uint32_t *list_size) |
Menghasilkan daftar indeks ruang yang dibuat. Jika |max_list_size| adalah 0, hanya |daftar_ukuran| dihuni.
perangkat - Contoh nvram_device . max_list_size - Jumlah item dalam |space_index_list| Himpunan. space_index_list - Menerima daftar spasi yang dibuat hingga |max_list_size| yang diberikan. Mungkin NULL jika |max_list_size| adalah 0. list_size - Menerima jumlah item yang diisi dalam |space_index_list|, atau jumlah item yang tersedia jika |space_index_list| adalah NOL.
nvram_result_t (* get_space_size)(const struct nvram_device *perangkat, indeks uint32_t, uint64_t *ukuran) |
Menghasilkan ukuran, dalam byte, dari ruang tertentu.
perangkat - Contoh nvram_device . indeks - Indeks ruang. size - Menerima output. Tidak boleh NULL.
nvram_result_t (* get_total_size_in_bytes)(const struct nvram_device *perangkat, uint64_t *total_size) |
Menghasilkan jumlah total byte yang tersedia di NVRAM. Jumlah ini setidaknya akan selalu mencapai tahun 2048. Jika suatu implementasi tidak mengetahui jumlah totalnya, maka implementasi tersebut dapat memberikan perkiraan atau tahun 2048.
perangkat - Contoh nvram_device . total_size - Menerima hasilnya. Tidak boleh NULL.
nvram_result_t (* is_space_locked)(const struct nvram_device *perangkat, indeks uint32_t, int *write_lock_enabled, int *read_lock_enabled) |
Menghasilkan apakah kunci diaktifkan untuk ruang tertentu. Ketika kunci diaktifkan, operasi dinonaktifkan dan segala upaya untuk melakukan operasi tersebut akan menghasilkan NV_RESULT_OPERATION_DISABLED.
perangkat - Contoh nvram_device . indeks - Indeks ruang. write_lock_enabled - Akan disetel ke bukan nol jika operasi tulis iff saat ini dinonaktifkan. read_lock_enabled - Akan disetel ke bukan nol jika operasi baca saat ini dinonaktifkan.
nvram_result_t (* read_space)(const struct nvram_device *perangkat, indeks uint32_t, uint64_t num_bytes_to_read, const uint8_t *authorization_value, uint32_t otorisasi_value_size, uint8_t *buffer, uint64_t *bytes_read) |
Membaca isi suatu spasi. Jika spasi belum pernah ditulis, semua byte yang dibaca akan menjadi 0x00.
perangkat - Contoh nvram_device . indeks - Indeks ruang. num_bytes_to_read - Jumlah byte yang akan dibaca; |penyangga| harus cukup besar untuk menampung byte sebanyak ini. Jika lebih besar dari ukuran spasi, seluruh spasi akan terbaca. Jika ini kurang dari ukuran spasi, byte pertama dalam spasi akan dibaca. otorisasi_nilai - Jika ruang memiliki kebijakan NV_CONTROL_READ_AUTHORIZATION, maka parameter ini memberikan nilai otorisasi. Jika tidak, nilai ini akan diabaikan dan mungkin NULL. otorisasi_nilai_ukuran - Jumlah byte dalam |nilai_otorisasi|. buffer - Menerima data yang dibaca dari spasi. Setidaknya harus |num_bytes_to_read| berukuran byte. bytes_read - Jumlah byte yang dibaca. Jika NV_RESULT_SUCCESS dikembalikan, ini akan disetel ke |num_bytes_to_read| yang lebih kecil atau ukuran ruang.
nvram_result_t (* write_space)(const struct nvram_device *perangkat, indeks uint32_t, const uint8_t *buffer, uint64_t buffer_size, const uint8_t *nilai_otorisasi, uint32_t otorisasi_nilai_ukuran) |
Menulis isi spasi. Jika ruang dikonfigurasi dengan NV_CONTROL_WRITE_EXTEND maka data masukan digunakan untuk memperluas data saat ini.
perangkat - Contoh nvram_device . indeks - Indeks ruang. buffer - Data yang akan ditulis. buffer_size - Jumlah byte dalam |buffer|. Jika ini kurang dari ukuran spasi, sisa byte akan disetel ke 0x00. Jika ini lebih dari ukuran ruang, kembalikan NV_RESULT_INVALID_PARAMETER. otorisasi_nilai - Jika ruang memiliki kebijakan NV_CONTROL_WRITE_AUTHORIZATION, maka parameter ini memberikan nilai otorisasi. Jika tidak, nilai ini akan diabaikan dan mungkin NULL. otorisasi_nilai_ukuran - Jumlah byte dalam |nilai_otorisasi|.
Dokumentasi untuk struct ini dihasilkan dari file berikut:
- perangkat keras/libhardware/include/hardware/ nvram.h