usb_cables: add usb-c signal shunt
This commit is contained in:
parent
d43b098fbf
commit
33ec1bcd26
|
@ -1078,8 +1078,8 @@ static void command_test(void* argument)
|
|||
USB_CABLE_AB3_DEVICE,
|
||||
USB_CABLE_AAB2_HOST,
|
||||
USB_CABLE_AUB3_HOST,
|
||||
USB_CABLE_CSHUNT_HOST,
|
||||
USB_CABLE_CSHUNT_DEVICE,
|
||||
USB_CABLE_CPINSHUNT_HOST,
|
||||
USB_CABLE_CPINSHUNT_DEVICE,
|
||||
};
|
||||
|
||||
for (uint8_t cable_id = 0; cable_id < LENGTH(test_cables); cable_id++) {
|
||||
|
|
75
usb_cables.c
75
usb_cables.c
|
@ -1150,8 +1150,8 @@ static const struct usb_connector_t* usb_c_host_connectors[] = {
|
|||
&usb_c_host_connector,
|
||||
};
|
||||
|
||||
/** this is not a cable, but a shunt shorting opposite signal the type C connector so to test it */
|
||||
static const uint8_t usb__c_host__c_host__cshunt_pins[][2] = {
|
||||
/** this is not a cable, but a shunt shorting opposite pins the type C connector so to test it */
|
||||
static const uint8_t usb__c_host__c_host__cpinshunt_pins[][2] = {
|
||||
{usb_c_host_sidea_pins[1], usb_c_host_sideb_pins[12]}, // A1 GND, B12 GND
|
||||
{usb_c_host_sidea_pins[2], usb_c_host_sideb_pins[11]}, // A2 TX+1, B11 RX+1
|
||||
{usb_c_host_sidea_pins[3], usb_c_host_sideb_pins[10]}, // A3 TX-1, B10 RX-1
|
||||
|
@ -1166,12 +1166,28 @@ static const uint8_t usb__c_host__c_host__cshunt_pins[][2] = {
|
|||
{usb_c_host_sidea_pins[12], usb_c_host_sideb_pins[1]}, // A12 GND, B1 GND
|
||||
};
|
||||
|
||||
/** this is not a cable, but a shunt shorting opposite signal the type C connector so to test it */
|
||||
static const uint8_t usb__c_host__c_host__csignalshunt_pins[][2] = {
|
||||
{usb_c_host_sidea_pins[1], usb_c_host_sideb_pins[1]}, // A1 GND, B1 GND
|
||||
{usb_c_host_sidea_pins[2], usb_c_host_sideb_pins[2]}, // A2 TX+1, B2 TX+2
|
||||
{usb_c_host_sidea_pins[3], usb_c_host_sideb_pins[3]}, // A3 TX-1, B3 TX-2
|
||||
{usb_c_host_sidea_pins[4], usb_c_host_sideb_pins[4]}, // A4 VBUS, B4 VBUS
|
||||
{usb_c_host_sidea_pins[5], usb_c_host_sideb_pins[5]}, // A5 CC1, B5 CC2
|
||||
{usb_c_host_sidea_pins[6], usb_c_host_sideb_pins[6]}, // A6 D+1, B6 D+2
|
||||
{usb_c_host_sidea_pins[7], usb_c_host_sideb_pins[7]}, // A7 D-1, B7 D-2
|
||||
{usb_c_host_sidea_pins[8], usb_c_host_sideb_pins[8]}, // A8 SBU1, B8 SBU2
|
||||
{usb_c_host_sidea_pins[9], usb_c_host_sideb_pins[9]}, // A9 VBUS, B9 VBUS
|
||||
{usb_c_host_sidea_pins[10], usb_c_host_sideb_pins[10]}, // A10 RX-2, B10 RX-1
|
||||
{usb_c_host_sidea_pins[11], usb_c_host_sideb_pins[11]}, // A11 RX+2, B11 RX+1
|
||||
{usb_c_host_sidea_pins[12], usb_c_host_sideb_pins[12]}, // A12 GND, B12 GND
|
||||
};
|
||||
|
||||
/** list of connectors for C shunts (using C device connector) */
|
||||
static const struct usb_connector_t* usb_c_device_connectors[] = {
|
||||
&usb_c_device_connector,
|
||||
};
|
||||
|
||||
static const uint8_t usb__c_device__c_device__cshunt_pins[][2] = {
|
||||
static const uint8_t usb__c_device__c_device__cpinshunt_pins[][2] = {
|
||||
{usb_c_device_sidea_pins[1], usb_c_device_sideb_pins[12]}, // A1 GND, B12 GND
|
||||
{usb_c_device_sidea_pins[2], usb_c_device_sideb_pins[11]}, // A2 TX+1, B11 RX+1
|
||||
{usb_c_device_sidea_pins[3], usb_c_device_sideb_pins[10]}, // A3 TX-1, B10 RX-1
|
||||
|
@ -1186,6 +1202,21 @@ static const uint8_t usb__c_device__c_device__cshunt_pins[][2] = {
|
|||
{usb_c_device_sidea_pins[12], usb_c_device_sideb_pins[1]}, // A12 GND, B1 GND
|
||||
};
|
||||
|
||||
static const uint8_t usb__c_device__c_device__csignalshunt_pins[][2] = {
|
||||
{usb_c_device_sidea_pins[1], usb_c_device_sideb_pins[1]}, // A1 GND, B1 GND
|
||||
{usb_c_device_sidea_pins[2], usb_c_device_sideb_pins[2]}, // A2 TX+1, B2 TX+2
|
||||
{usb_c_device_sidea_pins[3], usb_c_device_sideb_pins[3]}, // A3 TX-1, B3 TX-2
|
||||
{usb_c_device_sidea_pins[4], usb_c_device_sideb_pins[4]}, // A4 VBUS, B4 VBUS
|
||||
{usb_c_device_sidea_pins[5], usb_c_device_sideb_pins[5]}, // A5 CC1, B5 CC2
|
||||
{usb_c_device_sidea_pins[6], usb_c_device_sideb_pins[6]}, // A6 D+1, B6 D+2
|
||||
{usb_c_device_sidea_pins[7], usb_c_device_sideb_pins[7]}, // A7 D-1, B7 D-2
|
||||
{usb_c_device_sidea_pins[8], usb_c_device_sideb_pins[8]}, // A8 SBU1, B8 SBU2
|
||||
{usb_c_device_sidea_pins[9], usb_c_device_sideb_pins[9]}, // A9 VBUS, B9 VBUS
|
||||
{usb_c_device_sidea_pins[10], usb_c_device_sideb_pins[10]}, // A10 RX-2, B10 RX-1
|
||||
{usb_c_device_sidea_pins[11], usb_c_device_sideb_pins[11]}, // A11 RX+2, B11 RX+1
|
||||
{usb_c_device_sidea_pins[12], usb_c_device_sideb_pins[12]}, // A12 GND, B12 GND
|
||||
};
|
||||
|
||||
/** list of connectors for A-C cables (using A host connector and C host connector) */
|
||||
static const struct usb_connector_t* usb_a_host_c_host_connectors[] = {
|
||||
&usb_a_host_connector,
|
||||
|
@ -4466,25 +4497,47 @@ const struct usb_cable_t usb_cables[] = {
|
|||
.optional_pairs = NULL,
|
||||
},
|
||||
// C
|
||||
[USB_CABLE_CSHUNT_HOST] = {
|
||||
.name = "C shunt",
|
||||
[USB_CABLE_CPINSHUNT_HOST] = {
|
||||
.name = "C pins shunt",
|
||||
.shortname = NULL,
|
||||
.variant = "C host receptacle",
|
||||
.connectors_nb = LENGTH(usb_c_host_connectors),
|
||||
.connectors = usb_c_host_connectors,
|
||||
.mandatory_pairs_nb = LENGTH(usb__c_host__c_host__cshunt_pins),
|
||||
.mandatory_pairs = usb__c_host__c_host__cshunt_pins,
|
||||
.mandatory_pairs_nb = LENGTH(usb__c_host__c_host__cpinshunt_pins),
|
||||
.mandatory_pairs = usb__c_host__c_host__cpinshunt_pins,
|
||||
.optional_pairs_nb = 0,
|
||||
.optional_pairs = NULL,
|
||||
},
|
||||
[USB_CABLE_CSHUNT_DEVICE] = {
|
||||
.name = "C shunt",
|
||||
[USB_CABLE_CPINSHUNT_DEVICE] = {
|
||||
.name = "C pins shunt",
|
||||
.shortname = NULL,
|
||||
.variant = "C device receptacle",
|
||||
.connectors_nb = LENGTH(usb_c_device_connectors),
|
||||
.connectors = usb_c_device_connectors,
|
||||
.mandatory_pairs_nb = LENGTH(usb__c_device__c_device__cshunt_pins),
|
||||
.mandatory_pairs = usb__c_device__c_device__cshunt_pins,
|
||||
.mandatory_pairs_nb = LENGTH(usb__c_device__c_device__cpinshunt_pins),
|
||||
.mandatory_pairs = usb__c_device__c_device__cpinshunt_pins,
|
||||
.optional_pairs_nb = 0,
|
||||
.optional_pairs = NULL,
|
||||
},
|
||||
[USB_CABLE_CSIGNALSHUNT_HOST] = {
|
||||
.name = "C signal shunt",
|
||||
.shortname = NULL,
|
||||
.variant = "C host receptacle",
|
||||
.connectors_nb = LENGTH(usb_c_host_connectors),
|
||||
.connectors = usb_c_host_connectors,
|
||||
.mandatory_pairs_nb = LENGTH(usb__c_host__c_host__csignalshunt_pins),
|
||||
.mandatory_pairs = usb__c_host__c_host__csignalshunt_pins,
|
||||
.optional_pairs_nb = 0,
|
||||
.optional_pairs = NULL,
|
||||
},
|
||||
[USB_CABLE_CSIGNALSHUNT_DEVICE] = {
|
||||
.name = "C signal shunt",
|
||||
.shortname = NULL,
|
||||
.variant = "C device receptacle",
|
||||
.connectors_nb = LENGTH(usb_c_device_connectors),
|
||||
.connectors = usb_c_device_connectors,
|
||||
.mandatory_pairs_nb = LENGTH(usb__c_device__c_device__csignalshunt_pins),
|
||||
.mandatory_pairs = usb__c_device__c_device__csignalshunt_pins,
|
||||
.optional_pairs_nb = 0,
|
||||
.optional_pairs = NULL,
|
||||
},
|
||||
|
|
|
@ -141,8 +141,10 @@ enum usb_cable_e {
|
|||
USB_CABLE_AUBBC_DEVICE,
|
||||
USB_CABLE_AUB2_DEVICE,
|
||||
USB_CABLE_AUB3_DEVICE,
|
||||
USB_CABLE_CSHUNT_HOST,
|
||||
USB_CABLE_CSHUNT_DEVICE,
|
||||
USB_CABLE_CPINSHUNT_HOST,
|
||||
USB_CABLE_CPINSHUNT_DEVICE,
|
||||
USB_CABLE_CSIGNALSHUNT_HOST,
|
||||
USB_CABLE_CSIGNALSHUNT_DEVICE,
|
||||
USB_CABLE_AC0_A_HOST_CA_HOST,
|
||||
USB_CABLE_AC0_A_HOST_CB_HOST,
|
||||
USB_CABLE_AC0_A_HOST_CA_DEVICE,
|
||||
|
|
Loading…
Reference in New Issue