lkml.org 
[lkml]   [2022]   [Jul]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH v3 3/9] platform/chrome: Add Type-C mux set command definitions
    Date
    Copy EC header definitions for the USB Type-C Mux control command from
    the EC code base. Also pull in "TBT_UFP_REPLY" definitions, since that
    is the prior entry in the enum.

    These headers are already present in the EC code base. [1]

    [1] https://chromium.googlesource.com/chromiumos/platform/ec/+/b80f85a94a423273c1638ef7b662c56931a138dd/include/ec_commands.h

    Signed-off-by: Prashant Malani <pmalani@chromium.org>
    ---

    Changes since v2:
    - No changes.

    Changes since v1:
    - No changes.

    include/linux/platform_data/cros_ec_commands.h | 18 ++++++++++++++++++
    1 file changed, 18 insertions(+)

    diff --git a/include/linux/platform_data/cros_ec_commands.h b/include/linux/platform_data/cros_ec_commands.h
    index 8cfa8cfca77e..a3945c5e7f50 100644
    --- a/include/linux/platform_data/cros_ec_commands.h
    +++ b/include/linux/platform_data/cros_ec_commands.h
    @@ -5722,8 +5722,21 @@ enum typec_control_command {
    TYPEC_CONTROL_COMMAND_EXIT_MODES,
    TYPEC_CONTROL_COMMAND_CLEAR_EVENTS,
    TYPEC_CONTROL_COMMAND_ENTER_MODE,
    + TYPEC_CONTROL_COMMAND_TBT_UFP_REPLY,
    + TYPEC_CONTROL_COMMAND_USB_MUX_SET,
    };

    +/* Replies the AP may specify to the TBT EnterMode command as a UFP */
    +enum typec_tbt_ufp_reply {
    + TYPEC_TBT_UFP_REPLY_NAK,
    + TYPEC_TBT_UFP_REPLY_ACK,
    +};
    +
    +struct typec_usb_mux_set {
    + uint8_t mux_index; /* Index of the mux to set in the chain */
    + uint8_t mux_flags; /* USB_PD_MUX_*-encoded USB mux state to set */
    +} __ec_align1;
    +
    struct ec_params_typec_control {
    uint8_t port;
    uint8_t command; /* enum typec_control_command */
    @@ -5737,6 +5750,8 @@ struct ec_params_typec_control {
    union {
    uint32_t clear_events_mask;
    uint8_t mode_to_enter; /* enum typec_mode */
    + uint8_t tbt_ufp_reply; /* enum typec_tbt_ufp_reply */
    + struct typec_usb_mux_set mux_params;
    uint8_t placeholder[128];
    };
    } __ec_align1;
    @@ -5815,6 +5830,9 @@ enum tcpc_cc_polarity {
    #define PD_STATUS_EVENT_SOP_DISC_DONE BIT(0)
    #define PD_STATUS_EVENT_SOP_PRIME_DISC_DONE BIT(1)
    #define PD_STATUS_EVENT_HARD_RESET BIT(2)
    +#define PD_STATUS_EVENT_DISCONNECTED BIT(3)
    +#define PD_STATUS_EVENT_MUX_0_SET_DONE BIT(4)
    +#define PD_STATUS_EVENT_MUX_1_SET_DONE BIT(5)

    struct ec_params_typec_status {
    uint8_t port;
    --
    2.37.0.rc0.161.g10f37bed90-goog
    \
     
     \ /
      Last update: 2022-07-08 00:24    [W:4.045 / U:0.312 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site