aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation/driver-api
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2018-12-28 23:30:00 -0500
committerLinus Torvalds <torvalds@linux-foundation.org>2018-12-28 23:30:00 -0500
commitc0ea81b4d37837409d0dfd2036098a7babb312ed (patch)
tree5d20f117ff03ec3d665487fb7fb045910d148ab1 /Documentation/driver-api
parent4d6ad6fba6b7af06143c67964f4095c74c9ce87c (diff)
parent4b2c01ad902ec02fa962b233decd2f14be3714ba (diff)
Merge tag 'usb-4.21-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb
Pull USB/PHY updates from Greg KH: "Here is the big set of USB and PHY driver patches for 4.21-rc1. All of the usual bits are in here: - loads of USB gadget driver updates and additions - new device ids - phy driver updates - xhci reworks and new features - typec updates Full details are in the shortlog. All of these have been in linux-next for a long time with no reported issues" * tag 'usb-4.21-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb: (142 commits) USB: serial: option: add Fibocom NL678 series cdc-acm: fix abnormal DATA RX issue for Mediatek Preloader. usb: r8a66597: Fix a possible concurrency use-after-free bug in r8a66597_endpoint_disable() usb: typec: tcpm: Extend the matching rules on PPS APDO selection usb: typec: Improve Alt Mode documentation usb: musb: dsps: fix runtime pm for peripheral mode usb: musb: dsps: fix otg state machine USB: serial: pl2303: add ids for Hewlett-Packard HP POS pole displays usb: renesas_usbhs: add support for RZ/G2E usb: ehci-omap: Fix deferred probe for phy handling usb: roles: Add a description for the class to Kconfig usb: renesas_usbhs: mark PM functions as __maybe_unused usb: core: Remove unnecessary memset() usb: host: isp1362-hcd: convert to DEFINE_SHOW_ATTRIBUTE phy: qcom-qmp: Expose provided clocks to DT dt-bindings: phy-qcom-qmp: Move #clock-cells to child phy: qcom-qmp: Utilize fully-specified DT registers dt-bindings: phy-qcom-qmp: Fix register underspecification phy: ti: fix semicolon.cocci warnings phy: dphy: Add configuration helpers ...
Diffstat (limited to 'Documentation/driver-api')
-rw-r--r--Documentation/driver-api/usb/index.rst1
-rw-r--r--Documentation/driver-api/usb/typec.rst1
-rw-r--r--Documentation/driver-api/usb/typec_bus.rst24
3 files changed, 14 insertions, 12 deletions
diff --git a/Documentation/driver-api/usb/index.rst b/Documentation/driver-api/usb/index.rst
index 8fe995a1ec94..cfa8797ea614 100644
--- a/Documentation/driver-api/usb/index.rst
+++ b/Documentation/driver-api/usb/index.rst
@@ -19,6 +19,7 @@ Linux USB API
19 dwc3 19 dwc3
20 writing_musb_glue_layer 20 writing_musb_glue_layer
21 typec 21 typec
22 typec_bus
22 usb3-debug-port 23 usb3-debug-port
23 24
24.. only:: subproject and html 25.. only:: subproject and html
diff --git a/Documentation/driver-api/usb/typec.rst b/Documentation/driver-api/usb/typec.rst
index 48ff58095f11..201163d8c13e 100644
--- a/Documentation/driver-api/usb/typec.rst
+++ b/Documentation/driver-api/usb/typec.rst
@@ -1,3 +1,4 @@
1.. _typec:
1 2
2USB Type-C connector class 3USB Type-C connector class
3========================== 4==========================
diff --git a/Documentation/driver-api/usb/typec_bus.rst b/Documentation/driver-api/usb/typec_bus.rst
index d5eec1715b5b..f47a69bff498 100644
--- a/Documentation/driver-api/usb/typec_bus.rst
+++ b/Documentation/driver-api/usb/typec_bus.rst
@@ -13,10 +13,10 @@ every alternate mode, so every alternate mode will need a custom driver.
13USB Type-C bus allows binding a driver to the discovered partner alternate 13USB Type-C bus allows binding a driver to the discovered partner alternate
14modes by using the SVID and the mode number. 14modes by using the SVID and the mode number.
15 15
16USB Type-C Connector Class provides a device for every alternate mode a port 16:ref:`USB Type-C Connector Class <typec>` provides a device for every alternate
17supports, and separate device for every alternate mode the partner supports. 17mode a port supports, and separate device for every alternate mode the partner
18The drivers for the alternate modes are bound to the partner alternate mode 18supports. The drivers for the alternate modes are bound to the partner alternate
19devices, and the port alternate mode devices must be handled by the port 19mode devices, and the port alternate mode devices must be handled by the port
20drivers. 20drivers.
21 21
22When a new partner alternate mode device is registered, it is linked to the 22When a new partner alternate mode device is registered, it is linked to the
@@ -46,7 +46,7 @@ enter any modes on their own.
46``->vdm`` is the most important callback in the operation callbacks vector. It 46``->vdm`` is the most important callback in the operation callbacks vector. It
47will be used to deliver all the SVID specific commands from the partner to the 47will be used to deliver all the SVID specific commands from the partner to the
48alternate mode driver, and vice versa in case of port drivers. The drivers send 48alternate mode driver, and vice versa in case of port drivers. The drivers send
49the SVID specific commands to each other using :c:func:`typec_altmode_vmd()`. 49the SVID specific commands to each other using :c:func:`typec_altmode_vdm()`.
50 50
51If the communication with the partner using the SVID specific commands results 51If the communication with the partner using the SVID specific commands results
52in need to reconfigure the pins on the connector, the alternate mode driver 52in need to reconfigure the pins on the connector, the alternate mode driver
@@ -67,15 +67,15 @@ Type-C Specification, and also put the connector back to ``TYPEC_STATE_USB``
67after the mode has been exited. 67after the mode has been exited.
68 68
69An example of working definitions for SVID specific pin configurations would 69An example of working definitions for SVID specific pin configurations would
70look like this: 70look like this::
71 71
72enum { 72 enum {
73 ALTMODEX_CONF_A = TYPEC_STATE_MODAL, 73 ALTMODEX_CONF_A = TYPEC_STATE_MODAL,
74 ALTMODEX_CONF_B, 74 ALTMODEX_CONF_B,
75 ... 75 ...
76}; 76 };
77 77
78Helper macro ``TYPEC_MODAL_STATE()`` can also be used: 78Helper macro ``TYPEC_MODAL_STATE()`` can also be used::
79 79
80#define ALTMODEX_CONF_A = TYPEC_MODAL_STATE(0); 80#define ALTMODEX_CONF_A = TYPEC_MODAL_STATE(0);
81#define ALTMODEX_CONF_B = TYPEC_MODAL_STATE(1); 81#define ALTMODEX_CONF_B = TYPEC_MODAL_STATE(1);