GNU Linux-libre 6.8.7-gnu
[releases.git] / drivers / usb / typec / tcpm / Kconfig
1 # SPDX-License-Identifier: GPL-2.0
2
3 config TYPEC_TCPM
4         tristate "USB Type-C Port Controller Manager"
5         depends on USB
6         select USB_ROLE_SWITCH
7         select POWER_SUPPLY
8         help
9           The Type-C Port Controller Manager provides a USB PD and USB Type-C
10           state machine for use with Type-C Port Controllers.
11
12 if TYPEC_TCPM
13
14 config TYPEC_TCPCI
15         tristate "Type-C Port Controller Interface driver"
16         depends on I2C
17         select REGMAP_I2C
18         help
19           Type-C Port Controller driver for TCPCI-compliant controller.
20
21 if TYPEC_TCPCI
22
23 config TYPEC_RT1711H
24         tristate "Richtek RT1711H Type-C chip driver"
25         help
26           Richtek RT1711H Type-C chip driver that works with
27           Type-C Port Controller Manager to provide USB PD and USB
28           Type-C functionalities.
29
30 config TYPEC_MT6360
31         tristate "Mediatek MT6360 Type-C driver"
32         depends on MFD_MT6360
33         help
34           Mediatek MT6360 is a multi-functional IC that includes
35           USB Type-C. It works with Type-C Port Controller Manager
36           to provide USB PD and USB Type-C functionalities.
37
38 config TYPEC_TCPCI_MT6370
39         tristate "MediaTek MT6370 Type-C driver"
40         depends on MFD_MT6370
41         help
42           MediaTek MT6370 is a multi-functional IC that includes
43           USB Type-C. It works with Type-C Port Controller Manager
44           to provide USB PD and USB Type-C functionalities.
45
46           This driver can also be built as a module. The module
47           will be called "tcpci_mt6370".
48
49 config TYPEC_TCPCI_MAXIM
50         tristate "Maxim TCPCI based Type-C chip driver"
51         help
52           MAXIM TCPCI based Type-C/PD chip driver. Works with
53           with Type-C Port Controller Manager.
54
55 endif # TYPEC_TCPCI
56
57 config TYPEC_FUSB302
58         tristate "Fairchild FUSB302 Type-C chip driver"
59         depends on I2C
60         depends on EXTCON || !EXTCON
61         help
62           The Fairchild FUSB302 Type-C chip driver that works with
63           Type-C Port Controller Manager to provide USB PD and USB
64           Type-C functionalities.
65
66 config TYPEC_WCOVE
67         tristate "Intel WhiskeyCove PMIC USB Type-C PHY driver"
68         depends on ACPI
69         depends on MFD_INTEL_PMC_BXT
70         depends on BXT_WC_PMIC_OPREGION
71         help
72           This driver adds support for USB Type-C on Intel Broxton platforms
73           that have Intel Whiskey Cove PMIC. The driver works with USB Type-C
74           Port Controller Manager to provide USB PD and Type-C functionalities.
75
76           To compile this driver as module, choose M here: the module will be
77           called typec_wcove.ko
78
79 config TYPEC_QCOM_PMIC
80         tristate "Qualcomm PMIC USB Type-C Port Controller Manager driver"
81         depends on ARCH_QCOM || COMPILE_TEST
82         depends on DRM || DRM=n
83         select DRM_AUX_HPD_BRIDGE if DRM_BRIDGE && OF
84         help
85           A Type-C port and Power Delivery driver which aggregates two
86           discrete pieces of silicon in the PM8150b PMIC block: the
87           Type-C port controller and the Power Delivery PHY.
88
89           This driver enables Type-C role switching, orientation, Alternate
90           mode and Power Delivery support both for VBUS and VCONN.
91
92 endif # TYPEC_TCPM