From 1866368a8ab8cacf73aa47f67138040d5620439d Mon Sep 17 00:00:00 2001 From: Yutang Jiang Date: Sat, 24 Dec 2016 01:11:32 +0800 Subject: layerscape: add ls1088ardb device support LS1088A is an ARMv8 implementation combining eight ARM A53 processor cores. The LS1088ARDB is an evaluatoin platform that supports the LS1088A family SoCs. Features summary: - Eight 64-bit ARM v8 Cortex-A53 CPUs - Data path acceleration architecture 2.0 (DPAA2) - Ethernet interfaces - QUADSPI flash, 3 PCIe, 2 USB, 1 SD, 2 DUARTs etc Signed-off-by: Yutang Jiang --- .../7217-dpaa2-evb-Add-object-version-check.patch | 43 ++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 target/linux/layerscape/patches-4.4/7217-dpaa2-evb-Add-object-version-check.patch (limited to 'target/linux/layerscape/patches-4.4/7217-dpaa2-evb-Add-object-version-check.patch') diff --git a/target/linux/layerscape/patches-4.4/7217-dpaa2-evb-Add-object-version-check.patch b/target/linux/layerscape/patches-4.4/7217-dpaa2-evb-Add-object-version-check.patch new file mode 100644 index 0000000000..13d61cfb5f --- /dev/null +++ b/target/linux/layerscape/patches-4.4/7217-dpaa2-evb-Add-object-version-check.patch @@ -0,0 +1,43 @@ +From 213c59501bbd6da8c56e95f90f8a8c6af2682002 Mon Sep 17 00:00:00 2001 +From: Razvan Stefanescu +Date: Thu, 18 Feb 2016 10:54:40 +0200 +Subject: [PATCH 217/226] dpaa2-evb: Add object version check + +Abort probing if DPDMUX object version is smaller than required. + +Signed-off-by: Razvan Stefanescu +--- + drivers/staging/fsl-dpaa2/evb/evb.c | 15 +++++++++++++++ + 1 file changed, 15 insertions(+) + +--- a/drivers/staging/fsl-dpaa2/evb/evb.c ++++ b/drivers/staging/fsl-dpaa2/evb/evb.c +@@ -44,6 +44,10 @@ + #include "dpdmux.h" + #include "dpdmux-cmd.h" + ++/* Minimal supported DPDMUX version */ ++#define DPDMUX_MIN_VER_MAJOR 5 ++#define DPDMUX_MIN_VER_MINOR 0 ++ + /* IRQ index */ + #define DPDMUX_MAX_IRQ_NUM 2 + +@@ -1004,6 +1008,17 @@ static int evb_init(struct fsl_mc_device + goto err_close; + } + ++ /* Minimum supported DPDMUX version check */ ++ if (priv->attr.version.major < DPDMUX_MIN_VER_MAJOR || ++ (priv->attr.version.major == DPDMUX_MIN_VER_MAJOR && ++ priv->attr.version.minor < DPDMUX_MIN_VER_MINOR)) { ++ dev_err(dev, "DPDMUX version %d.%d not supported. Use %d.%d or greater.\n", ++ priv->attr.version.major, priv->attr.version.minor, ++ DPDMUX_MIN_VER_MAJOR, DPDMUX_MIN_VER_MAJOR); ++ err = -ENOTSUPP; ++ goto err_close; ++ } ++ + err = dpdmux_reset(priv->mc_io, 0, priv->mux_handle); + if (unlikely(err)) { + dev_err(dev, "dpdmux_reset err %d\n", err); -- cgit v1.2.3