<p>Shelley Chen has uploaded this change for <strong>review</strong>.</p><p><a href="https://review.coreboot.org/21771">View Change</a></p><pre style="font-family: monospace,monospace; white-space: pre-wrap;">chromeec: Add function to retrieve usb c charger info<br><br>Add google_chromeec_get_usb_pd_power_info(), which will<br>call the EC_CMD_USB_PD_CONTROL host command to retrieve<br>the current and voltage info of the usb c charger.<br>Returns power info in watts.<br><br>BUG=b:37473486<br>BRANCH=None<br>TEST=output debug info to make sure that correct power<br>     is returned.<br><br>Change-Id: Ie14a0a6163e1c2699cb20b4422c8062164d92076<br>Signed-off-by: Shelley Chen <shchen@chromium.org><br>---<br>M src/ec/google/chromeec/ec.c<br>M src/ec/google/chromeec/ec.h<br>2 files changed, 31 insertions(+), 0 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;">git pull ssh://review.coreboot.org:29418/coreboot refs/changes/71/21771/1</pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;">diff --git a/src/ec/google/chromeec/ec.c b/src/ec/google/chromeec/ec.c<br>index 03d4c3b..47bd5a3 100644<br>--- a/src/ec/google/chromeec/ec.c<br>+++ b/src/ec/google/chromeec/ec.c<br>@@ -622,6 +622,36 @@<br>     return google_chromeec_command(&cmd);<br> }<br> <br>+/* Get charger power info in Watts */<br>+int google_chromeec_get_usb_pd_power_info(void)<br>+{<br>+       struct ec_params_usb_pd_power_info req = {<br>+           .port = PD_POWER_CHARGING_PORT,<br>+      };<br>+   struct ec_response_usb_pd_power_info rsp;<br>+    struct chromeec_command cmd = {<br>+              .cmd_code = EC_CMD_USB_PD_POWER_INFO,<br>+                .cmd_version = 0,<br>+            .cmd_data_in = &req,<br>+             .cmd_size_in = sizeof(req),<br>+          .cmd_data_out = &rsp,<br>+            .cmd_size_out = sizeof(rsp),<br>+         .cmd_dev_index = 0,<br>+  };<br>+   struct usb_chg_measures m;<br>+<br>+        google_chromeec_command(&cmd);<br>+<br>+        m = rsp.meas;<br>+<br>+     if (rsp.type == USB_CHG_TYPE_PD) {<br>+           /* values are given in milliAmps and milliVolts */<br>+           return (m.current_max * m.voltage_max)/1000000;<br>+      }<br>+    /* If barrel jack, then just return 0 */<br>+     return 0;<br>+}<br>+<br> int google_chromeec_set_usb_pd_role(u8 port, enum usb_pd_control_role role)<br> {<br>    struct ec_params_usb_pd_control req = {<br>diff --git a/src/ec/google/chromeec/ec.h b/src/ec/google/chromeec/ec.h<br>index 3a7cadd..47760fb 100644<br>--- a/src/ec/google/chromeec/ec.h<br>+++ b/src/ec/google/chromeec/ec.h<br>@@ -89,6 +89,7 @@<br> };<br> int google_chromeec_set_usb_charge_mode(u8 port_id, enum usb_charge_mode mode);<br> int google_chromeec_set_usb_pd_role(u8 port, enum usb_pd_control_role role);<br>+int google_chromeec_get_usb_pd_power_info(void);<br> <br> /* internal structure to send a command to the EC and wait for response. */<br> struct chromeec_command {<br></pre><p>To view, visit <a href="https://review.coreboot.org/21771">change 21771</a>. To unsubscribe, visit <a href="https://review.coreboot.org/settings">settings</a>.</p><div itemscope itemtype="http://schema.org/EmailMessage"><div itemscope itemprop="action" itemtype="http://schema.org/ViewAction"><link itemprop="url" href="https://review.coreboot.org/21771"/><meta itemprop="name" content="View Change"/></div></div>

<div style="display:none"> Gerrit-Project: coreboot </div>
<div style="display:none"> Gerrit-Branch: master </div>
<div style="display:none"> Gerrit-MessageType: newchange </div>
<div style="display:none"> Gerrit-Change-Id: Ie14a0a6163e1c2699cb20b4422c8062164d92076 </div>
<div style="display:none"> Gerrit-Change-Number: 21771 </div>
<div style="display:none"> Gerrit-PatchSet: 1 </div>
<div style="display:none"> Gerrit-Owner: Shelley Chen <shchen@google.com> </div>