This is a series of patches that implements a driver for the control peripheral, EUD (Embedded USB Debugger). The EUD is a mini-USB hub implemented on chip to support the USB-based debug and trace capabilities. Apart from debug capabilities, EUD has a control peripheral. Control Peripheral is on when EUD is on and gets signals like USB attach, pet EUD, charge phone etc. EUD driver listens to events like USB attach or detach and charger enable or disable and then notifies the USB driver or PMIC driver respectively about these events via EXTCON. At regular intervals, the EUD driver receives an interrupt to pet the driver indicating that the software is functional. Changes since v2: - Remove module_param and add sysfs support instead - Simplify if-else condition - Change if-elseif to switch case - Return -ENOMEM - Got rid of unnecessary checks in sysfs store function - Updated the dt-binding Changes since v1: - Remove EUD_NR as it is an unused macro Changes since v0: - Remove select SERIAL_CORE from Kconfig as this patch doesn't involve anything related to serial console - Changed the dt-bindings to remove extcon and replace it with graphs to represent a connection with client Prakruthi Deepak Heragu (2): dt-bindings: Documentation for qcom,eud Embedded USB Debugger (EUD) driver .../devicetree/bindings/soc/qcom/qcom,msm-eud.txt | 41 +++ drivers/soc/qcom/Kconfig | 12 + drivers/soc/qcom/Makefile | 1 + drivers/soc/qcom/eud.c | 338 +++++++++++++++++++++ 4 files changed, 392 insertions(+) create mode 100644 Documentation/devicetree/bindings/soc/qcom/qcom,msm-eud.txt create mode 100644 drivers/soc/qcom/eud.c -- The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum, a Linux Foundation Collaborative Project