Skip to contentSkip to conversation

Revert "Align global_data to a 16-byte boundary"

PATCH New Simon Glass 3 participants 4 messages Aug 17, 2015 – Aug 18, 2015 Generic include/asm header files

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 Revert "Align global_data to a 16-byte boundary"

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.

---

 common/board_f.c                  | 1 -
 include/asm-generic/global_data.h | 3 +--
 2 files changed, 1 insertion(+), 3 deletions(-)
common/board_f.c +0 -1
index c959774..a2be577 100644
@@ -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);
include/asm-generic/global_data.h +1 -2
index cc369fc..2155265 100644
@@ -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
 
Signature · 1 line
2.5.0.276.gf5e568e
#1 lore raw

PATCH 1/1 Revert "Align global_data to a 16-byte boundary"

Quoted 7 lines · Simon Glass

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.

Applied to u-boot/master, thanks!

Signature · 8 lines
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20150817/22deda34/attachment.sig>
#2 lore raw

PATCH 1/1 Revert "Align global_data to a 16-byte boundary"

Quoted 6 lines · Tom Rini
Quoted 4 lines · Simon Glass

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?

Quoted 14 lines
Quoted 3 lines

This reverts commit 2afddae07523f23f77acd066ad1719f53d289f98.

Applied to u-boot/master, thanks!

--
Tom

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

#3 lore raw

PATCH 1/1 Revert "Align global_data to a 16-byte boundary"

Hi Sergei,

Quoted 9 lines · Sergei Temerkhanov
Quoted 6 lines · Tom Rini
Quoted 4 lines · Simon Glass

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?

Quoted 6 lines
Quoted 6 lines
Quoted 4 lines

This reverts commit 2afddae07523f23f77acd066ad1719f53d289f98.

Applied to u-boot/master, thanks!

Regards,
Simon