staging: fsl-mc: uprev dpmng binary interface to v8.0
Add cmd_flags parameter to all dpmng APIs to comply with 8.0 MC firmware interface. Updated MC version major number. Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Родитель
e860466906
Коммит
4057743564
|
@ -34,14 +34,17 @@
|
||||||
#include "../include/dpmng.h"
|
#include "../include/dpmng.h"
|
||||||
#include "dpmng-cmd.h"
|
#include "dpmng-cmd.h"
|
||||||
|
|
||||||
int mc_get_version(struct fsl_mc_io *mc_io, struct mc_version *mc_ver_info)
|
int mc_get_version(struct fsl_mc_io *mc_io,
|
||||||
|
uint32_t cmd_flags,
|
||||||
|
struct mc_version *mc_ver_info)
|
||||||
{
|
{
|
||||||
struct mc_command cmd = { 0 };
|
struct mc_command cmd = { 0 };
|
||||||
int err;
|
int err;
|
||||||
|
|
||||||
/* prepare command */
|
/* prepare command */
|
||||||
cmd.header = mc_encode_cmd_header(DPMNG_CMDID_GET_VERSION,
|
cmd.header = mc_encode_cmd_header(DPMNG_CMDID_GET_VERSION,
|
||||||
MC_CMD_PRI_LOW, 0);
|
cmd_flags,
|
||||||
|
0);
|
||||||
|
|
||||||
/* send command to mc*/
|
/* send command to mc*/
|
||||||
err = mc_send_command(mc_io, &cmd);
|
err = mc_send_command(mc_io, &cmd);
|
||||||
|
@ -56,14 +59,17 @@ int mc_get_version(struct fsl_mc_io *mc_io, struct mc_version *mc_ver_info)
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
int dpmng_get_container_id(struct fsl_mc_io *mc_io, int *container_id)
|
int dpmng_get_container_id(struct fsl_mc_io *mc_io,
|
||||||
|
uint32_t cmd_flags,
|
||||||
|
int *container_id)
|
||||||
{
|
{
|
||||||
struct mc_command cmd = { 0 };
|
struct mc_command cmd = { 0 };
|
||||||
int err;
|
int err;
|
||||||
|
|
||||||
/* prepare command */
|
/* prepare command */
|
||||||
cmd.header = mc_encode_cmd_header(DPMNG_CMDID_GET_CONT_ID,
|
cmd.header = mc_encode_cmd_header(DPMNG_CMDID_GET_CONT_ID,
|
||||||
MC_CMD_PRI_LOW, 0);
|
cmd_flags,
|
||||||
|
0);
|
||||||
|
|
||||||
/* send command to mc*/
|
/* send command to mc*/
|
||||||
err = mc_send_command(mc_io, &cmd);
|
err = mc_send_command(mc_io, &cmd);
|
||||||
|
|
|
@ -630,7 +630,7 @@ static int fsl_mc_bus_probe(struct platform_device *pdev)
|
||||||
if (error < 0)
|
if (error < 0)
|
||||||
return error;
|
return error;
|
||||||
|
|
||||||
error = mc_get_version(mc_io, &mc_version);
|
error = mc_get_version(mc_io, 0, &mc_version);
|
||||||
if (error != 0) {
|
if (error != 0) {
|
||||||
dev_err(&pdev->dev,
|
dev_err(&pdev->dev,
|
||||||
"mc_get_version() failed with error %d\n", error);
|
"mc_get_version() failed with error %d\n", error);
|
||||||
|
@ -661,7 +661,7 @@ static int fsl_mc_bus_probe(struct platform_device *pdev)
|
||||||
if (error < 0)
|
if (error < 0)
|
||||||
goto error_cleanup_mc_io;
|
goto error_cleanup_mc_io;
|
||||||
|
|
||||||
error = dpmng_get_container_id(mc_io, &container_id);
|
error = dpmng_get_container_id(mc_io, 0, &container_id);
|
||||||
if (error < 0) {
|
if (error < 0) {
|
||||||
dev_err(&pdev->dev,
|
dev_err(&pdev->dev,
|
||||||
"dpmng_get_container_id() failed: %d\n", error);
|
"dpmng_get_container_id() failed: %d\n", error);
|
||||||
|
|
|
@ -41,11 +41,11 @@ struct fsl_mc_io;
|
||||||
/**
|
/**
|
||||||
* Management Complex firmware version information
|
* Management Complex firmware version information
|
||||||
*/
|
*/
|
||||||
#define MC_VER_MAJOR 6
|
#define MC_VER_MAJOR 8
|
||||||
#define MC_VER_MINOR 0
|
#define MC_VER_MINOR 0
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* struct mc_versoin
|
* struct mc_version
|
||||||
* @major: Major version number: incremented on API compatibility changes
|
* @major: Major version number: incremented on API compatibility changes
|
||||||
* @minor: Minor version number: incremented on API additions (that are
|
* @minor: Minor version number: incremented on API additions (that are
|
||||||
* backward compatible); reset when major version is incremented
|
* backward compatible); reset when major version is incremented
|
||||||
|
@ -62,19 +62,25 @@ struct mc_version {
|
||||||
* mc_get_version() - Retrieves the Management Complex firmware
|
* mc_get_version() - Retrieves the Management Complex firmware
|
||||||
* version information
|
* version information
|
||||||
* @mc_io: Pointer to opaque I/O object
|
* @mc_io: Pointer to opaque I/O object
|
||||||
|
* @cmd_flags: Command flags; one or more of 'MC_CMD_FLAG_'
|
||||||
* @mc_ver_info: Returned version information structure
|
* @mc_ver_info: Returned version information structure
|
||||||
*
|
*
|
||||||
* Return: '0' on Success; Error code otherwise.
|
* Return: '0' on Success; Error code otherwise.
|
||||||
*/
|
*/
|
||||||
int mc_get_version(struct fsl_mc_io *mc_io, struct mc_version *mc_ver_info);
|
int mc_get_version(struct fsl_mc_io *mc_io,
|
||||||
|
uint32_t cmd_flags,
|
||||||
|
struct mc_version *mc_ver_info);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* dpmng_get_container_id() - Get container ID associated with a given portal.
|
* dpmng_get_container_id() - Get container ID associated with a given portal.
|
||||||
* @mc_io: Pointer to MC portal's I/O object
|
* @mc_io: Pointer to MC portal's I/O object
|
||||||
|
* @cmd_flags: Command flags; one or more of 'MC_CMD_FLAG_'
|
||||||
* @container_id: Requested container ID
|
* @container_id: Requested container ID
|
||||||
*
|
*
|
||||||
* Return: '0' on Success; Error code otherwise.
|
* Return: '0' on Success; Error code otherwise.
|
||||||
*/
|
*/
|
||||||
int dpmng_get_container_id(struct fsl_mc_io *mc_io, int *container_id);
|
int dpmng_get_container_id(struct fsl_mc_io *mc_io,
|
||||||
|
uint32_t cmd_flags,
|
||||||
|
int *container_id);
|
||||||
|
|
||||||
#endif /* __FSL_DPMNG_H */
|
#endif /* __FSL_DPMNG_H */
|
||||||
|
|
Загрузка…
Ссылка в новой задаче