diff options
Diffstat (limited to 'arch/arm')
| -rw-r--r-- | arch/arm/cpu/armv7/mx6/soc.c | 14 | ||||
| -rw-r--r-- | arch/arm/include/asm/arch-mx6/imx-regs.h | 2 | 
2 files changed, 9 insertions, 7 deletions
| diff --git a/arch/arm/cpu/armv7/mx6/soc.c b/arch/arm/cpu/armv7/mx6/soc.c index 5a6f9e29d..60044bb5b 100644 --- a/arch/arm/cpu/armv7/mx6/soc.c +++ b/arch/arm/cpu/armv7/mx6/soc.c @@ -70,13 +70,15 @@ void imx_get_mac_from_fuse(int dev_id, unsigned char *mac)  	struct fuse_bank4_regs *fuse =  			(struct fuse_bank4_regs *)bank->fuse_regs; -	u32 mac_lo = readl(&fuse->mac_addr_low); -	u32 mac_hi = readl(&fuse->mac_addr_high); +	u32 value = readl(&fuse->mac_addr_high); +	mac[0] = (value >> 8); +	mac[1] = value ; -	*(u32 *)mac = mac_lo; - -	mac[4] = mac_hi & 0xff; -	mac[5] = (mac_hi >> 8) & 0xff; +	value = readl(&fuse->mac_addr_low); +	mac[2] = value >> 24 ; +	mac[3] = value >> 16 ; +	mac[4] = value >> 8 ; +	mac[5] = value ;  }  #endif diff --git a/arch/arm/include/asm/arch-mx6/imx-regs.h b/arch/arm/include/asm/arch-mx6/imx-regs.h index dfec6b0b9..8e452a86e 100644 --- a/arch/arm/include/asm/arch-mx6/imx-regs.h +++ b/arch/arm/include/asm/arch-mx6/imx-regs.h @@ -214,7 +214,7 @@ struct iim_regs {  	u32     crc_value;  	u32     rsvd6[3];  	u32     version; -	u32     rsvd7[0xd8]; +	u32     rsvd7[0xdb];  	struct fuse_bank {  		u32	fuse_regs[0x20]; |