diff options
author | Scott Wood <scottwood@freescale.com> | 2013-05-17 20:01:54 -0500 |
---|---|---|
committer | Wolfgang Denk <wd@denx.de> | 2013-06-11 22:01:45 +0200 |
commit | a166fbca20e40937bf37cc18c389f68e995c1821 (patch) | |
tree | ca90c9999014f7172aefabf257c9c0d2533aecf4 /examples/standalone/mem_to_mem_idma2intr.c | |
parent | e1208c2fe5e07f9a248cfbf9bbb212aa34ad2806 (diff) | |
download | u-boot-a166fbca20e40937bf37cc18c389f68e995c1821.zip u-boot-a166fbca20e40937bf37cc18c389f68e995c1821.tar.gz u-boot-a166fbca20e40937bf37cc18c389f68e995c1821.tar.bz2 |
powerpc: fix 8xx and 82xx type-punning warnings with GCC 4.7
C99's strict aliasing rules are insane to use in low-level code such as a
bootloader, but as Wolfgang has rejected -fno-strict-aliasing in the
past, add a union so that 16-bit accesses can be performed.
Compile-tested only.
Signed-off-by: Scott Wood <scottwood@freescale.com>
Acked-by: Wolfgang Denk <wd@denx.de>
Diffstat (limited to 'examples/standalone/mem_to_mem_idma2intr.c')
-rw-r--r-- | examples/standalone/mem_to_mem_idma2intr.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/examples/standalone/mem_to_mem_idma2intr.c b/examples/standalone/mem_to_mem_idma2intr.c index e466c90..215dc22 100644 --- a/examples/standalone/mem_to_mem_idma2intr.c +++ b/examples/standalone/mem_to_mem_idma2intr.c @@ -309,7 +309,8 @@ int idma_init (void) memaddr = dpalloc (sizeof (pram_idma_t), 64); - *(volatile ushort *) &immap->im_dprambase[PROFF_IDMA2_BASE] = memaddr; + *(volatile u16 *)&immap->im_dprambase16 + [PROFF_IDMA2_BASE / sizeof(u16)] = memaddr; piptr = (volatile pram_idma_t *) ((uint) (immap) + memaddr); piptr->pi_resv1 = 0; /* manual says: clear it */ |