usb: typec: bm92txx: add Rohm BM92TXX support
Add a driver for the Rohm Semiconductor BM92TXX family of USB Type-C and Power Delivery controllers. The IC integrates an MCU that runs the PD state machine; the host configures it and observes status over I2C and reacts to a level-triggered ALERT interrupt. The driver exposes the controller through extcon and a USB role switch, manages the VBUS sink, optional VBUS source and battery-charger regulators along with the VCONN-enable GPIO, and applies per-PDO charging current limits (5 V, 9 V, 12 V, 15 V) sourced from device tree. DisplayPort alternate-mode handling and dock LED behaviour are configurable through rohm,* properties so the same driver can serve boards that wire the part up differently. A debugfs interface under bm92txx/ is provided for register dumps and low-level command access when CONFIG_DEBUG_FS is enabled. Signed-off-by: CTCaer <ctcaer@gmail.com> Signed-off-by: Alexandre Hamamdjian <azkali.limited@gmail.com>
This commit is contained in:
1 parent
f3067ee534
commit
44a1e34c7b
4 files changed
+2653
No files matched your search
@@ -23259,6 +23259,13 @@ L: linux-iio@vger.kernel.org
|
||||
S: Supported
|
||||
F: drivers/iio/pressure/rohm-bm1390.c
|
||||
|
||||
ROHM BM92TXX USB TYPE-C CONTROLLER DRIVER
|
||||
M: CTCaer <ctcaer@gmail.com>
|
||||
M: Alexandre Hamamdjian <azkali.limited@gmail.com>
|
||||
L: linux-usb@vger.kernel.org
|
||||
S: Maintained
|
||||
F: drivers/usb/typec/bm92txx.c
|
||||
|
||||
ROHM BU270xx LIGHT SENSOR DRIVERs
|
||||
M: Matti Vaittinen <mazziesaccount@gmail.com>
|
||||
L: linux-iio@vger.kernel.org
|
||||
|
||||
@@ -64,6 +64,17 @@ config TYPEC_ANX7411
|
||||
If you choose to build this driver as a dynamically linked module, the
|
||||
module will be called anx7411.ko.
|
||||
|
||||
config TYPEC_BM92TXX
|
||||
tristate "Rohm Semiconductor BM92TXX USB Type-C Support"
|
||||
depends on I2C
|
||||
depends on USB_ROLE_SWITCH
|
||||
help
|
||||
Say Y or M here if your system has Rohm BM92TXX USB Type-C and
|
||||
Power Delivery controller.
|
||||
|
||||
If you choose to build this driver as a dynamically linked module, the
|
||||
module will be called bm92txx.ko
|
||||
|
||||
config TYPEC_RT1719
|
||||
tristate "Richtek RT1719 Sink Only Type-C controller driver"
|
||||
depends on USB_ROLE_SWITCH || !USB_ROLE_SWITCH
|
||||
|
||||
@@ -7,6 +7,7 @@ obj-$(CONFIG_TYPEC_TCPM) += tcpm/
|
||||
obj-$(CONFIG_TYPEC_UCSI) += ucsi/
|
||||
obj-$(CONFIG_TYPEC_TPS6598X) += tipd/
|
||||
obj-$(CONFIG_TYPEC_ANX7411) += anx7411.o
|
||||
obj-$(CONFIG_TYPEC_BM92TXX) += bm92txx.o
|
||||
obj-$(CONFIG_TYPEC_HD3SS3220) += hd3ss3220.o
|
||||
obj-$(CONFIG_TYPEC_STUSB160X) += stusb160x.o
|
||||
obj-$(CONFIG_TYPEC_RT1719) += rt1719.o
|
||||
|
||||
File diff suppressed because it is too large.
Load diff
Reference in new issue
Block a user