[U-Boot] [Patch V2 3/3] armv8/fsl-layerscape: fdt: add fixup for fman

Gong Qianyu
2016-01-22T12:07:55Z

Add fdt fixup for Fman clock and inserting Fman ucode blob
into the device tree.

Signed-off-by: Gong Qianyu <Qianyu.Gong@nxp.com>
---
V2:
- Removed the duplicated function.

arch/arm/cpu/armv8/fsl-layerscape/fdt.c | 14 ++++++++++++++
1 file changed, 14 insertions(+)

diff --git a/arch/arm/cpu/armv8/fsl-layerscape/fdt.c b/arch/arm/cpu/armv8/fsl-layerscape/fdt.c
index eafdd71..8a6b694 100644
--- a/arch/arm/cpu/armv8/fsl-layerscape/fdt.c
+++ b/arch/arm/cpu/armv8/fsl-layerscape/fdt.c
@@ -8,12 +8,16 @@
#include <libfdt.h>
#include <fdt_support.h>
#include <phy.h>
+#include <asm/arch/speed.h>
#ifdef CONFIG_FSL_LSCH3
#include <asm/arch/fdt.h>
#endif
#ifdef CONFIG_FSL_ESDHC
#include <fsl_esdhc.h>
#endif
+#ifdef CONFIG_SYS_DPAA_FMAN
+#include <fsl_fman.h>
+#endif
#ifdef CONFIG_MP
#include <asm/arch/mp.h>
#endif
@@ -181,6 +185,10 @@ static void fdt_fixup_smmu(void *blob)

void ft_cpu_setup(void *blob, bd_t *bd)
{
+ struct sys_info sysinfo;
+
+ get_sys_info(&sysinfo);
+
#ifdef CONFIG_MP
ft_fixup_cpu(blob);
#endif
@@ -201,4 +209,10 @@ void ft_cpu_setup(void *blob, bd_t *bd)
#ifdef CONFIG_FSL_LSCH3
fdt_fixup_smmu(blob);
#endif
+
+#ifdef CONFIG_SYS_DPAA_FMAN
+ do_fixup_by_compat_u32(blob, "fsl,fman",
+ "clock-frequency", sysinfo.freq_fman[0], 1);
+ fdt_fixup_fman_firmware(blob);
+#endif
}
--
2.1.0.27.g96db324