1*4882a593Smuzhiyun /* Copyright 2013-2015 Freescale Semiconductor Inc. 2*4882a593Smuzhiyun * 3*4882a593Smuzhiyun * SPDX-License-Identifier: GPL-2.0+ 4*4882a593Smuzhiyun */ 5*4882a593Smuzhiyun #ifndef __FSL_DPMNG_H 6*4882a593Smuzhiyun #define __FSL_DPMNG_H 7*4882a593Smuzhiyun 8*4882a593Smuzhiyun /* Management Complex General API 9*4882a593Smuzhiyun * Contains general API for the Management Complex firmware 10*4882a593Smuzhiyun */ 11*4882a593Smuzhiyun 12*4882a593Smuzhiyun struct fsl_mc_io; 13*4882a593Smuzhiyun 14*4882a593Smuzhiyun /** 15*4882a593Smuzhiyun * Management Complex firmware version information 16*4882a593Smuzhiyun */ 17*4882a593Smuzhiyun #define MC_VER_MAJOR 9 18*4882a593Smuzhiyun #define MC_VER_MINOR 0 19*4882a593Smuzhiyun 20*4882a593Smuzhiyun /** 21*4882a593Smuzhiyun * struct mc_versoin 22*4882a593Smuzhiyun * @major: Major version number: incremented on API compatibility changes 23*4882a593Smuzhiyun * @minor: Minor version number: incremented on API additions (that are 24*4882a593Smuzhiyun * backward compatible); reset when major version is incremented 25*4882a593Smuzhiyun * @revision: Internal revision number: incremented on implementation changes 26*4882a593Smuzhiyun * and/or bug fixes that have no impact on API 27*4882a593Smuzhiyun */ 28*4882a593Smuzhiyun struct mc_version { 29*4882a593Smuzhiyun uint32_t major; 30*4882a593Smuzhiyun uint32_t minor; 31*4882a593Smuzhiyun uint32_t revision; 32*4882a593Smuzhiyun }; 33*4882a593Smuzhiyun 34*4882a593Smuzhiyun /** 35*4882a593Smuzhiyun * mc_get_version() - Retrieves the Management Complex firmware 36*4882a593Smuzhiyun * version information 37*4882a593Smuzhiyun * @mc_io: Pointer to opaque I/O object 38*4882a593Smuzhiyun * @cmd_flags: Command flags; one or more of 'MC_CMD_FLAG_' 39*4882a593Smuzhiyun * @mc_ver_info: Returned version information structure 40*4882a593Smuzhiyun * 41*4882a593Smuzhiyun * Return: '0' on Success; Error code otherwise. 42*4882a593Smuzhiyun */ 43*4882a593Smuzhiyun int mc_get_version(struct fsl_mc_io *mc_io, 44*4882a593Smuzhiyun uint32_t cmd_flags, 45*4882a593Smuzhiyun struct mc_version *mc_ver_info); 46*4882a593Smuzhiyun 47*4882a593Smuzhiyun #endif /* __FSL_DPMNG_H */ 48