x86: fsp: Make hob command a sub-command to fsp
[oweals/u-boot.git] / arch / x86 / lib / fsp / fsp_support.c
index 5f96da120ea19d5d429e2834f6963bb6d1a11a88..1d48ff4a8e7a6a5079c97c611d2dafa6ce6724d3 100644 (file)
@@ -147,8 +147,7 @@ void fsp_init(u32 stack_top, u32 boot_mode, void *nvs_buf)
                        fsp_hdr->cfg_region_off);
 
        /* Verify the VPD data region is valid */
-       assert((fsp_vpd->img_rev == VPD_IMAGE_REV) &&
-              (fsp_vpd->sign == VPD_IMAGE_ID));
+       assert(fsp_vpd->sign == VPD_IMAGE_ID);
 
        /* Copy default data from Flash */
        memcpy(fsp_upd, (void *)(fsp_hdr->img_base + fsp_vpd->upd_offset),
@@ -173,6 +172,9 @@ void fsp_init(u32 stack_top, u32 boot_mode, void *nvs_buf)
 
        post_code(POST_PRE_MRC);
 
+       /* Load GDT for FSP */
+       setup_fsp_gdt();
+
        /*
         * Use ASM code to ensure the register value in EAX & ECX
         * will be passed into BlContinuationFunc
@@ -279,7 +281,7 @@ u64 fsp_get_usable_highmem_top(const void *hob_list)
                        res_desc = (struct hob_res_desc *)hdr;
                        if (res_desc->type == RES_SYS_MEM) {
                                phys_start = res_desc->phys_start;
-                               /* Need memory above 1MB to be collected here */
+                               /* Need memory above 4GB to be collected here */
                                if (phys_start >= (phys_addr_t)FSP_HIGHMEM_BASE)
                                        top += (u32)(res_desc->len);
                        }