On Wed, 2016-10-26 at 10:01 -0400, Roy Pledge wrote: > Add support for device tree fixup for the DPAA1 QBMan nodes in ARM platforms > > Signed-off-by: Roy Pledge <[email protected]> > --- > arch/arm/cpu/armv8/fsl-layerscape/fdt.c | 89 > ++++++++++++++++++++ > .../arm/cpu/armv8/fsl-layerscape/fsl_lsch2_speed.c | 3 + > .../include/asm/arch-fsl-layerscape/immap_lsch2.h | 2 + > include/configs/ls1043a_common.h | 2 + > 4 files changed, 96 insertions(+) > > diff --git a/arch/arm/cpu/armv8/fsl-layerscape/fdt.c > b/arch/arm/cpu/armv8/fsl-layerscape/fdt.c > index 1a8321b..aedf0e7 100644 > --- a/arch/arm/cpu/armv8/fsl-layerscape/fdt.c > +++ b/arch/arm/cpu/armv8/fsl-layerscape/fdt.c > @@ -25,6 +25,8 @@ > #ifdef CONFIG_ARMV8_SEC_FIRMWARE_SUPPORT > #include <asm/armv8/sec_firmware.h> > #endif > +#include <asm/io.h> > +#include <asm/arch/speed.h> > > int fdt_fixup_phy_connection(void *blob, int offset, phy_interface_t phyc) > { > @@ -32,6 +34,80 @@ int fdt_fixup_phy_connection(void *blob, int offset, > phy_interface_t phyc) > phy_string_for_interface(phyc)); > } > > +#if defined(CONFIG_SYS_DPAA_QBMAN) > + > +#define BMAN_IP_REV_1 0xBF8 > +#define BMAN_IP_REV_2 0xBFC > +void fdt_fixup_bportals(void *blob) > +{ > + int off, err; > + unsigned int maj, min; > + unsigned int ip_cfg; > + > + u32 rev_1 = in_be32(CONFIG_SYS_FSL_BMAN_ADDR + BMAN_IP_REV_1); > + u32 rev_2 = in_be32(CONFIG_SYS_FSL_BMAN_ADDR + BMAN_IP_REV_2); > + char compat[64]; > + int compat_len; > + > + maj = (rev_1 >> 8) & 0xff; > + min = rev_1 & 0xff; > + > + ip_cfg = rev_2 & 0xff; > + > + compat_len = sprintf(compat, "fsl,bman-portal-%u.%u.%u", > + maj, min, ip_cfg) + 1; > + compat_len += sprintf(compat + compat_len, "fsl,bman-portal") + 1; > + > + off = fdt_node_offset_by_compatible(blob, -1, "fsl,bman-portal"); > + while (off != -FDT_ERR_NOTFOUND) { > + err = fdt_setprop(blob, off, "compatible", compat, > compat_len); > + if (err < 0) { > + printf("ERROR: unable to create props for %s: > %s\n", > + fdt_get_name(blob, off, NULL), > + fdt_strerror(err)); > + return; > + } > + > + off = fdt_node_offset_by_compatible(blob, off, > + "fsl,bman-portal"); > + } > +}
Please share code with PPC rather than duplicating it. -Scott _______________________________________________ U-Boot mailing list [email protected] http://lists.denx.de/mailman/listinfo/u-boot

