مرجع بنية الجهاز nvram_device

مرجع بنية الجهاز nvram_device

#include < nvram.h >

حقول البيانات

هيكل hw_device_t مشترك
nvram_result_t (* get_total_size_in_bytes ) (إنشاء بنية nvram_device * device ، uint64_t * total_size)
nvram_result_t (* get_available_size_in_bytes ) (إنشاء بنية nvram_device * device ، uint64_t * available_size)
nvram_result_t (* get_max_space_size_in_bytes ) (إنشاء بنية nvram_device * device ، uint64_t * max_space_size)
nvram_result_t (* get_max_spaces ) (إنشاء بنية nvram_device * device ، uint32_t * num_spaces)
nvram_result_t (* get_space_list ) (إنشاء بنية nvram_device * device ، uint32_t max_list_size ، uint32_t * space_index_list ، uint32_t * list_size)
nvram_result_t (* get_space_size ) (إنشاء بنية nvram_device * device ، uint32_t index ، uint64_t * size)
nvram_result_t (* get_space_controls ) (إنشاء بنية 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 ) (إنشاء بنية nvram_device * device ، uint32_t index ، int * write_lock_enabled ، int * read_lock_enabled)
nvram_result_t (* create_space ( _
nvram_result_t (* delete_space ) (const هيكلة nvram_device * device ، uint32_t index ، const uint8_t * authorization_value ، uint32_t authorization_value_size)
nvram_result_t (* Disable_create ) (إنشاء بنية nvram_device * device)
nvram_result_t (* write_space ) (const هيكل 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 هيكل nvram_device * device ، uint32_t index ، const uint8_t * authorization_value ، uint32_t authorization_value_size)
nvram_result_t (* enable_read_lock ) (const هيكل nvram_device * device ، uint32_t index ، const uint8_t * authorization_value ، uint32_t authorization_value_size)

وصف مفصل

التعريف في السطر 48 من الملف nvram.h .

التوثيق الميداني

الطرق الشائعة لجهاز nvram_device . يجب أن يكون هذا هو أول عضو في nvram_device حيث سيقوم مستخدمو هذه البنية بإرسال hw_device_t إلى مؤشر nvram_device في السياقات حيث يُعرف hw_device_t بإشارات nvram_device .

التعريف في السطر 55 من الملف nvram.h .

يُنشئ مساحة جديدة باستخدام الفهرس والحجم وعناصر التحكم وقيمة التفويض المحددة.

الجهاز - مثيل nvram_device . الفهرس - فهرس للمساحة الجديدة. يمكن أن يكون الفهرس أي قيمة 32 بت ولكن يجب ألا يتم تعيينه بالفعل إلى مساحة موجودة. size_in_bytes - عدد البايت المطلوب تخصيصه للمساحة. control_list - مجموعة من عناصر التحكم لفرض المساحة. list_size - عدد العناصر في | control_list |. authorization_value - إذا | control_list | يحتوي على NV_CONTROL_READ_AUTHORIZATION و / أو NV_CONTROL_WRITE_AUTHORIZATION ، ثم توفر هذه المعلمة قيمة التفويض لهذه السياسات (إذا تم تعيين كلا الضوابط ، فإن هذه القيمة تنطبق على كليهما). خلاف ذلك ، يتم تجاهل هذه القيمة وقد تكون NULL. authorization_value_size - عدد البايت في | authorization_value |.

التعريف في السطر 187 من الملف nvram.h .

nvram_result_t (* delete_space) (إنشاء بنية nvram_device * device ، uint32_t index ، const uint8_t * authorization_value ، uint32_t authorization_value_size)

يحذف مسافة.

الجهاز - مثيل nvram_device . الفهرس - فهرس الفضاء. authorization_value - إذا كانت المساحة بها سياسة NV_CONTROL_WRITE_AUTHORIZATION ، فإن هذه المعلمة توفر قيمة التفويض. خلاف ذلك ، يتم تجاهل هذه القيمة وقد تكون NULL. authorization_value_size - عدد البايت في | authorization_value |.

التعريف في السطر 207 من الملف nvram.h .

nvram_result_t (* disable_create) (بنية الإنشاء nvram_device * device)

لتعطيل أي إنشاء إضافي للمساحات حتى إعادة الضبط الكاملة التالية للجهاز (كما هو الحال في إعادة تعيين إعدادات المصنع ، وليس إعادة التشغيل). يجب أن ترجع المكالمات اللاحقة إلى NV_CreateSpace NV_RESULT_OPERATION_DISABLED.

الجهاز - مثيل nvram_device .

التعريف في السطر 219 للملف nvram.h .

nvram_result_t (* enable_read_lock) ( البناء الثابت nvram_device * device، uint32_t index، const uint8_t * authorization_value، uint32_t authorization_value_size)

تُمكّن قفل القراءة للمساحة المحددة وفقًا لسياستها. إذا كانت المساحة لا تحتوي على مجموعة NV_CONTROL_BOOT_READ_LOCK ، فلن يكون لهذه الوظيفة أي تأثير وقد تُرجع خطأ.

الجهاز - مثيل nvram_device . الفهرس - فهرس الفضاء. authorization_value - إذا كانت المساحة بها سياسة NV_CONTROL_READ_AUTHORIZATION ، فإن هذه المعلمة توفر قيمة التفويض. (لاحظ أنه لا توجد متطلبات للوصول للكتابة من أجل قفل القراءة. قفل القراءة دائمًا متغير.) وإلا ، يتم تجاهل هذه القيمة وقد تكون فارغة. authorization_value_size - عدد البايت في | authorization_value |.

التعريف في السطر 317 للملف nvram.h .

nvram_result_t (* enable_write_lock) ( البناء الثابت nvram_device * device، uint32_t index، const uint8_t * authorization_value، uint32_t authorization_value_size)

تُمكّن قفل الكتابة للمساحة المحددة وفقًا لسياستها. إذا كانت المساحة لا تحتوي على مجموعة NV_CONTROL_PERSISTENT_WRITE_LOCK أو NV_CONTROL_BOOT_WRITE_LOCK ، فلن يكون لهذه الوظيفة أي تأثير وقد تعرض خطأ.

الجهاز - مثيل nvram_device . الفهرس - فهرس الفضاء. authorization_value - إذا كانت المساحة بها سياسة NV_CONTROL_WRITE_AUTHORIZATION ، فإن هذه المعلمة توفر قيمة التفويض. خلاف ذلك ، يتم تجاهل هذه القيمة وقد تكون NULL. authorization_value_size - عدد البايت في | authorization_value |.

التعريف في السطر 294 للملف nvram.h .

nvram_result_t (* get_available_size_in_bytes) (إنشاء بنية nvram_device * device ، uint64_t * available_size)

لإخراج العدد غير المخصص من البايتات المتوفرة في NVRAM. إذا كان التطبيق لا يعرف الحجم المتاح ، فقد يقدم تقديرًا أو الحجم الإجمالي.

الجهاز - مثيل nvram_device . available_size - لاستلام الإخراج. لا يمكن أن تكون لاغية.

التعريف في السطر 76 من الملف nvram.h .

nvram_result_t (* get_max_space_size_in_bytes) (بنية بنية nvram_device * device ، uint64_t * max_space_size)

لإخراج أقصى عدد من البايتات التي يمكن تخصيصها لمسافة واحدة. سيكون هذا دائمًا 32 على الأقل. إذا لم يحد أحد التطبيقات من الحد الأقصى للحجم ، فقد يوفر الحجم الإجمالي.

الجهاز - مثيل nvram_device . max_space_size - يتلقى الإخراج. لا يمكن أن تكون لاغية.

التعريف في السطر 87 من الملف nvram.h .

nvram_result_t (* get_max_spaces) (إنشاء بنية nvram_device * device ، uint32_t * num_spaces)

يُخرج العدد الإجمالي الأقصى للمسافات التي يمكن تخصيصها. سيكون هذا دائمًا 8. المخرجات NV_UNLIMITED_SPACES إذا تم دعم أي عدد من المسافات (يقتصر فقط على وحدات بايت NVRAM المتاحة).

الجهاز - مثيل nvram_device . num_spaces - تتلقى الإخراج. لا يمكن أن تكون لاغية.

التعريف في السطر 99 من الملف nvram.h .

nvram_result_t (* get_space_controls) (بنية هيكلية nvram_device * device، uint32_t index، uint32_t max_list_size، nvram_control_t * control_list، uint32_t * list_size)

إخراج قائمة عناصر التحكم المرتبطة بمساحة معينة.

الجهاز - مثيل nvram_device . الفهرس - فهرس الفضاء. max_list_size - عدد العناصر في | control_list | مجموعة مصفوفة. control_list - يستقبل قائمة عناصر التحكم حتى | max_list_size المعطى |. قد يكون NULL إذا | max_list_size | هو 0. list_size - تستقبل عدد العناصر التي تم ملؤها في | control_list | ، أو عدد العناصر المتاحة في حالة | control_list | باطل.

التعريف في السطر 144 من الملف nvram.h .

nvram_result_t (* get_space_list) (بنية هيكلية nvram_device * device ، uint32_t max_list_size ، uint32_t * space_index_list ، uint32_t * list_size)

يقوم بإخراج قائمة بمؤشرات المساحة التي تم إنشاؤها. إذا | max_list_size | هو 0 ، فقط | list_size | مأهولة بالسكان.

الجهاز - مثيل nvram_device . max_list_size - عدد العناصر في | space_index_list | مجموعة مصفوفة. space_index_list - يستقبل قائمة المساحات التي تم إنشاؤها حتى | max_list_size المعطى |. قد يكون NULL إذا | max_list_size | هو 0. list_size - تستقبل عدد العناصر التي تم ملؤها في | space_index_list | ، أو عدد العناصر المتاحة في حالة | space_index_list | باطل.

التعريف في السطر 116 من الملف nvram.h .

nvram_result_t (* get_space_size) (بنية هيكلية nvram_device * device ، uint32_t index ، uint64_t * size)

إخراج الحجم بالبايت لمساحة معينة.

الجهاز - مثيل nvram_device . الفهرس - فهرس الفضاء. الحجم - يتلقى الإخراج. لا يمكن أن تكون لاغية.

التعريف في السطر 128 من الملف nvram.h .

nvram_result_t (* get_total_size_in_bytes) (إنشاء بنية nvram_device * device ، uint64_t * total_size)

لإخراج العدد الإجمالي للبايتات المتوفرة في NVRAM. سيكون هذا دائمًا 2048 على الأقل. إذا لم يعرف أحد التطبيقات الحجم الإجمالي ، فقد يقدم تقديرًا أو 2048.

الجهاز - مثيل nvram_device . total_size - تستقبل المخرجات. لا يمكن أن تكون لاغية.

التعريف في السطر 65 من الملف nvram.h .

nvram_result_t (* is_space_locked) (بنية هيكلية nvram_device * device، uint32_t index، int * write_lock_enabled، int * read_lock_enabled)

يُخرج ما إذا تم تمكين الأقفال للمساحة المحددة. عند تمكين قفل ، يتم تعطيل العملية وأي محاولة لتنفيذ هذه العملية ستؤدي إلى NV_RESULT_OPERATION_DISABLED.

الجهاز - مثيل nvram_device . الفهرس - فهرس الفضاء. write_lock_enabled - سيتم تعيينه على غير الصفر iff عمليات الكتابة معطلة حاليًا. read_lock_enabled - سيتم تعيينه على غير الصفر iff عمليات القراءة معطلة حاليًا.

التعريف في السطر 161 من الملف nvram.h .

nvram_result_t (* read_space) (إنشاء بنية 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)

يقرأ محتويات الفضاء. إذا لم تتم كتابة المساحة مطلقًا ، فستكون جميع وحدات البايت المقروءة 0x00.

الجهاز - مثيل nvram_device . الفهرس - فهرس الفضاء. num_bytes_to_read - عدد البايت المطلوب قراءته ؛ | عازلة | يجب أن يكون كبيرًا بما يكفي لاستيعاب هذا العدد الكبير من البايت. إذا كان هذا أكبر من حجم المساحة ، فسيتم قراءة المساحة بالكامل. إذا كان هذا أقل من حجم المساحة ، تتم قراءة البايتات الأولى في المساحة. authorization_value - إذا كانت المساحة بها سياسة NV_CONTROL_READ_AUTHORIZATION ، فإن هذه المعلمة توفر قيمة التفويض. خلاف ذلك ، يتم تجاهل هذه القيمة وقد تكون NULL. authorization_value_size - عدد البايت في | authorization_value |. المخزن المؤقت - يتلقى البيانات المقروءة من الفضاء. يجب أن يكون على الأقل | num_bytes_to_read | بايت في الحجم. bytes_read - عدد البايت المقروء. إذا تم إرجاع NV_RESULT_SUCCESS ، فسيتم تعيين هذا على الحجم الأصغر | عدد_وحدات_البايت_إلى_قراءة | أو حجم المساحة.

التعريف في السطر 272 للملف nvram.h .

nvram_result_t (* write_space) (بنية هيكلية nvram_device * device ، uint32_t index ، const uint8_t * buffer ، uint64_t buffer_size ، const uint8_t * authorization_value ، uint32_t authorization_value_size)

يكتب محتويات الفضاء. إذا تم تكوين المساحة باستخدام NV_CONTROL_WRITE_EXTEND ، فسيتم استخدام بيانات الإدخال لتوسيع البيانات الحالية.

الجهاز - مثيل nvram_device . الفهرس - فهرس الفضاء. المخزن المؤقت - البيانات المراد كتابتها. buffer_size - عدد البايت في | المخزن المؤقت |. إذا كان هذا أقل من حجم المساحة ، فسيتم تعيين وحدات البايت المتبقية على 0x00. إذا كان هذا أكبر من حجم المساحة ، يتم إرجاع NV_RESULT_INVALID_PARAMETER. authorization_value - إذا كانت المساحة بها سياسة NV_CONTROL_WRITE_AUTHORIZATION ، فإن هذه المعلمة توفر قيمة التفويض. خلاف ذلك ، يتم تجاهل هذه القيمة وقد تكون NULL. authorization_value_size - عدد البايت في | authorization_value |.

التعريف في السطر 241 للملف nvram.h .


تم إنشاء وثائق هذه البنية من الملف التالي:
  • الأجهزة / libhardware / تشمل / الأجهزة / nvram.h