Explorar o código

freescale: fman: make sure phy-handle property is big endian

When creating phy-handle property, an unsigned int value is created by
fdt_create_phandle, and memcpy is used to get the value, since DTS is
big endian, the value cannot be used directly on little endian SoCs,
it should be converted by cpu_to_fdt32.

Signed-off-by: Shaohui Xie <Shaohui.Xie@freescale.com>
Reviewed-by: York Sun <yorksun@freescale.com>
Shaohui Xie %!s(int64=9) %!d(string=hai) anos
pai
achega
1aaf3f9ae4
Modificáronse 1 ficheiros con 2 adicións e 0 borrados
  1. 2 0
      board/freescale/common/fman.c

+ 2 - 0
board/freescale/common/fman.c

@@ -52,6 +52,8 @@ int fdt_set_phy_handle(void *fdt, char *compat, phys_addr_t addr,
 	if (!ph)
 		return -FDT_ERR_BADPHANDLE;
 
+	ph = cpu_to_fdt32(ph);
+
 	offset = fdt_node_offset_by_compat_reg(fdt, compat, addr);
 	if (offset < 0)
 		return offset;