lkml.org 
[lkml]   [2020]   [Sep]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    Subject[PATCH v7 02/11] usb: typec: tcpci: Add set_vbus tcpci callback
    From
    set_vbus callback allows TCPC which are TCPCI based, however,
    does not support turning on sink and source mode through
    Command.SinkVbus and Command.SourceVbusDefaultVoltage.

    Signed-off-by: Badhri Jagan Sridharan <badhri@google.com>
    ---
    Changes since v1:
    - Changing patch version to v6 to fix version number confusion.

    Changes since v6:
    - Rebase on usb-next
    ---
    drivers/usb/typec/tcpm/tcpci.c | 7 +++++++
    drivers/usb/typec/tcpm/tcpci.h | 1 +
    2 files changed, 8 insertions(+)

    diff --git a/drivers/usb/typec/tcpm/tcpci.c b/drivers/usb/typec/tcpm/tcpci.c
    index b960fe5a0f28..d6a6fac82d48 100644
    --- a/drivers/usb/typec/tcpm/tcpci.c
    +++ b/drivers/usb/typec/tcpm/tcpci.c
    @@ -328,6 +328,13 @@ static int tcpci_set_vbus(struct tcpc_dev *tcpc, bool source, bool sink)
    struct tcpci *tcpci = tcpc_to_tcpci(tcpc);
    int ret;

    + if (tcpci->data->set_vbus) {
    + ret = tcpci->data->set_vbus(tcpci, tcpci->data, source, sink);
    + /* Bypass when ret > 0 */
    + if (ret != 0)
    + return ret < 0 ? ret : 0;
    + }
    +
    /* Disable both source and sink first before enabling anything */

    if (!source) {
    diff --git a/drivers/usb/typec/tcpm/tcpci.h b/drivers/usb/typec/tcpm/tcpci.h
    index 04c49a0b0368..4d441bdf24d5 100644
    --- a/drivers/usb/typec/tcpm/tcpci.h
    +++ b/drivers/usb/typec/tcpm/tcpci.h
    @@ -144,6 +144,7 @@ struct tcpci_data {
    bool enable);
    int (*start_drp_toggling)(struct tcpci *tcpci, struct tcpci_data *data,
    enum typec_cc_status cc);
    + int (*set_vbus)(struct tcpci *tcpci, struct tcpci_data *data, bool source, bool sink);
    };

    struct tcpci *tcpci_register_port(struct device *dev, struct tcpci_data *data);
    --
    2.28.0.618.gf4bc123cb7-goog
    \
     
     \ /
      Last update: 2020-09-17 12:25    [W:2.775 / U:0.060 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site