51 lines
1.6 KiB
Python
51 lines
1.6 KiB
Python
#
|
|
# Import UniTAP module.
|
|
#
|
|
import UniTAP
|
|
|
|
#
|
|
# To initialize UniTAP library wrapper user should create UniTAP.TsiLib() object.
|
|
#
|
|
lUniTAP = UniTAP.TsiLib()
|
|
|
|
#
|
|
# For opening device, please, put serial number of the device as 8 symbol str or put index of device.
|
|
#
|
|
# dev = lUniTAP.open("NNNNNNNN")
|
|
dev = lUniTAP.open(0)
|
|
|
|
# After opening device as in UCD Console device role should be selected.
|
|
# role = dev.select_role(UniTAP.dev.UCD424.USBCSourceUSBCSink)
|
|
role = dev.select_role(UniTAP.dev.UCD500.USBCSourceUSBCSink)
|
|
dev.opf_handler = UniTAP.OpfHandlerInternal(port_tx=role.dptx, port_rx=role.dprx)
|
|
|
|
# Get and print current DP Alt Mode status
|
|
print(role.pdcrx.dp_alt_mode.status)
|
|
|
|
# Enter to 4 lane (C and E) DP Alt Mode
|
|
role.pdcrx.dp_alt_mode.enter_4_lane()
|
|
|
|
# Enable flag DP to Type-C adapter mode
|
|
# role.pdcrx.dp_alt_mode.dp_to_type_c_cable_adapter_mode(enable=True)
|
|
|
|
# Get and Set UFP Pin Assignment
|
|
ufp_pin_assignment = role.pdcrx.dp_alt_mode.ufp_caps
|
|
dfp_caps = role.pdcrx.dp_alt_mode.dfp_caps
|
|
ufp_pin_assignment.c_4_lanes = True
|
|
ufp_pin_assignment.d_2_lanes = False
|
|
role.pdcrx.dp_alt_mode.ufp_caps = ufp_pin_assignment
|
|
print("UFP:\n", ufp_pin_assignment)
|
|
print("DFP:\n", dfp_caps)
|
|
|
|
# If was selected UCD-500, may use DP 2.1 DPAM
|
|
# role.pdcrx.dp_alt_mode.enable_dp21(True)
|
|
|
|
#
|
|
# Since the 3.5 version, TsiLib and TSIDevice objects have the option to be closed earlier.
|
|
# TSIDevice can be closed with the TsiLib method close(). TsiLib can be closed with cleanup().
|
|
# Clean up will close all opened devices and block ability to open any devices
|
|
# with same TsiLib object.
|
|
#
|
|
lUniTAP.close(dev)
|
|
|
|
lUniTAP.cleanup() |