Upgrade zerocopy to 0.7.5 am: a1658dea78 am: 7b6153f2da

Original change: https://android-review.googlesource.com/c/platform/system/tools/mkbootimg/+/2786436

Change-Id: Ib480fcb09971384593455888e76caaacb13733b5
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
diff --git a/rust/bindgen.sh b/rust/bindgen.sh
index b854d10..6e75618 100755
--- a/rust/bindgen.sh
+++ b/rust/bindgen.sh
@@ -38,7 +38,7 @@
 # generated rust bindings really don't need.
 BLOCKED_ITEMS_RE="_.+|.?INT.+|PTR.+|ATOMIC.+|.+SOURCE|.+_H|SIG_.+|SIZE_.+|.?CHAR.+"
 CUSTOM_STRUCT_RE="(vendor_)?(boot_img_hdr|ramdisk_table_entry)_v\d+"
-CUSTOM_STRUCT_DERIVES="AsBytes,FromBytes,PartialEq,Copy,Clone,Debug"
+CUSTOM_STRUCT_DERIVES="AsBytes,FromBytes,FromZeroes,PartialEq,Copy,Clone,Debug"
 BINDGEN_FLAGS="--use-core --with-derive-default"
 BOOTIMG_PRIV=${BOOTIMG_DIR}/rust/bootimg_priv.rs
 
@@ -69,7 +69,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-use zerocopy::{AsBytes, FromBytes};
+use zerocopy::{AsBytes, FromBytes, FromZeroes};
 
 EOF
 
diff --git a/rust/bootimg_priv.rs b/rust/bootimg_priv.rs
index fbd883c..15fd0d9 100644
--- a/rust/bootimg_priv.rs
+++ b/rust/bootimg_priv.rs
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-use zerocopy::{AsBytes, FromBytes};
+use zerocopy::{AsBytes, FromBytes, FromZeroes};
 
 /* automatically generated by rust-bindgen 0.65.1 */
 
@@ -32,7 +32,7 @@
 pub const VENDOR_RAMDISK_NAME_SIZE: u32 = 32;
 pub const VENDOR_RAMDISK_TABLE_ENTRY_BOARD_ID_SIZE: u32 = 16;
 #[repr(C, packed)]
-#[derive(AsBytes, FromBytes, PartialEq, Copy, Clone, Debug)]
+#[derive(AsBytes, FromBytes, FromZeroes, PartialEq, Copy, Clone, Debug)]
 pub struct boot_img_hdr_v0 {
     pub magic: [u8; 8usize],
     pub kernel_size: u32,
@@ -151,7 +151,7 @@
 }
 pub type boot_img_hdr = boot_img_hdr_v0;
 #[repr(C, packed)]
-#[derive(AsBytes, FromBytes, PartialEq, Copy, Clone, Debug)]
+#[derive(AsBytes, FromBytes, FromZeroes, PartialEq, Copy, Clone, Debug)]
 pub struct boot_img_hdr_v1 {
     pub _base: boot_img_hdr_v0,
     pub recovery_dtbo_size: u32,
@@ -208,7 +208,7 @@
     }
 }
 #[repr(C, packed)]
-#[derive(AsBytes, FromBytes, PartialEq, Copy, Clone, Debug)]
+#[derive(AsBytes, FromBytes, FromZeroes, PartialEq, Copy, Clone, Debug)]
 pub struct boot_img_hdr_v2 {
     pub _base: boot_img_hdr_v1,
     pub dtb_size: u32,
@@ -249,7 +249,7 @@
     }
 }
 #[repr(C, packed)]
-#[derive(AsBytes, FromBytes, PartialEq, Copy, Clone, Debug)]
+#[derive(AsBytes, FromBytes, FromZeroes, PartialEq, Copy, Clone, Debug)]
 pub struct boot_img_hdr_v3 {
     pub magic: [u8; 8usize],
     pub kernel_size: u32,
@@ -325,7 +325,7 @@
     }
 }
 #[repr(C, packed)]
-#[derive(AsBytes, FromBytes, PartialEq, Copy, Clone, Debug)]
+#[derive(AsBytes, FromBytes, FromZeroes, PartialEq, Copy, Clone, Debug)]
 pub struct vendor_boot_img_hdr_v3 {
     pub magic: [u8; 8usize],
     pub header_version: u32,
@@ -471,7 +471,7 @@
     }
 }
 #[repr(C, packed)]
-#[derive(AsBytes, FromBytes, PartialEq, Copy, Clone, Debug)]
+#[derive(AsBytes, FromBytes, FromZeroes, PartialEq, Copy, Clone, Debug)]
 pub struct boot_img_hdr_v4 {
     pub _base: boot_img_hdr_v3,
     pub signature_size: u32,
@@ -506,7 +506,7 @@
     }
 }
 #[repr(C, packed)]
-#[derive(AsBytes, FromBytes, PartialEq, Copy, Clone, Debug)]
+#[derive(AsBytes, FromBytes, FromZeroes, PartialEq, Copy, Clone, Debug)]
 pub struct vendor_boot_img_hdr_v4 {
     pub _base: vendor_boot_img_hdr_v3,
     pub vendor_ramdisk_table_size: u32,
@@ -584,7 +584,7 @@
     }
 }
 #[repr(C, packed)]
-#[derive(AsBytes, FromBytes, PartialEq, Copy, Clone, Debug)]
+#[derive(AsBytes, FromBytes, FromZeroes, PartialEq, Copy, Clone, Debug)]
 pub struct vendor_ramdisk_table_entry_v4 {
     pub ramdisk_size: u32,
     pub ramdisk_offset: u32,