]> git.ipfire.org Git - people/ms/u-boot.git/blobdiff - disk/part_efi.c
Remove CONFIG_SYS_BOOTCOUNT_SINGLEWORD
[people/ms/u-boot.git] / disk / part_efi.c
index 7862beeea6f8392e736d832ceb40949049e8f458..fb221eec0904b6b3101e376f5d58855b704ce948 100644 (file)
@@ -24,7 +24,7 @@
 
 DECLARE_GLOBAL_DATA_PTR;
 
-#ifdef HAVE_BLOCK_DEVICE
+#ifdef CONFIG_HAVE_BLOCK_DEVICE
 /**
  * efi_crc32() - EFI version of crc32 function
  * @buf: buffer to calculate crc32 of
@@ -350,7 +350,7 @@ static int part_test_efi(struct blk_desc *dev_desc)
 static int set_protective_mbr(struct blk_desc *dev_desc)
 {
        /* Setup the Protective MBR */
-       ALLOC_CACHE_ALIGN_BUFFER(legacy_mbr, p_mbr, 1);
+       ALLOC_CACHE_ALIGN_BUFFER_PAD(legacy_mbr, p_mbr, 1, dev_desc->blksz);
        memset(p_mbr, 0, sizeof(*p_mbr));
 
        if (p_mbr == NULL) {
@@ -622,25 +622,27 @@ int gpt_fill_header(struct blk_desc *dev_desc, gpt_header *gpt_h,
 int gpt_restore(struct blk_desc *dev_desc, char *str_disk_guid,
                disk_partition_t *partitions, int parts_count)
 {
-       int ret;
-
-       gpt_header *gpt_h = calloc(1, PAD_TO_BLOCKSIZE(sizeof(gpt_header),
-                                                      dev_desc));
+       gpt_header *gpt_h;
        gpt_entry *gpt_e;
+       int ret, size;
 
+       size = PAD_TO_BLOCKSIZE(sizeof(gpt_header), dev_desc);
+       gpt_h = malloc_cache_aligned(size);
        if (gpt_h == NULL) {
                printf("%s: calloc failed!\n", __func__);
                return -1;
        }
+       memset(gpt_h, 0, size);
 
-       gpt_e = calloc(1, PAD_TO_BLOCKSIZE(GPT_ENTRY_NUMBERS
-                                              * sizeof(gpt_entry),
-                                              dev_desc));
+       size = PAD_TO_BLOCKSIZE(GPT_ENTRY_NUMBERS * sizeof(gpt_entry),
+                               dev_desc);
+       gpt_e = malloc_cache_aligned(size);
        if (gpt_e == NULL) {
                printf("%s: calloc failed!\n", __func__);
                free(gpt_h);
                return -1;
        }
+       memset(gpt_e, 0, size);
 
        /* Generate Primary GPT header (LBA1) */
        ret = gpt_fill_header(dev_desc, gpt_h, str_disk_guid, parts_count);
@@ -929,7 +931,7 @@ static int is_gpt_valid(struct blk_desc *dev_desc, u64 lba,
                return 0;
        }
 
-       ALLOC_CACHE_ALIGN_BUFFER(legacy_mbr, mbr, dev_desc->blksz);
+       ALLOC_CACHE_ALIGN_BUFFER_PAD(legacy_mbr, mbr, 1, dev_desc->blksz);
 
        /* Read MBR Header from device */
        if (blk_dread(dev_desc, 0, 1, (ulong *)mbr) != 1) {