New upstream version 18.11-rc1
[deb_dpdk.git] / drivers / bus / fslmc / mc / fsl_dpmng.h
1 /* SPDX-License-Identifier: (BSD-3-Clause OR GPL-2.0)
2  *
3  * Copyright 2013-2015 Freescale Semiconductor Inc.
4  * Copyright 2017 NXP
5  *
6  */
7 #ifndef __FSL_DPMNG_H
8 #define __FSL_DPMNG_H
9
10 /*
11  * Management Complex General API
12  * Contains general API for the Management Complex firmware
13  */
14
15 struct fsl_mc_io;
16
17 /**
18  * Management Complex firmware version information
19  */
20 #define MC_VER_MAJOR 10
21 #define MC_VER_MINOR 10
22
23 /**
24  * struct mc_version
25  * @major: Major version number: incremented on API compatibility changes
26  * @minor: Minor version number: incremented on API additions (that are
27  *              backward compatible); reset when major version is incremented
28  * @revision: Internal revision number: incremented on implementation changes
29  *              and/or bug fixes that have no impact on API
30  */
31 struct mc_version {
32         uint32_t major;
33         uint32_t minor;
34         uint32_t revision;
35 };
36
37 int mc_get_version(struct fsl_mc_io *mc_io,
38                    uint32_t cmd_flags,
39                    struct mc_version *mc_ver_info);
40
41 /**
42  * struct mc_platform
43  * @svr:        System version (content of platform SVR register)
44  * @pvr:        Processor version (content of platform PVR register)
45  */
46 struct mc_soc_version {
47         uint32_t svr;
48         uint32_t pvr;
49 };
50
51 int mc_get_soc_version(struct fsl_mc_io *mc_io,
52                        uint32_t cmd_flags,
53                        struct mc_soc_version *mc_platform_info);
54 #endif /* __FSL_DPMNG_H */