fmlib: add powerpc e6500 support
authorMatt Weber <matthew.weber@rockwellcollins.com>
Wed, 18 May 2016 13:41:26 +0000 (08:41 -0500)
committerThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Sun, 12 Jun 2016 20:20:12 +0000 (22:20 +0200)
Signed-off-by: Matt Weber <matthew.weber@rockwellcollins.com>
Signed-off-by: Ronak Desai <ronak.desai@rockwellcollins.com>
[Thomas: remove existing definition of FMLIB_ARCHTYPE in the .mk file,
change QORIQ to QorIQ.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
package/fmlib/Config.in
package/fmlib/fmlib.mk

index 3cc6a2b7af94b8d34d848fd172f984eb4f4c802a..d399cabe2aaf9a99e6f62f9db8c5c3d3e8622b12 100644 (file)
@@ -1,10 +1,10 @@
 comment "fmlib needs a Linux kernel to be built"
-       depends on BR2_powerpc_e500mc
+       depends on BR2_powerpc_e500mc || BR2_powerpc_e6500
        depends on !BR2_LINUX_KERNEL
 
 config BR2_PACKAGE_FMLIB
        bool "fmlib"
-       depends on BR2_powerpc_e500mc
+       depends on BR2_powerpc_e500mc || BR2_powerpc_e6500
        depends on BR2_LINUX_KERNEL
        help
          The Frame Manager library provides Freescale PowerPC platforms an
@@ -13,3 +13,37 @@ config BR2_PACKAGE_FMLIB
          parameters and PCD (parse - classify - distribute) rules.
 
          http://git.freescale.com/git/cgit.cgi/ppc/sdk/fmlib.git/tree/README
+
+if BR2_PACKAGE_FMLIB
+choice
+       prompt "QorIQ Target Family"
+       help
+         Select the family of QorIQ processor.
+
+config BR2_FMLIB_QORIQ_FAMILY_P4080
+       bool "p40xx"
+       depends on BR2_powerpc_e500mc
+
+config BR2_FMLIB_QORIQ_FAMILY_T4240
+       bool "t42xx"
+       depends on BR2_powerpc_e500mc
+
+config BR2_FMLIB_QORIQ_FAMILY_T2080
+       bool "t208x"
+       depends on BR2_powerpc_e6500
+
+endchoice
+
+config BR2_PACKAGE_FMLIB_ARCHTYPE
+       string
+       default "e500mc" if BR2_powerpc_e500mc
+       default "ppc64e6500" if BR2_powerpc_e6500 && BR2_powerpc64
+       default "ppc32e6500" if BR2_powerpc_e6500 && BR2_powerpc
+
+config BR2_PACKAGE_FMLIB_PLATFORM
+       string
+       default "P4080" if BR2_FMLIB_QORIQ_FAMILY_P4080
+       default "T4240" if BR2_FMLIB_QORIQ_FAMILY_T4240
+       default "FMAN_V3H" if BR2_FMLIB_QORIQ_FAMILY_T2080
+
+endif
index 6b154d0a3861ea7e9ac445ecf404fd6177cbab2b..ede441551adb536af521b2cec7751ec18f2c52d9 100644 (file)
@@ -21,15 +21,16 @@ FMLIB_MAKE_OPTS = \
        KERNEL_SRC="$(LINUX_DIR)" \
        PREFIX="$(STAGING_DIR)/usr"
 
-ifeq ($(BR2_powerpc_e500mc),y)
-FMLIB_ARCHTYPE = ppce500mc
-endif
+FMLIB_ARCHTYPE = $(call qstrip,$(BR2_PACKAGE_FMLIB_ARCHTYPE))
+FMLIB_PLATFORM = $(call qstrip,$(BR2_PACKAGE_FMLIB_PLATFORM))
 
 define FMLIB_BUILD_CMDS
+       $(SED) "s:P4080:$(FMLIB_PLATFORM):g" $(@D)/Makefile
        $(TARGET_MAKE_ENV) $(MAKE) $(FMLIB_MAKE_OPTS) -C $(@D) libfm-$(FMLIB_ARCHTYPE).a
 endef
 
 define FMLIB_INSTALL_STAGING_CMDS
+       rm $(STAGING_DIR)/usr/lib/libfm.a -f
        $(FMLIB_MAKE_ENV) $(MAKE) $(FMLIB_MAKE_OPTS) -C $(@D) install-libfm-$(FMLIB_ARCHTYPE)
 endef