From: Prashant Malani <pmalani@chromium.org>
To: enric.balletbo@collabora.com, bleung@chromium.org
Cc: linux-kernel@vger.kernel.org, Prashant Malani <pmalani@chromium.org>
Subject: [PATCH 3/4] platform/chrome: Use send_cmd_msg in debugfs
Date: Fri, 24 Jan 2020 17:21:07 -0800 [thread overview]
Message-ID: <20200125012105.59903-4-pmalani@chromium.org> (raw)
In-Reply-To: <20200125012105.59903-1-pmalani@chromium.org>
Update Chrome EC's debugfs driver to use the cros_ec_send_cmd_msg()
wrapper instead of cros_ec_cmd_xfer_status() within the pdinfo_read()
function. This helps to remove some of the structure and buffer
definitions and some of the message buffer set up code.
Signed-off-by: Prashant Malani <pmalani@chromium.org>
---
drivers/platform/chrome/cros_ec_debugfs.c | 39 +++++++----------------
1 file changed, 12 insertions(+), 27 deletions(-)
diff --git a/drivers/platform/chrome/cros_ec_debugfs.c b/drivers/platform/chrome/cros_ec_debugfs.c
index 6ae484989d1f5..34c1c36be1c51 100644
--- a/drivers/platform/chrome/cros_ec_debugfs.c
+++ b/drivers/platform/chrome/cros_ec_debugfs.c
@@ -199,44 +199,29 @@ static ssize_t cros_ec_pdinfo_read(struct file *file,
char read_buf[EC_USB_PD_MAX_PORTS * 40], *p = read_buf;
struct cros_ec_debugfs *debug_info = file->private_data;
struct cros_ec_device *ec_dev = debug_info->ec->ec_dev;
- struct {
- struct cros_ec_command msg;
- union {
- struct ec_response_usb_pd_control_v1 resp;
- struct ec_params_usb_pd_control params;
- };
- } __packed ec_buf;
- struct cros_ec_command *msg;
- struct ec_response_usb_pd_control_v1 *resp;
- struct ec_params_usb_pd_control *params;
+ struct ec_response_usb_pd_control_v1 resp = {0};
+ struct ec_params_usb_pd_control params = {0};
int i;
- msg = &ec_buf.msg;
- params = (struct ec_params_usb_pd_control *)msg->data;
- resp = (struct ec_response_usb_pd_control_v1 *)msg->data;
-
- msg->command = EC_CMD_USB_PD_CONTROL;
- msg->version = 1;
- msg->insize = sizeof(*resp);
- msg->outsize = sizeof(*params);
-
/*
* Read status from all PD ports until failure, typically caused
* by attempting to read status on a port that doesn't exist.
*/
for (i = 0; i < EC_USB_PD_MAX_PORTS; ++i) {
- params->port = i;
- params->role = 0;
- params->mux = 0;
- params->swap = 0;
-
- if (cros_ec_cmd_xfer_status(ec_dev, msg) < 0)
+ params.port = i;
+ params.role = 0;
+ params.mux = 0;
+ params.swap = 0;
+
+ if (cros_ec_send_cmd_msg(ec_dev, 1, EC_CMD_USB_PD_CONTROL,
+ ¶ms, sizeof(params), &resp,
+ sizeof(resp)) < 0)
break;
p += scnprintf(p, sizeof(read_buf) + read_buf - p,
"p%d: %s en:%.2x role:%.2x pol:%.2x\n", i,
- resp->state, resp->enabled, resp->role,
- resp->polarity);
+ resp.state, resp.enabled, resp.role,
+ resp.polarity);
}
return simple_read_from_buffer(user_buf, count, ppos,
--
2.25.0.341.g760bfbb309-goog
next prev parent reply other threads:[~2020-01-25 1:22 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-01-25 1:21 [PATCH 0/4] Factor out cmd_xfer_status() setup code Prashant Malani
2020-01-25 1:21 ` [PATCH 1/4] platform/chrome: Add EC command msg wrapper Prashant Malani
2020-01-27 15:29 ` Enric Balletbo i Serra
2020-01-27 17:11 ` Prashant Malani
2020-01-27 20:35 ` Enric Balletbo Serra
2020-01-28 19:29 ` Prashant Malani
2020-01-28 20:57 ` Enric Balletbo Serra
2020-01-28 22:44 ` Prashant Malani
[not found] ` <CACeCKaewsKMLbO=N2hY5Gen075ZuVmSb8A=A1gQ7SWFvoF7M2w@mail.gmail.com>
2020-01-30 20:38 ` Prashant Malani
2020-01-25 1:21 ` [PATCH 2/4] platform/chrome: Make chardev use send_cmd_msg Prashant Malani
2020-01-25 1:21 ` Prashant Malani [this message]
2020-01-25 1:21 ` [PATCH 4/4] platform/chrome: Make check_features() use wrapper Prashant Malani
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20200125012105.59903-4-pmalani@chromium.org \
--to=pmalani@chromium.org \
--cc=bleung@chromium.org \
--cc=enric.balletbo@collabora.com \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).