staging: fsl-mc: add dpmcp version check
PATCH 12/14 staging: fsl-mc: add dpmcp version check
From: Itai Katz <[email protected]>
The dpmcp driver supports dpmcp version 3.0 and above. This patch adds the code to check the version.
Signed-off-by Itai Katz <[email protected]>
Signed-off-by Stuart Yoder <[email protected]>
--- drivers/staging/fsl-mc/bus/dpmcp-cmd.h | 6 +++--- drivers/staging/fsl-mc/bus/mc-allocator.c | 11 +++++++++++ 2 files changed, 14 insertions(+), 3 deletions(-)
drivers/staging/fsl-mc/bus/dpmcp-cmd.h +3 -3
@@ -32,9 +32,9 @@#ifndef _FSL_DPMCP_CMD_H#define _FSL_DPMCP_CMD_H -/* DPMCP Version */ -#define DPMCP_VER_MAJOR 3 -#define DPMCP_VER_MINOR 0 +/* Minimal supported DPMCP Version */ +#define DPMCP_MIN_VER_MAJOR 3 +#define DPMCP_MIN_VER_MINOR 0/* Command IDs */ #define DPMCP_CMDID_CLOSE 0x800
drivers/staging/fsl-mc/bus/mc-allocator.c +11 -0
@@ -310,6 +310,17 @@ int __must_check fsl_mc_portal_allocate(struct fsl_mc_device *mc_dev,if (WARN_ON (!dpmcp_dev)) goto error_cleanup_resource; +if (dpmcp_dev->obj_desc.ver_major <DPMCP_MIN_VER_MAJOR || + (dpmcp_dev->obj_desc.ver_major ==DPMCP_MIN_VER_MAJOR && + dpmcp_dev->obj_desc.ver_minor <DPMCP_MIN_VER_MINOR )) { +dev_err (&dpmcp_dev->dev, +"ERROR: Version %d.%d of DPMCP not supported.\n" , + dpmcp_dev->obj_desc.ver_major, + dpmcp_dev->obj_desc.ver_minor); + error = -ENOTSUPP ; + goto error_cleanup_resource; + } +if (WARN_ON (dpmcp_dev->obj_desc.region_count ==0 )) goto error_cleanup_resource;
Signature · 1 line
1.7.9.5