All of lore.kernel.org
 help / color / mirror / Atom feed
* [U-Boot] [PATCH 0/5] Various x86 patches
@ 2012-04-29 12:00 Graeme Russ
  2012-04-29 12:00 ` [U-Boot] [PATCH 1/5] x86: Fix compilation on 64-built built machines Graeme Russ
                   ` (6 more replies)
  0 siblings, 7 replies; 20+ messages in thread
From: Graeme Russ @ 2012-04-29 12:00 UTC (permalink / raw)
  To: u-boot

These have been floating around for a while waiting for 2012.04

The first patch touches on the common makefiles, but it is only
examples/standalone/Makefile that really needs to be checked for
cross-platform issues

Graeme Russ (5):
  x86: Fix compilation on 64-built built machines
  x86: Forward declate gd_t
  x86: Put global data on the stack
  x86: Remove duplicate PCI init
  x86: Add ilog2 to bitops

 Makefile                            |    1 +
 arch/x86/cpu/config.mk              |    3 +-
 arch/x86/cpu/cpu.c                  |    6 ---
 arch/x86/cpu/start.S                |   67 +++++++++++++++++++++++++++++++----
 arch/x86/include/asm/bitops.h       |    5 +++
 arch/x86/include/asm/global_data.h  |    5 ++-
 arch/x86/include/asm/init_helpers.h |    1 -
 arch/x86/include/asm/processor.h    |    1 +
 arch/x86/lib/board.c                |    5 +--
 arch/x86/lib/init_helpers.c         |   37 +-------------------
 examples/standalone/Makefile        |    2 +-
 include/configs/eNET.h              |    6 ---
 12 files changed, 75 insertions(+), 64 deletions(-)

-- 
1.7.7.6

^ permalink raw reply	[flat|nested] 20+ messages in thread

* [U-Boot] [PATCH 1/5] x86: Fix compilation on 64-built built machines
  2012-04-29 12:00 [U-Boot] [PATCH 0/5] Various x86 patches Graeme Russ
@ 2012-04-29 12:00 ` Graeme Russ
  2012-11-28  1:35   ` Simon Glass
  2012-04-29 12:00 ` [U-Boot] [PATCH 2/5] x86: Forward declate gd_t Graeme Russ
                   ` (5 subsequent siblings)
  6 siblings, 1 reply; 20+ messages in thread
From: Graeme Russ @ 2012-04-29 12:00 UTC (permalink / raw)
  To: u-boot


Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
---
 Makefile                     |    1 +
 arch/x86/cpu/config.mk       |    3 ++-
 examples/standalone/Makefile |    2 +-
 3 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/Makefile b/Makefile
index cdd4294..4f5cb60 100644
--- a/Makefile
+++ b/Makefile
@@ -35,6 +35,7 @@ VERSION_FILE = $(obj)include/generated/version_autogenerated.h
 
 HOSTARCH := $(shell uname -m | \
 	sed -e s/i.86/x86/ \
+	    -e s/x86_64/x86/ \
 	    -e s/sun4u/sparc64/ \
 	    -e s/arm.*/arm/ \
 	    -e s/sa110/arm/ \
diff --git a/arch/x86/cpu/config.mk b/arch/x86/cpu/config.mk
index c00f867..092de68 100644
--- a/arch/x86/cpu/config.mk
+++ b/arch/x86/cpu/config.mk
@@ -23,7 +23,8 @@
 
 CROSS_COMPILE ?= i386-linux-
 
-PLATFORM_CPPFLAGS += -DCONFIG_X86 -D__I386__ -march=i386 -Werror
+PLATFORM_CPPFLAGS += -DCONFIG_X86 -D__I386__ -march=i386 -Werror -m32
+PLATFORM_LDFLAGS += -m elf_i386
 
 # DO NOT MODIFY THE FOLLOWING UNLESS YOU REALLY KNOW WHAT YOU ARE DOING!
 LDPPFLAGS += -DRESET_SEG_START=0xffff0000
diff --git a/examples/standalone/Makefile b/examples/standalone/Makefile
index baaa2fb..7c1ea5c 100644
--- a/examples/standalone/Makefile
+++ b/examples/standalone/Makefile
@@ -98,7 +98,7 @@ $(ELF):
 $(obj)%:	$(obj)%.o $(LIB)
 		$(LD) $(LDFLAGS) -g -Ttext $(CONFIG_STANDALONE_LOAD_ADDR) \
 			-o $@ -e $(SYM_PREFIX)$(notdir $(<:.o=)) $< $(LIB) \
-			-L$(gcclibdir) -lgcc
+			-L$(USE_PRIVATE_LIBGCC) -lgcc
 
 $(SREC):
 $(obj)%.srec:	$(obj)%
-- 
1.7.7.6

^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [U-Boot] [PATCH 2/5] x86: Forward declate gd_t
  2012-04-29 12:00 [U-Boot] [PATCH 0/5] Various x86 patches Graeme Russ
  2012-04-29 12:00 ` [U-Boot] [PATCH 1/5] x86: Fix compilation on 64-built built machines Graeme Russ
@ 2012-04-29 12:00 ` Graeme Russ
  2012-04-30  2:23   ` Marek Vasut
  2012-04-29 12:00 ` [U-Boot] [PATCH 3/5] x86: Put global data on the stack Graeme Russ
                   ` (4 subsequent siblings)
  6 siblings, 1 reply; 20+ messages in thread
From: Graeme Russ @ 2012-04-29 12:00 UTC (permalink / raw)
  To: u-boot

So it can be used as a type in struct global_data and remove an ugly typecast

Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
---
 arch/x86/cpu/cpu.c                 |    2 +-
 arch/x86/include/asm/global_data.h |    4 +++-
 2 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/arch/x86/cpu/cpu.c b/arch/x86/cpu/cpu.c
index e9bb0d7..67de6bc 100644
--- a/arch/x86/cpu/cpu.c
+++ b/arch/x86/cpu/cpu.c
@@ -92,7 +92,7 @@ static void load_gdt(const u64 *boot_gdt, u16 num_entries)
 
 void init_gd(gd_t *id, u64 *gdt_addr)
 {
-	id->gd_addr = (ulong)id;
+	id->gd_addr = id;
 	setup_gdt(id, gdt_addr);
 }
 
diff --git a/arch/x86/include/asm/global_data.h b/arch/x86/include/asm/global_data.h
index 908a02c..8a8896e 100644
--- a/arch/x86/include/asm/global_data.h
+++ b/arch/x86/include/asm/global_data.h
@@ -35,9 +35,11 @@
 
 #ifndef __ASSEMBLY__
 
+typedef struct global_data gd_t;
+
 typedef	struct global_data {
 	/* NOTE: gd_addr MUST be first member of struct global_data! */
-	unsigned long	gd_addr;	/* Location of Global Data */
+	gd_t		*gd_addr;	/* Location of Global Data */
 	bd_t		*bd;
 	unsigned long	flags;
 	unsigned long	baudrate;
-- 
1.7.7.6

^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [U-Boot] [PATCH 3/5] x86: Put global data on the stack
  2012-04-29 12:00 [U-Boot] [PATCH 0/5] Various x86 patches Graeme Russ
  2012-04-29 12:00 ` [U-Boot] [PATCH 1/5] x86: Fix compilation on 64-built built machines Graeme Russ
  2012-04-29 12:00 ` [U-Boot] [PATCH 2/5] x86: Forward declate gd_t Graeme Russ
@ 2012-04-29 12:00 ` Graeme Russ
  2012-11-28  1:17   ` Simon Glass
  2012-04-29 12:00 ` [U-Boot] [PATCH 4/5] x86: Remove duplicate PCI init Graeme Russ
                   ` (3 subsequent siblings)
  6 siblings, 1 reply; 20+ messages in thread
From: Graeme Russ @ 2012-04-29 12:00 UTC (permalink / raw)
  To: u-boot

Putting global data on the stack simplifies the init process (and makes it
slightly quicker). During the 'flash' stage of the init sequence, global
data is in the CAR stack. After SDRAM is initialised, global data is copied
from CAR to the SDRAM stack

Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
---
 arch/x86/cpu/cpu.c                  |    6 ---
 arch/x86/cpu/start.S                |   67 +++++++++++++++++++++++++++++++----
 arch/x86/include/asm/global_data.h  |    1 -
 arch/x86/include/asm/init_helpers.h |    1 -
 arch/x86/include/asm/processor.h    |    1 +
 arch/x86/lib/board.c                |    2 +-
 arch/x86/lib/init_helpers.c         |   37 +-------------------
 include/configs/eNET.h              |    6 ---
 8 files changed, 63 insertions(+), 58 deletions(-)

diff --git a/arch/x86/cpu/cpu.c b/arch/x86/cpu/cpu.c
index 67de6bc..9c2db9f 100644
--- a/arch/x86/cpu/cpu.c
+++ b/arch/x86/cpu/cpu.c
@@ -90,12 +90,6 @@ static void load_gdt(const u64 *boot_gdt, u16 num_entries)
 	asm volatile("lgdtl %0\n" : : "m" (gdt));
 }
 
-void init_gd(gd_t *id, u64 *gdt_addr)
-{
-	id->gd_addr = id;
-	setup_gdt(id, gdt_addr);
-}
-
 void setup_gdt(gd_t *id, u64 *gdt_addr)
 {
 	/* CS: code, read/execute, 4 GB, base 0 */
diff --git a/arch/x86/cpu/start.S b/arch/x86/cpu/start.S
index ee0dabe..4842ff1 100644
--- a/arch/x86/cpu/start.S
+++ b/arch/x86/cpu/start.S
@@ -83,13 +83,33 @@ car_init_ret:
 	 * or fully initialised SDRAM - we really don't care which)
 	 * starting at CONFIG_SYS_CAR_ADDR to be used as a temporary stack
 	 */
-	movl	$CONFIG_SYS_INIT_SP_ADDR, %esp
 
-	/* Initialise the Global Data Pointer */
-	movl	$CONFIG_SYS_INIT_GD_ADDR, %eax
-	movl	%eax, %edx
-	addl	$GENERATED_GBL_DATA_SIZE, %edx
-	call	init_gd;
+	/* Stack grows down from top of CAR */
+	movl	$(CONFIG_SYS_CAR_ADDR + CONFIG_SYS_CAR_SIZE), %esp
+
+	/* Reserve space on stack for global data */
+	subl	$GENERATED_GBL_DATA_SIZE, %esp
+
+	/* Align global data to 16-byte boundary */
+	andl	$0xfffffff0, %esp
+
+	/* Setup first parameter to setup_gdt */
+	movl	%esp, %eax
+
+	/* Reserve space for global descriptor table */
+	subl	$X86_GDT_SIZE, %esp
+
+	/* Align temporary global descriptor table to 16-byte boundary */
+	andl	$0xfffffff0, %esp
+
+	/* Set second parameter to setup_gdt */
+	movl	%esp, %edx
+
+	/* gd->gd_addr = gd (Required to allow gd->xyz to work) */
+	movl	%eax, (%eax)
+
+	/* Setup global descriptor table so gd->xyz works */
+	call	setup_gdt
 
 	/* Set parameter to board_init_f() to boot flags */
 	xorl	%eax, %eax
@@ -113,9 +133,42 @@ board_init_f_r_trampoline:
 	 * %eax = Address of top of new stack
 	 */
 
-	/* Setup stack in RAM */
+	/* Stack grows down from top of SDRAM */
 	movl	%eax, %esp
 
+	/* Reserve space on stack for global data */
+	subl	$GENERATED_GBL_DATA_SIZE, %esp
+
+	/* Align global data to 16-byte boundary */
+	andl	$0xfffffff0, %esp
+
+	/* Setup first parameter to memcpy (and setup_gdt) */
+	movl	%esp, %eax
+
+	/* Setup second parameter to memcpy */
+	fs movl 0, %edx
+
+	/* Set third parameter to memcpy */
+	movl	$GENERATED_GBL_DATA_SIZE, %ecx
+
+	/* Copy global data from CAR to SDRAM stack */
+	call	memcpy
+
+	/* Reserve space for global descriptor table */
+	subl	$X86_GDT_SIZE, %esp
+
+	/* Align global descriptor table to 16-byte boundary */
+	andl	$0xfffffff0, %esp
+
+	/* Set second parameter to setup_gdt */
+	movl	%esp, %edx
+
+	/* gd->gd_addr = gd (Required to allow gd->xyz to work) */
+	movl	%eax, (%eax)
+
+	/* Setup global descriptor table so gd->xyz works */
+	call	setup_gdt
+
 	/* Re-enter U-Boot by calling board_init_f_r */
 	call	board_init_f_r
 
diff --git a/arch/x86/include/asm/global_data.h b/arch/x86/include/asm/global_data.h
index 8a8896e..c55543e 100644
--- a/arch/x86/include/asm/global_data.h
+++ b/arch/x86/include/asm/global_data.h
@@ -56,7 +56,6 @@ typedef	struct global_data {
 	unsigned long	relocaddr;	/* Start address of U-Boot in RAM */
 	unsigned long	start_addr_sp;	/* start_addr_stackpointer */
 	unsigned long	gdt_addr;	/* Location of GDT */
-	unsigned long	new_gd_addr;	/* New location of Global Data */
 	phys_size_t	ram_size;	/* RAM size */
 	unsigned long	reset_status;	/* reset status register at boot */
 	void		**jt;		/* jump table */
diff --git a/arch/x86/include/asm/init_helpers.h b/arch/x86/include/asm/init_helpers.h
index 192f18e..d11d35a 100644
--- a/arch/x86/include/asm/init_helpers.h
+++ b/arch/x86/include/asm/init_helpers.h
@@ -29,7 +29,6 @@ int display_dram_config(void);
 int init_baudrate_f(void);
 int calculate_relocation_address(void);
 
-int copy_gd_to_ram_f_r(void);
 int init_cache_f_r(void);
 
 int set_reloc_flag_r(void);
diff --git a/arch/x86/include/asm/processor.h b/arch/x86/include/asm/processor.h
index 6eb5180..17f27cb 100644
--- a/arch/x86/include/asm/processor.h
+++ b/arch/x86/include/asm/processor.h
@@ -41,6 +41,7 @@ enum {
 #else
 /* NOTE: If the above enum is modified, this define must be checked */
 #define X86_GDT_ENTRY_32BIT_DS	3
+#define X86_GDT_NUM_ENTRIES	7
 #endif
 
 #define X86_GDT_SIZE		(X86_GDT_NUM_ENTRIES * X86_GDT_ENTRY_SIZE)
diff --git a/arch/x86/lib/board.c b/arch/x86/lib/board.c
index 5f0b62c..100ac1e 100644
--- a/arch/x86/lib/board.c
+++ b/arch/x86/lib/board.c
@@ -36,6 +36,7 @@
 #include <stdio_dev.h>
 #include <asm/u-boot-x86.h>
 #include <asm/relocate.h>
+#include <asm/processor.h>
 
 #include <asm/init_helpers.h>
 #include <asm/init_wrappers.h>
@@ -121,7 +122,6 @@ init_fnc_t *init_sequence_f[] = {
  * initialise the CPU caches (to speed up the relocation process)
  */
 init_fnc_t *init_sequence_f_r[] = {
-	copy_gd_to_ram_f_r,
 	init_cache_f_r,
 	copy_uboot_to_ram,
 	clear_bss,
diff --git a/arch/x86/lib/init_helpers.c b/arch/x86/lib/init_helpers.c
index 9f4dee0..d228906 100644
--- a/arch/x86/lib/init_helpers.c
+++ b/arch/x86/lib/init_helpers.c
@@ -83,18 +83,8 @@ int calculate_relocation_address(void)
 	 *       requirements
 	 */
 
-	/* Global Data is at top of available memory */
+	/* Stack is at top of available memory */
 	dest_addr = gd->ram_size;
-	dest_addr -= GENERATED_GBL_DATA_SIZE;
-	dest_addr &= ~15;
-	gd->new_gd_addr = dest_addr;
-
-	/* GDT is below Global Data */
-	dest_addr -= X86_GDT_SIZE;
-	dest_addr &= ~15;
-	gd->gdt_addr = dest_addr;
-
-	/* Stack is below GDT */
 	gd->start_addr_sp = dest_addr;
 
 	/* U-Boot is below the stack */
@@ -107,31 +97,6 @@ int calculate_relocation_address(void)
 	return 0;
 }
 
-int copy_gd_to_ram_f_r(void)
-{
-	gd_t *ram_gd;
-
-	/*
-	 * Global data is still in temporary memory (the CPU cache).
-	 * calculate_relocation_address() has set gd->new_gd_addr to
-	 * where the global data lives in RAM but getting it there
-	 * safely is a bit tricky due to the 'F-Segment Hack' that
-	 * we need to use for x86
-	 */
-	ram_gd = (gd_t *)gd->new_gd_addr;
-	memcpy((void *)ram_gd, gd, sizeof(gd_t));
-
-	/*
-	 * Reload the Global Descriptor Table so FS points to the
-	 * in-RAM copy of Global Data (calculate_relocation_address()
-	 * has already calculated the in-RAM location of the GDT)
-	 */
-	ram_gd->gd_addr = (ulong)ram_gd;
-	init_gd(ram_gd, (u64 *)gd->gdt_addr);
-
-	return 0;
-}
-
 int init_cache_f_r(void)
 {
 	/* Initialise the CPU cache(s) */
diff --git a/include/configs/eNET.h b/include/configs/eNET.h
index d5c9cad..3c6c6f1 100644
--- a/include/configs/eNET.h
+++ b/include/configs/eNET.h
@@ -169,16 +169,10 @@
 #define CONFIG_SYS_STACK_SIZE			(32 * 1024)
 #define CONFIG_SYS_CAR_ADDR			0x19200000
 #define CONFIG_SYS_CAR_SIZE			(16 * 1024)
-#define CONFIG_SYS_INIT_SP_ADDR			(CONFIG_SYS_CAR_ADDR + \
-						 CONFIG_SYS_CAR_SIZE)
 #define CONFIG_SYS_MONITOR_BASE			CONFIG_SYS_TEXT_BASE
 #define CONFIG_SYS_MONITOR_LEN			(256 * 1024)
 #define CONFIG_SYS_MALLOC_LEN			(CONFIG_ENV_SECT_SIZE + \
 						 128*1024)
-/* Address of temporary Global Data */
-#define CONFIG_SYS_INIT_GD_ADDR			CONFIG_SYS_CAR_ADDR
-
-
 /* allow to overwrite serial and ethaddr */
 #define CONFIG_ENV_OVERWRITE
 
-- 
1.7.7.6

^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [U-Boot] [PATCH 4/5] x86: Remove duplicate PCI init
  2012-04-29 12:00 [U-Boot] [PATCH 0/5] Various x86 patches Graeme Russ
                   ` (2 preceding siblings ...)
  2012-04-29 12:00 ` [U-Boot] [PATCH 3/5] x86: Put global data on the stack Graeme Russ
@ 2012-04-29 12:00 ` Graeme Russ
  2012-11-28  1:15   ` Simon Glass
  2012-04-29 12:00 ` [U-Boot] [PATCH 5/5] x86: Add ilog2 to bitops Graeme Russ
                   ` (2 subsequent siblings)
  6 siblings, 1 reply; 20+ messages in thread
From: Graeme Russ @ 2012-04-29 12:00 UTC (permalink / raw)
  To: u-boot


Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
---
 arch/x86/lib/board.c |    3 ---
 1 files changed, 0 insertions(+), 3 deletions(-)

diff --git a/arch/x86/lib/board.c b/arch/x86/lib/board.c
index 100ac1e..8c8b6fe 100644
--- a/arch/x86/lib/board.c
+++ b/arch/x86/lib/board.c
@@ -169,9 +169,6 @@ init_fnc_t *init_sequence_r[] = {
 #ifdef CONFIG_MISC_INIT_R
 	misc_init_r,
 #endif
-#if defined(CONFIG_CMD_PCMCIA) && !defined(CONFIG_CMD_IDE)
-	pci_init_r,
-#endif
 #if defined(CONFIG_CMD_KGDB)
 	kgdb_init_r,
 #endif
-- 
1.7.7.6

^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [U-Boot] [PATCH 5/5] x86: Add ilog2 to bitops
  2012-04-29 12:00 [U-Boot] [PATCH 0/5] Various x86 patches Graeme Russ
                   ` (3 preceding siblings ...)
  2012-04-29 12:00 ` [U-Boot] [PATCH 4/5] x86: Remove duplicate PCI init Graeme Russ
@ 2012-04-29 12:00 ` Graeme Russ
  2012-11-28  1:32   ` Simon Glass
  2012-04-29 12:25 ` [U-Boot] [PATCH 0/5] Various x86 patches Andy Pont
       [not found] ` <4f9d32e6.810c320a.69b0.01ddSMTPIN_ADDED@mx.google.com>
  6 siblings, 1 reply; 20+ messages in thread
From: Graeme Russ @ 2012-04-29 12:00 UTC (permalink / raw)
  To: u-boot

ilog2 is required by AHCI driver

Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
---
 arch/x86/include/asm/bitops.h |    5 +++++
 1 files changed, 5 insertions(+), 0 deletions(-)

diff --git a/arch/x86/include/asm/bitops.h b/arch/x86/include/asm/bitops.h
index c7a38f2..5a7e4cb 100644
--- a/arch/x86/include/asm/bitops.h
+++ b/arch/x86/include/asm/bitops.h
@@ -351,6 +351,11 @@ static __inline__ int ffs(int x)
 }
 #define PLATFORM_FFS
 
+static inline int __ilog2(unsigned int x)
+{
+	return generic_fls(x) - 1;
+}
+
 /**
  * hweightN - returns the hamming weight of a N-bit word
  * @x: the word to weigh
-- 
1.7.7.6

^ permalink raw reply related	[flat|nested] 20+ messages in thread

* [U-Boot] [PATCH 0/5] Various x86 patches
  2012-04-29 12:00 [U-Boot] [PATCH 0/5] Various x86 patches Graeme Russ
                   ` (4 preceding siblings ...)
  2012-04-29 12:00 ` [U-Boot] [PATCH 5/5] x86: Add ilog2 to bitops Graeme Russ
@ 2012-04-29 12:25 ` Andy Pont
       [not found] ` <4f9d32e6.810c320a.69b0.01ddSMTPIN_ADDED@mx.google.com>
  6 siblings, 0 replies; 20+ messages in thread
From: Andy Pont @ 2012-04-29 12:25 UTC (permalink / raw)
  To: u-boot

Hi Graeme,

> Graeme Russ (5):
>   x86: Fix compilation on 64-built built machines

Shouldn't this be 64-bit build machines?

Regards,

Andy.

^ permalink raw reply	[flat|nested] 20+ messages in thread

* [U-Boot] [PATCH 0/5] Various x86 patches
       [not found] ` <4f9d32e6.810c320a.69b0.01ddSMTPIN_ADDED@mx.google.com>
@ 2012-04-29 12:31   ` Graeme Russ
  2012-11-28  1:13     ` Simon Glass
  0 siblings, 1 reply; 20+ messages in thread
From: Graeme Russ @ 2012-04-29 12:31 UTC (permalink / raw)
  To: u-boot

Hi Andy,

On 04/29/2012 10:25 PM, Andy Pont wrote:
> Hi Graeme,
> 
>> Graeme Russ (5):
>>   x86: Fix compilation on 64-built built machines
> 
> Shouldn't this be 64-bit build machines?

Yep - Thanks

Regards,

Graeme

^ permalink raw reply	[flat|nested] 20+ messages in thread

* [U-Boot] [PATCH 2/5] x86: Forward declate gd_t
  2012-04-29 12:00 ` [U-Boot] [PATCH 2/5] x86: Forward declate gd_t Graeme Russ
@ 2012-04-30  2:23   ` Marek Vasut
  2012-11-28  1:28     ` Simon Glass
  0 siblings, 1 reply; 20+ messages in thread
From: Marek Vasut @ 2012-04-30  2:23 UTC (permalink / raw)
  To: u-boot

Dear Graeme Russ,

> So it can be used as a type in struct global_data and remove an ugly
> typecast
> 
> Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
> ---
>  arch/x86/cpu/cpu.c                 |    2 +-
>  arch/x86/include/asm/global_data.h |    4 +++-
>  2 files changed, 4 insertions(+), 2 deletions(-)
> 
> diff --git a/arch/x86/cpu/cpu.c b/arch/x86/cpu/cpu.c
> index e9bb0d7..67de6bc 100644
> --- a/arch/x86/cpu/cpu.c
> +++ b/arch/x86/cpu/cpu.c
> @@ -92,7 +92,7 @@ static void load_gdt(const u64 *boot_gdt, u16
> num_entries)
> 
>  void init_gd(gd_t *id, u64 *gdt_addr)
>  {
> -	id->gd_addr = (ulong)id;
> +	id->gd_addr = id;
>  	setup_gdt(id, gdt_addr);
>  }
> 
> diff --git a/arch/x86/include/asm/global_data.h
> b/arch/x86/include/asm/global_data.h index 908a02c..8a8896e 100644
> --- a/arch/x86/include/asm/global_data.h
> +++ b/arch/x86/include/asm/global_data.h
> @@ -35,9 +35,11 @@
> 
>  #ifndef __ASSEMBLY__
> 
> +typedef struct global_data gd_t;
> +
>  typedef	struct global_data {
>  	/* NOTE: gd_addr MUST be first member of struct global_data! */
> -	unsigned long	gd_addr;	/* Location of Global Data */
> +	gd_t		*gd_addr;	/* Location of Global Data */
>  	bd_t		*bd;
>  	unsigned long	flags;
>  	unsigned long	baudrate;

Acked-by: Marek Vasut <marex@denx.de>

Best regards,
Marek Vasut

^ permalink raw reply	[flat|nested] 20+ messages in thread

* [U-Boot] [PATCH 0/5] Various x86 patches
  2012-04-29 12:31   ` Graeme Russ
@ 2012-11-28  1:13     ` Simon Glass
  0 siblings, 0 replies; 20+ messages in thread
From: Simon Glass @ 2012-11-28  1:13 UTC (permalink / raw)
  To: u-boot

Hi,

On Sun, Apr 29, 2012 at 5:31 AM, Graeme Russ <graeme.russ@gmail.com> wrote:
> Hi Andy,
>
> On 04/29/2012 10:25 PM, Andy Pont wrote:
>> Hi Graeme,
>>
>>> Graeme Russ (5):
>>>   x86: Fix compilation on 64-built built machines
>>
>> Shouldn't this be 64-bit build machines?
>
> Yep - Thanks

I found this series in patchwork so am bringing it into x86/next.

I updated it as above.

Regards,
Simon

>
> Regards,
>
> Graeme
> _______________________________________________
> U-Boot mailing list
> U-Boot at lists.denx.de
> http://lists.denx.de/mailman/listinfo/u-boot

^ permalink raw reply	[flat|nested] 20+ messages in thread

* [U-Boot] [PATCH 4/5] x86: Remove duplicate PCI init
  2012-04-29 12:00 ` [U-Boot] [PATCH 4/5] x86: Remove duplicate PCI init Graeme Russ
@ 2012-11-28  1:15   ` Simon Glass
  0 siblings, 0 replies; 20+ messages in thread
From: Simon Glass @ 2012-11-28  1:15 UTC (permalink / raw)
  To: u-boot

On Sun, Apr 29, 2012 at 5:00 AM, Graeme Russ <graeme.russ@gmail.com> wrote:
>
> Signed-off-by: Graeme Russ <graeme.russ@gmail.com>

Applied to x86/next.

^ permalink raw reply	[flat|nested] 20+ messages in thread

* [U-Boot] [PATCH 3/5] x86: Put global data on the stack
  2012-04-29 12:00 ` [U-Boot] [PATCH 3/5] x86: Put global data on the stack Graeme Russ
@ 2012-11-28  1:17   ` Simon Glass
  0 siblings, 0 replies; 20+ messages in thread
From: Simon Glass @ 2012-11-28  1:17 UTC (permalink / raw)
  To: u-boot

Hi Graham,

On Sun, Apr 29, 2012 at 5:00 AM, Graeme Russ <graeme.russ@gmail.com> wrote:
> Putting global data on the stack simplifies the init process (and makes it
> slightly quicker). During the 'flash' stage of the init sequence, global
> data is in the CAR stack. After SDRAM is initialised, global data is copied
> from CAR to the SDRAM stack
>
> Signed-off-by: Graeme Russ <graeme.russ@gmail.com>

As it is this changes breaks coreboot. It just needs the CAR defines
added to coreboot.h also, so I have done this and pulled it into
x86/next. I hope that is ok.

Regards,
Simon

^ permalink raw reply	[flat|nested] 20+ messages in thread

* [U-Boot] [PATCH 2/5] x86: Forward declate gd_t
  2012-04-30  2:23   ` Marek Vasut
@ 2012-11-28  1:28     ` Simon Glass
  2012-11-28  1:29       ` Marek Vasut
  0 siblings, 1 reply; 20+ messages in thread
From: Simon Glass @ 2012-11-28  1:28 UTC (permalink / raw)
  To: u-boot

Hi,

On Sun, Apr 29, 2012 at 7:23 PM, Marek Vasut <marex@denx.de> wrote:
> Dear Graeme Russ,
>
>> So it can be used as a type in struct global_data and remove an ugly
>> typecast
>>
>> Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
>> ---
>>  arch/x86/cpu/cpu.c                 |    2 +-
>>  arch/x86/include/asm/global_data.h |    4 +++-
>>  2 files changed, 4 insertions(+), 2 deletions(-)

I had to modify this slightly to get it to build (added the same cast
fix to sdram.c as you did to cpu.c). Then, applied to x86/next.

Regards,
Simon

^ permalink raw reply	[flat|nested] 20+ messages in thread

* [U-Boot] [PATCH 2/5] x86: Forward declate gd_t
  2012-11-28  1:28     ` Simon Glass
@ 2012-11-28  1:29       ` Marek Vasut
  2012-11-28  1:31         ` Simon Glass
  0 siblings, 1 reply; 20+ messages in thread
From: Marek Vasut @ 2012-11-28  1:29 UTC (permalink / raw)
  To: u-boot

Dear Simon Glass,

> Hi,
> 
> On Sun, Apr 29, 2012 at 7:23 PM, Marek Vasut <marex@denx.de> wrote:
> > Dear Graeme Russ,
> > 
> >> So it can be used as a type in struct global_data and remove an ugly
> >> typecast
> >> 
> >> Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
> >> ---
> >> 
> >>  arch/x86/cpu/cpu.c                 |    2 +-
> >>  arch/x86/include/asm/global_data.h |    4 +++-
> >>  2 files changed, 4 insertions(+), 2 deletions(-)
> 
> I had to modify this slightly to get it to build (added the same cast
> fix to sdram.c as you did to cpu.c). Then, applied to x86/next.

It'd be really nice if you could possibly take over the x86 custodianship from 
Graeme, it seems this arch is rotting :(

Best regards,
Marek Vasut

^ permalink raw reply	[flat|nested] 20+ messages in thread

* [U-Boot] [PATCH 2/5] x86: Forward declate gd_t
  2012-11-28  1:29       ` Marek Vasut
@ 2012-11-28  1:31         ` Simon Glass
  2012-11-28  1:35           ` Marek Vasut
  0 siblings, 1 reply; 20+ messages in thread
From: Simon Glass @ 2012-11-28  1:31 UTC (permalink / raw)
  To: u-boot

Hi Marek,

On Tue, Nov 27, 2012 at 5:29 PM, Marek Vasut <marex@denx.de> wrote:
> Dear Simon Glass,
>
>> Hi,
>>
>> On Sun, Apr 29, 2012 at 7:23 PM, Marek Vasut <marex@denx.de> wrote:
>> > Dear Graeme Russ,
>> >
>> >> So it can be used as a type in struct global_data and remove an ugly
>> >> typecast
>> >>
>> >> Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
>> >> ---
>> >>
>> >>  arch/x86/cpu/cpu.c                 |    2 +-
>> >>  arch/x86/include/asm/global_data.h |    4 +++-
>> >>  2 files changed, 4 insertions(+), 2 deletions(-)
>>
>> I had to modify this slightly to get it to build (added the same cast
>> fix to sdram.c as you did to cpu.c). Then, applied to x86/next.
>
> It'd be really nice if you could possibly take over the x86 custodianship from
> Graeme, it seems this arch is rotting :(

Your wish is my command :-)

Regards,
Simon

>
> Best regards,
> Marek Vasut

^ permalink raw reply	[flat|nested] 20+ messages in thread

* [U-Boot] [PATCH 5/5] x86: Add ilog2 to bitops
  2012-04-29 12:00 ` [U-Boot] [PATCH 5/5] x86: Add ilog2 to bitops Graeme Russ
@ 2012-11-28  1:32   ` Simon Glass
  0 siblings, 0 replies; 20+ messages in thread
From: Simon Glass @ 2012-11-28  1:32 UTC (permalink / raw)
  To: u-boot

On Sun, Apr 29, 2012 at 5:00 AM, Graeme Russ <graeme.russ@gmail.com> wrote:
> ilog2 is required by AHCI driver
>
> Signed-off-by: Graeme Russ <graeme.russ@gmail.com>

Applied to x86/next.

^ permalink raw reply	[flat|nested] 20+ messages in thread

* [U-Boot] [PATCH 2/5] x86: Forward declate gd_t
  2012-11-28  1:31         ` Simon Glass
@ 2012-11-28  1:35           ` Marek Vasut
  2012-11-28  1:37             ` Graeme Russ
  0 siblings, 1 reply; 20+ messages in thread
From: Marek Vasut @ 2012-11-28  1:35 UTC (permalink / raw)
  To: u-boot

Dear Simon Glass,

> Hi Marek,
> 
> On Tue, Nov 27, 2012 at 5:29 PM, Marek Vasut <marex@denx.de> wrote:
> > Dear Simon Glass,
> > 
> >> Hi,
> >> 
> >> On Sun, Apr 29, 2012 at 7:23 PM, Marek Vasut <marex@denx.de> wrote:
> >> > Dear Graeme Russ,
> >> > 
> >> >> So it can be used as a type in struct global_data and remove an ugly
> >> >> typecast
> >> >> 
> >> >> Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
> >> >> ---
> >> >> 
> >> >>  arch/x86/cpu/cpu.c                 |    2 +-
> >> >>  arch/x86/include/asm/global_data.h |    4 +++-
> >> >>  2 files changed, 4 insertions(+), 2 deletions(-)
> >> 
> >> I had to modify this slightly to get it to build (added the same cast
> >> fix to sdram.c as you did to cpu.c). Then, applied to x86/next.
> > 
> > It'd be really nice if you could possibly take over the x86 custodianship
> > from Graeme, it seems this arch is rotting :(
> 
> Your wish is my command :-)

Not so fast, this stuff is better discussed with both of those guys (CCed)

Best regards,
Marek Vasut

^ permalink raw reply	[flat|nested] 20+ messages in thread

* [U-Boot] [PATCH 1/5] x86: Fix compilation on 64-built built machines
  2012-04-29 12:00 ` [U-Boot] [PATCH 1/5] x86: Fix compilation on 64-built built machines Graeme Russ
@ 2012-11-28  1:35   ` Simon Glass
  0 siblings, 0 replies; 20+ messages in thread
From: Simon Glass @ 2012-11-28  1:35 UTC (permalink / raw)
  To: u-boot

Hi,

On Sun, Apr 29, 2012 at 5:00 AM, Graeme Russ <graeme.russ@gmail.com> wrote:
>
> Signed-off-by: Graeme Russ <graeme.russ@gmail.com>

I have updated the commit subject and applied to x86/next.

Regards,
Simon

^ permalink raw reply	[flat|nested] 20+ messages in thread

* [U-Boot] [PATCH 2/5] x86: Forward declate gd_t
  2012-11-28  1:35           ` Marek Vasut
@ 2012-11-28  1:37             ` Graeme Russ
  2012-11-28  1:44               ` Marek Vasut
  0 siblings, 1 reply; 20+ messages in thread
From: Graeme Russ @ 2012-11-28  1:37 UTC (permalink / raw)
  To: u-boot

Hi Marek,

On Wed, Nov 28, 2012 at 12:35 PM, Marek Vasut <marex@denx.de> wrote:

> Dear Simon Glass,
>
> > Hi Marek,
> >
> > On Tue, Nov 27, 2012 at 5:29 PM, Marek Vasut <marex@denx.de> wrote:
> > > Dear Simon Glass,
> > >
> > >> Hi,
> > >>
> > >> On Sun, Apr 29, 2012 at 7:23 PM, Marek Vasut <marex@denx.de> wrote:
> > >> > Dear Graeme Russ,
> > >> >
> > >> >> So it can be used as a type in struct global_data and remove an
> ugly
> > >> >> typecast
> > >> >>
> > >> >> Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
> > >> >> ---
> > >> >>
> > >> >>  arch/x86/cpu/cpu.c                 |    2 +-
> > >> >>  arch/x86/include/asm/global_data.h |    4 +++-
> > >> >>  2 files changed, 4 insertions(+), 2 deletions(-)
> > >>
> > >> I had to modify this slightly to get it to build (added the same cast
> > >> fix to sdram.c as you did to cpu.c). Then, applied to x86/next.
> > >
> > > It'd be really nice if you could possibly take over the x86
> custodianship
> > > from Graeme, it seems this arch is rotting :(
> >
> > Your wish is my command :-)
>
> Not so fast, this stuff is better discussed with both of those guys (CCed)
>
> You've either had too much beer or too little sleep (or both) - Simon took
over several weeks ago :)

Regards,

Graeme

^ permalink raw reply	[flat|nested] 20+ messages in thread

* [U-Boot] [PATCH 2/5] x86: Forward declate gd_t
  2012-11-28  1:37             ` Graeme Russ
@ 2012-11-28  1:44               ` Marek Vasut
  0 siblings, 0 replies; 20+ messages in thread
From: Marek Vasut @ 2012-11-28  1:44 UTC (permalink / raw)
  To: u-boot

Dear Graeme Russ,

> Hi Marek,
> 
> On Wed, Nov 28, 2012 at 12:35 PM, Marek Vasut <marex@denx.de> wrote:
> > Dear Simon Glass,
> > 
> > > Hi Marek,
> > > 
> > > On Tue, Nov 27, 2012 at 5:29 PM, Marek Vasut <marex@denx.de> wrote:
> > > > Dear Simon Glass,
> > > > 
> > > >> Hi,
> > > >> 
> > > >> On Sun, Apr 29, 2012 at 7:23 PM, Marek Vasut <marex@denx.de> wrote:
> > > >> > Dear Graeme Russ,
> > > >> > 
> > > >> >> So it can be used as a type in struct global_data and remove an
> > 
> > ugly
> > 
> > > >> >> typecast
> > > >> >> 
> > > >> >> Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
> > > >> >> ---
> > > >> >> 
> > > >> >>  arch/x86/cpu/cpu.c                 |    2 +-
> > > >> >>  arch/x86/include/asm/global_data.h |    4 +++-
> > > >> >>  2 files changed, 4 insertions(+), 2 deletions(-)
> > > >> 
> > > >> I had to modify this slightly to get it to build (added the same
> > > >> cast fix to sdram.c as you did to cpu.c). Then, applied to
> > > >> x86/next.
> > > > 
> > > > It'd be really nice if you could possibly take over the x86
> > 
> > custodianship
> > 
> > > > from Graeme, it seems this arch is rotting :(
> > > 
> > > Your wish is my command :-)
> > 
> > Not so fast, this stuff is better discussed with both of those guys
> > (CCed)
> > 
> > You've either had too much beer or too little sleep (or both) - Simon
> > took
> 
> over several weeks ago :)

I completely missed that, sorry :-(

Best regards,
Marek Vasut

^ permalink raw reply	[flat|nested] 20+ messages in thread

end of thread, other threads:[~2012-11-28  1:44 UTC | newest]

Thread overview: 20+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-04-29 12:00 [U-Boot] [PATCH 0/5] Various x86 patches Graeme Russ
2012-04-29 12:00 ` [U-Boot] [PATCH 1/5] x86: Fix compilation on 64-built built machines Graeme Russ
2012-11-28  1:35   ` Simon Glass
2012-04-29 12:00 ` [U-Boot] [PATCH 2/5] x86: Forward declate gd_t Graeme Russ
2012-04-30  2:23   ` Marek Vasut
2012-11-28  1:28     ` Simon Glass
2012-11-28  1:29       ` Marek Vasut
2012-11-28  1:31         ` Simon Glass
2012-11-28  1:35           ` Marek Vasut
2012-11-28  1:37             ` Graeme Russ
2012-11-28  1:44               ` Marek Vasut
2012-04-29 12:00 ` [U-Boot] [PATCH 3/5] x86: Put global data on the stack Graeme Russ
2012-11-28  1:17   ` Simon Glass
2012-04-29 12:00 ` [U-Boot] [PATCH 4/5] x86: Remove duplicate PCI init Graeme Russ
2012-11-28  1:15   ` Simon Glass
2012-04-29 12:00 ` [U-Boot] [PATCH 5/5] x86: Add ilog2 to bitops Graeme Russ
2012-11-28  1:32   ` Simon Glass
2012-04-29 12:25 ` [U-Boot] [PATCH 0/5] Various x86 patches Andy Pont
     [not found] ` <4f9d32e6.810c320a.69b0.01ddSMTPIN_ADDED@mx.google.com>
2012-04-29 12:31   ` Graeme Russ
2012-11-28  1:13     ` Simon Glass

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.