diff mbox

[U-Boot] Revert "Align global_data to a 16-byte boundary"

Message ID 1439825324-32224-1-git-send-email-sjg@chromium.org
State Accepted
Delegated to: Tom Rini
Headers show

Commit Message

Simon Glass Aug. 17, 2015, 3:28 p.m. UTC
This causes widespread breakage due to the operation of the low-level code
in crt0.S and cro0_64.S for ARM at least.

The fix is not complicated but it seems safer to revert this for now.

This reverts commit 2afddae07523f23f77acd066ad1719f53d289f98.
Signed-off-by: Simon Glass <sjg@chromium.org>
---

 common/board_f.c                  | 1 -
 include/asm-generic/global_data.h | 3 +--
 2 files changed, 1 insertion(+), 3 deletions(-)

Comments

Tom Rini Aug. 18, 2015, 12:53 a.m. UTC | #1
On Mon, Aug 17, 2015 at 09:28:44AM -0600, Simon Glass wrote:

> This causes widespread breakage due to the operation of the low-level code
> in crt0.S and cro0_64.S for ARM at least.
> 
> The fix is not complicated but it seems safer to revert this for now.
> 
> This reverts commit 2afddae07523f23f77acd066ad1719f53d289f98.
> Signed-off-by: Simon Glass <sjg@chromium.org>

Applied to u-boot/master, thanks!
Sergey Temerkhanov Aug. 18, 2015, 8:49 a.m. UTC | #2
On Tue, Aug 18, 2015 at 3:53 AM, Tom Rini <trini@konsulko.com> wrote:
> On Mon, Aug 17, 2015 at 09:28:44AM -0600, Simon Glass wrote:
>
>> This causes widespread breakage due to the operation of the low-level code
>> in crt0.S and cro0_64.S for ARM at least.
>>
>> The fix is not complicated but it seems safer to revert this for now.

Might it be useful to align gd on the cache line boundary?

>>
>> This reverts commit 2afddae07523f23f77acd066ad1719f53d289f98.
>> Signed-off-by: Simon Glass <sjg@chromium.org>
>
> Applied to u-boot/master, thanks!
>
> --
> Tom
>
> _______________________________________________
> U-Boot mailing list
> U-Boot@lists.denx.de
> http://lists.denx.de/mailman/listinfo/u-boot
>
Simon Glass Aug. 18, 2015, 12:44 p.m. UTC | #3
Hi Sergei,

On 18 August 2015 at 02:49, Sergei Temerkhanov <s.temerkhanov@gmail.com> wrote:
> On Tue, Aug 18, 2015 at 3:53 AM, Tom Rini <trini@konsulko.com> wrote:
>> On Mon, Aug 17, 2015 at 09:28:44AM -0600, Simon Glass wrote:
>>
>>> This causes widespread breakage due to the operation of the low-level code
>>> in crt0.S and cro0_64.S for ARM at least.
>>>
>>> The fix is not complicated but it seems safer to revert this for now.
>
> Might it be useful to align gd on the cache line boundary?

We could - I'm not sure how that would help?

>
>>>
>>> This reverts commit 2afddae07523f23f77acd066ad1719f53d289f98.
>>> Signed-off-by: Simon Glass <sjg@chromium.org>
>>
>> Applied to u-boot/master, thanks!

Regards,
Simon
diff mbox

Patch

diff --git a/common/board_f.c b/common/board_f.c
index c959774..a2be577 100644
--- a/common/board_f.c
+++ b/common/board_f.c
@@ -499,7 +499,6 @@  static int setup_machine(void)
 static int reserve_global_data(void)
 {
 	gd->start_addr_sp -= sizeof(gd_t);
-	gd->start_addr_sp &= ~0xf;
 	gd->new_gd = (gd_t *)map_sysmem(gd->start_addr_sp, sizeof(gd_t));
 	debug("Reserving %zu Bytes for Global Data at: %08lx\n",
 			sizeof(gd_t), gd->start_addr_sp);
diff --git a/include/asm-generic/global_data.h b/include/asm-generic/global_data.h
index cc369fc..2155265 100644
--- a/include/asm-generic/global_data.h
+++ b/include/asm-generic/global_data.h
@@ -99,8 +99,7 @@  typedef struct global_data {
 	int pcidelay_done;
 #endif
 	struct udevice *cur_serial_dev;	/* current serial device */
-	/* arch-specific data */
-	struct arch_global_data arch __attribute__((aligned(16)));
+	struct arch_global_data arch;	/* architecture-specific data */
 } gd_t;
 #endif