root/drivers/usb/typec/ucsi/trace.c

/* [<][>][^][v][top][bottom][index][help] */

DEFINITIONS

This source file includes following definitions.
  1. ucsi_cmd_str
  2. ucsi_ack_str
  3. ucsi_cci_str
  4. ucsi_recipient_str

   1 // SPDX-License-Identifier: GPL-2.0
   2 #define CREATE_TRACE_POINTS
   3 #include "ucsi.h"
   4 #include "trace.h"
   5 
   6 static const char * const ucsi_cmd_strs[] = {
   7         [0]                             = "Unknown command",
   8         [UCSI_PPM_RESET]                = "PPM_RESET",
   9         [UCSI_CANCEL]                   = "CANCEL",
  10         [UCSI_CONNECTOR_RESET]          = "CONNECTOR_RESET",
  11         [UCSI_ACK_CC_CI]                = "ACK_CC_CI",
  12         [UCSI_SET_NOTIFICATION_ENABLE]  = "SET_NOTIFICATION_ENABLE",
  13         [UCSI_GET_CAPABILITY]           = "GET_CAPABILITY",
  14         [UCSI_GET_CONNECTOR_CAPABILITY] = "GET_CONNECTOR_CAPABILITY",
  15         [UCSI_SET_UOM]                  = "SET_UOM",
  16         [UCSI_SET_UOR]                  = "SET_UOR",
  17         [UCSI_SET_PDM]                  = "SET_PDM",
  18         [UCSI_SET_PDR]                  = "SET_PDR",
  19         [UCSI_GET_ALTERNATE_MODES]      = "GET_ALTERNATE_MODES",
  20         [UCSI_GET_CAM_SUPPORTED]        = "GET_CAM_SUPPORTED",
  21         [UCSI_GET_CURRENT_CAM]          = "GET_CURRENT_CAM",
  22         [UCSI_SET_NEW_CAM]              = "SET_NEW_CAM",
  23         [UCSI_GET_PDOS]                 = "GET_PDOS",
  24         [UCSI_GET_CABLE_PROPERTY]       = "GET_CABLE_PROPERTY",
  25         [UCSI_GET_CONNECTOR_STATUS]     = "GET_CONNECTOR_STATUS",
  26         [UCSI_GET_ERROR_STATUS]         = "GET_ERROR_STATUS",
  27 };
  28 
  29 const char *ucsi_cmd_str(u64 raw_cmd)
  30 {
  31         u8 cmd = raw_cmd & GENMASK(7, 0);
  32 
  33         return ucsi_cmd_strs[(cmd >= ARRAY_SIZE(ucsi_cmd_strs)) ? 0 : cmd];
  34 }
  35 
  36 static const char * const ucsi_ack_strs[] = {
  37         [0]                             = "",
  38         [UCSI_ACK_EVENT]                = "event",
  39         [UCSI_ACK_CMD]                  = "command",
  40 };
  41 
  42 const char *ucsi_ack_str(u8 ack)
  43 {
  44         return ucsi_ack_strs[(ack >= ARRAY_SIZE(ucsi_ack_strs)) ? 0 : ack];
  45 }
  46 
  47 const char *ucsi_cci_str(u32 cci)
  48 {
  49         if (cci & GENMASK(7, 0)) {
  50                 if (cci & BIT(29))
  51                         return "Event pending (ACK completed)";
  52                 if (cci & BIT(31))
  53                         return "Event pending (command completed)";
  54                 return "Connector Change";
  55         }
  56         if (cci & BIT(29))
  57                 return "ACK completed";
  58         if (cci & BIT(31))
  59                 return "Command completed";
  60 
  61         return "";
  62 }
  63 
  64 static const char * const ucsi_recipient_strs[] = {
  65         [UCSI_RECIPIENT_CON]            = "port",
  66         [UCSI_RECIPIENT_SOP]            = "partner",
  67         [UCSI_RECIPIENT_SOP_P]          = "plug (prime)",
  68         [UCSI_RECIPIENT_SOP_PP]         = "plug (double prime)",
  69 };
  70 
  71 const char *ucsi_recipient_str(u8 recipient)
  72 {
  73         return ucsi_recipient_strs[recipient];
  74 }

/* [<][>][^][v][top][bottom][index][help] */