Przeglądaj źródła

x86: fsp: Avoid cast stack_top in struct shared_data

Declare stack_top as u32 in struct shared_data and struct common_buf
so that we can avoid casting in fsp_init().

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Acked-by: Simon Glass <sjg@chromium.org>
Tested-by: Simon Glass <sjg@chromium.org>
Bin Meng 9 lat temu
rodzic
commit
f0285fbe4e

+ 1 - 1
arch/x86/include/asm/fsp/fsp_api.h

@@ -30,7 +30,7 @@ struct common_buf {
 	 * Stack top pointer used by the bootloader. The new stack frame will be
 	 * set up at this location after FspInit API call.
 	 */
-	u32	*stack_top;
+	u32	stack_top;
 	u32	boot_mode;	/* Current system boot mode */
 	void	*upd_data;	/* User platform configuraiton data region */
 	u32	reserved[7];	/* Reserved */

+ 1 - 1
arch/x86/include/asm/fsp/fsp_support.h

@@ -20,7 +20,7 @@
 
 struct shared_data {
 	struct fsp_header	*fsp_hdr;
-	u32			*stack_top;
+	u32			stack_top;
 	struct upd_region	fsp_upd;
 };
 

+ 2 - 2
arch/x86/lib/fsp/fsp_support.c

@@ -122,7 +122,7 @@ void fsp_init(u32 stack_top, u32 boot_mode, void *nvs_buf)
 	memset(&rt_buf, 0, sizeof(struct fspinit_rtbuf));
 
 	/* Reserve a gap in stack top */
-	rt_buf.common.stack_top = (u32 *)stack_top - 32;
+	rt_buf.common.stack_top = stack_top - 32;
 	rt_buf.common.boot_mode = boot_mode;
 	rt_buf.common.upd_data = fsp_upd;
 
@@ -152,7 +152,7 @@ void fsp_init(u32 stack_top, u32 boot_mode, void *nvs_buf)
 	params_ptr = &params;
 
 	shared_data.fsp_hdr = fsp_hdr;
-	shared_data.stack_top = (u32 *)stack_top;
+	shared_data.stack_top = stack_top;
 
 	post_code(POST_PRE_MRC);