Commit afca12e3 authored by Reka Norman's avatar Reka Norman Committed by Hans Verkuil

media: cros-ec-cec: Use cros_ec_cmd to send host commands

Use the cros_ec_cmd helper function to reduce the amount of boilerplate
when sending host commands.
Signed-off-by: default avatarReka Norman <rekanorman@chromium.org>
Signed-off-by: default avatarHans Verkuil <hverkuil-cisco@xs4all.nl>
parent 89936bfb
...@@ -95,18 +95,14 @@ static int cros_ec_cec_set_log_addr(struct cec_adapter *adap, u8 logical_addr) ...@@ -95,18 +95,14 @@ static int cros_ec_cec_set_log_addr(struct cec_adapter *adap, u8 logical_addr)
{ {
struct cros_ec_cec *cros_ec_cec = adap->priv; struct cros_ec_cec *cros_ec_cec = adap->priv;
struct cros_ec_device *cros_ec = cros_ec_cec->cros_ec; struct cros_ec_device *cros_ec = cros_ec_cec->cros_ec;
struct { struct ec_params_cec_set params = {
struct cros_ec_command msg; .cmd = CEC_CMD_LOGICAL_ADDRESS,
struct ec_params_cec_set data; .val = logical_addr,
} __packed msg = {}; };
int ret; int ret;
msg.msg.command = EC_CMD_CEC_SET; ret = cros_ec_cmd(cros_ec, 0, EC_CMD_CEC_SET, &params, sizeof(params),
msg.msg.outsize = sizeof(msg.data); NULL, 0);
msg.data.cmd = CEC_CMD_LOGICAL_ADDRESS;
msg.data.val = logical_addr;
ret = cros_ec_cmd_xfer_status(cros_ec, &msg.msg);
if (ret < 0) { if (ret < 0) {
dev_err(cros_ec->dev, dev_err(cros_ec->dev,
"error setting CEC logical address on EC: %d\n", ret); "error setting CEC logical address on EC: %d\n", ret);
...@@ -121,17 +117,13 @@ static int cros_ec_cec_transmit(struct cec_adapter *adap, u8 attempts, ...@@ -121,17 +117,13 @@ static int cros_ec_cec_transmit(struct cec_adapter *adap, u8 attempts,
{ {
struct cros_ec_cec *cros_ec_cec = adap->priv; struct cros_ec_cec *cros_ec_cec = adap->priv;
struct cros_ec_device *cros_ec = cros_ec_cec->cros_ec; struct cros_ec_device *cros_ec = cros_ec_cec->cros_ec;
struct { struct ec_params_cec_write params;
struct cros_ec_command msg;
struct ec_params_cec_write data;
} __packed msg = {};
int ret; int ret;
msg.msg.command = EC_CMD_CEC_WRITE_MSG; memcpy(params.msg, cec_msg->msg, cec_msg->len);
msg.msg.outsize = cec_msg->len;
memcpy(msg.data.msg, cec_msg->msg, cec_msg->len);
ret = cros_ec_cmd_xfer_status(cros_ec, &msg.msg); ret = cros_ec_cmd(cros_ec, 0, EC_CMD_CEC_WRITE_MSG, &params,
cec_msg->len, NULL, 0);
if (ret < 0) { if (ret < 0) {
dev_err(cros_ec->dev, dev_err(cros_ec->dev,
"error writing CEC msg on EC: %d\n", ret); "error writing CEC msg on EC: %d\n", ret);
...@@ -145,18 +137,14 @@ static int cros_ec_cec_adap_enable(struct cec_adapter *adap, bool enable) ...@@ -145,18 +137,14 @@ static int cros_ec_cec_adap_enable(struct cec_adapter *adap, bool enable)
{ {
struct cros_ec_cec *cros_ec_cec = adap->priv; struct cros_ec_cec *cros_ec_cec = adap->priv;
struct cros_ec_device *cros_ec = cros_ec_cec->cros_ec; struct cros_ec_device *cros_ec = cros_ec_cec->cros_ec;
struct { struct ec_params_cec_set params = {
struct cros_ec_command msg; .cmd = CEC_CMD_ENABLE,
struct ec_params_cec_set data; .val = enable,
} __packed msg = {}; };
int ret; int ret;
msg.msg.command = EC_CMD_CEC_SET; ret = cros_ec_cmd(cros_ec, 0, EC_CMD_CEC_SET, &params, sizeof(params),
msg.msg.outsize = sizeof(msg.data); NULL, 0);
msg.data.cmd = CEC_CMD_ENABLE;
msg.data.val = enable;
ret = cros_ec_cmd_xfer_status(cros_ec, &msg.msg);
if (ret < 0) { if (ret < 0) {
dev_err(cros_ec->dev, dev_err(cros_ec->dev,
"error %sabling CEC on EC: %d\n", "error %sabling CEC on EC: %d\n",
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment