summaryrefslogtreecommitdiff
path: root/drivers/usb (follow)
Commit message (Collapse)AuthorAge
...
* | | | | | | | | | Merge "usb: pd: Update uevent parameters during hard reset"Linux Build Service Account2017-02-15
|\ \ \ \ \ \ \ \ \ \ | | |/ / / / / / / / | |/| | | | | | | |
| * | | | | | | | | usb: pd: Update uevent parameters during hard resetJack Pham2017-02-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Ensure that a few of the parameters (SELECTED_PDO, REQUESTED_PDO, RDO) are properly cleared out during hard reset and a uevent update is sent to notify userspace clients. Also, don't reset src_cap_id upon disconnect. This makes it a a monotonically increasing value upon every connection so that clients can distinguish when a new PD session is established. Demote it to a u16 in order to have a smaller wraparound (65535). Change-Id: I622ad1155b3680d3f616d5e9a835d4c6cbca3636 Signed-off-by: Jack Pham <jackp@codeaurora.org>
* | | | | | | | | | Merge "usb: pd: Make select_pdo_store() wait until request goes through"Linux Build Service Account2017-02-15
|\| | | | | | | | |
| * | | | | | | | | usb: pd: Make select_pdo_store() wait until request goes throughJack Pham2017-02-10
| | |_|_|/ / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When sending a request through the 'select_pdo' sysfs file, make sure the request has gone through and is acknowledged by the source before returning. This allows for checking if the request was rejected so that an error can be returned. Rename the 'swap_complete' completion variable to 'is_ready' so it can be reused in this context. Also add a mutex so that select_pdo will not contend with a dual_role swap. Change-Id: Ie8b088faa15c67915e3bd96972b4f59f0cc66afe Signed-off-by: Jack Pham <jackp@codeaurora.org>
* | | | | | | | | Merge "usb: dwc3: Fix LPM NYET Threshold value"Linux Build Service Account2017-02-15
|\ \ \ \ \ \ \ \ \
| * | | | | | | | | usb: dwc3: Fix LPM NYET Threshold valueHemant Kumar2017-02-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | highest possible LPM NYET threshold value is 0xf because LPM_NYET_THRES uses 4 bits in DWC_USB3_DCTL register. Value is incorrectly written as 0xff which is overriding the value of other register bits. Change-Id: Ib15fdfd01bf75fe6291b8fd2b0317e9b4c0c97c9 Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
* | | | | | | | | | usb: pd: Fix probe failure in case of no sink capablities passedVijayavardhan Vennapusa2017-02-14
| |_|/ / / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Commit b76105e359a7 ("usb: pd: Read sink capabilities from device tree") added support in usbpd driver to pass sink capablities from device tree. But it introduced bug in case of no sink capablities passed from device tree as in this case, device_property_read_u32_array() returns -EINVAL. Due to this, usbpd driver probe fails as usbpd_create() returns errors. Fix this issue by checking if return value > 0 and then only try to read sink capablities from device tree. If not, use default sink capabliites defined in usbpd driver. Change-Id: I51beeba282c6e067881c664d38c2657843a1c716 Signed-off-by: Vijayavardhan Vennapusa <vvreddy@codeaurora.org>
* | | | | | | | | Merge "USB: qc_rndis: Fix aggregation parameters settings issue"Linux Build Service Account2017-02-10
|\ \ \ \ \ \ \ \ \
| * | | | | | | | | USB: qc_rndis: Fix aggregation parameters settings issueVijayavardhan Vennapusa2017-02-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently driver does read max Transfer size from RNDIS_MSG_INIT control message, when received from Host, but it is wrongly being decoded due to wrong offset used. This leads dl_aggregation size set to 0 instead of required rndis_dl_aggr_size. Hence fix this by incrementing tmp pointer for requestID to use correct offset to read max Transfer size and set DL aggregation size correctly. Also pass maxpkt_per_xfer as zero to rndis_qc_bind_config_vendor() so that UL aggregation buffer size will be set to aggregation of 15 packets. This helps in improving througput numbers. Change-Id: Icc7506b57d26f82e6bf81f9d7dc1515cfbae6c82 Signed-off-by: Vijayavardhan Vennapusa <vvreddy@codeaurora.org>
* | | | | | | | | | Merge "usb: host: xhci: Fix bound check for interrupter number"Linux Build Service Account2017-02-09
|\ \ \ \ \ \ \ \ \ \ | |_|_|/ / / / / / / |/| | | | | | | | |
| * | | | | | | | | usb: host: xhci: Fix bound check for interrupter numberHemant Kumar2017-02-09
| | |/ / / / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since max_interrupters flag includes primary interrupter as well, update the bound check when this flag is being used for secondary event ring clean-up/allocation. Change-Id: I044c5a89fe17779eb847981cbf27e99b97e37d80 Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
* | | | | | | | | Merge "usb: dwc3: Set core clk rate to default upon device remove notification"Linux Build Service Account2017-02-09
|\ \ \ \ \ \ \ \ \
| * | | | | | | | | usb: dwc3: Set core clk rate to default upon device remove notificationHemant Kumar2017-02-07
| |/ / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit 1eec2157d84dcb ("usb: dwc3: Update core clock rate based on USB port speed.") only sets clk rate for HS/FS/LS device add notification. In case super speed device is plugged in after LS/FS/HS device unplug in absence of runtime suspend, core clk rate remains at high speed core clk rate. Fix this issue by setting the core clk rate back to default when a device is being removed from root hub. Change-Id: I0ac37b7ff08a9a297441304eb2cfaff398d44bb9 Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
* | | | | | | | | Merge "usb: diag: Set interface protocol to represent diag"Linux Build Service Account2017-02-09
|\ \ \ \ \ \ \ \ \
| * | | | | | | | | usb: diag: Set interface protocol to represent diagVamsi Krishna Samavedam2017-02-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PC tools can use this value to identify protocol used by diag interface. For example, diag interface can use firehouse or sahara or plain diag protocols. Update the protocol value to represent plain diag. Change-Id: Ifba80a21a99575d1fcdb54647319aea0822b8898 Signed-off-by: Vamsi Krishna Samavedam <vskrishn@codeaurora.org>
* | | | | | | | | | Merge "Revert "usb: xhci: Set interrupt moderation for host mode to 4000(1ms)""Linux Build Service Account2017-02-09
|\ \ \ \ \ \ \ \ \ \
| * | | | | | | | | | Revert "usb: xhci: Set interrupt moderation for host mode to 4000(1ms)"Manu Gautam2017-02-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 32e9bf0e7cde2a440a9442d2c92bb7c4bf35dd80 ("usb: xhci: Set interrupt moderation for host mode to 4000(1ms)") to restore default imod value in XHCI driver as IMOD value is now passed from DT for required targets. CRs-fixed: 1019219 Change-Id: I8bc3c2217cafde0e767671e192f6563f89712575 Signed-off-by: Manu Gautam <mgautam@codeaurora.org>
* | | | | | | | | | | Merge "USB: u_data_ipa: Fix pm_runtime usage count in case of error"Linux Build Service Account2017-02-08
|\ \ \ \ \ \ \ \ \ \ \ | |_|_|/ / / / / / / / |/| | | | | | | | | |
| * | | | | | | | | | USB: u_data_ipa: Fix pm_runtime usage count in case of errorVijayavardhan Vennapusa2017-02-08
| | |_|/ / / / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If disconnect happens before connect_work start executing, then there is a chance that connect_work returns with port_usb NULL. Due to this, port->is_connected will be NULL and disconnect_work returns with this check, but not decremented pm_usage count, which is incremented before scheduling connect_work in ipa_data_connect. Hence fix this by decrementing pm_usage count in connect_work if port_usb is NULL. Change-Id: Ic60f2addcf07375429e0858d3c7a376a35132750 Signed-off-by: Vijayavardhan Vennapusa <vvreddy@codeaurora.org>
* | | | | | | | | | Merge "ARM: dts: msm: add sink capabilities to PMI8998 PD PHY"Linux Build Service Account2017-02-07
|\ \ \ \ \ \ \ \ \ \
| * | | | | | | | | | usb: pd: Read sink capabilities from device treeJack Pham2017-02-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a device tree property to allow specifying the supported set of sink capabilities. If not specified, fall back to a single capability of 5V @ 3A. Change-Id: I394061d9f3070099e35b651ce4b63a7993343bf1 Signed-off-by: Jack Pham <jackp@codeaurora.org>
* | | | | | | | | | | Merge "usb: dwc3: Add support to LPM L1 remote wakeup for ep0 endpoints"Linux Build Service Account2017-02-06
|\ \ \ \ \ \ \ \ \ \ \ | |_|_|_|/ / / / / / / |/| | | | | | | | | |
| * | | | | | | | | | usb: dwc3: Add support to LPM L1 remote wakeup for ep0 endpointsHemant Kumar2017-02-01
| |/ / / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When device controller gets an LPM request from the host during a control transfer, it is not able to initiate remote wakeup automatically. As a result it accepts the request, goes to L1 state, and does not initiate wakeup to exit L1 state. Since host expects the device to do a remote wakeup from L1 state and the device does not initiate the wakeup, the host continues to wait and starts enumeration again because control transfer timeout occurs. Fix this issue by initiating remote wakeup before queuing the ep0 request if bus is in L1 suspend state. Also add a counter which gets incremented upon device sending remote wakeup before queuing ep0 request. Change-Id: I307ad94d4cb40ce2bd85425f3a1c6316cded52b8 Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
* | | | | | | | | | Merge "usb: xhci-plat: Add DT parameter to program xhci imod_interval"Linux Build Service Account2017-02-03
|\ \ \ \ \ \ \ \ \ \ | | |_|/ / / / / / / | |/| | | | | | | |
| * | | | | | | | | usb: xhci-plat: Add DT parameter to program xhci imod_intervalManu Gautam2017-02-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | XHCI allows interrupt moderation using imod_interval at 250ns increments. Add DT parameter to specify this imod_value for targets mainly with single CPU to reduce CPU interrupt loads. This allows better balance between CPU usage and performance. CRs-fixed: 1019219 Change-Id: Id479c162da6492caff4dd83de4054fee63b6abc5 Signed-off-by: Manu Gautam <mgautam@codeaurora.org>
* | | | | | | | | | Merge "USB: dwc3-msm: Add sysfs entry to manually set speed"Linux Build Service Account2017-02-02
|\ \ \ \ \ \ \ \ \ \ | |_|_|/ / / / / / / |/| | | | | | | | |
| * | | | | | | | | USB: dwc3-msm: Add sysfs entry to manually set speedVamsi Krishna Samavedam2017-02-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In some cases it is useful to manually force the controller to run at certain speeds (USB 2.0 or USB 3.0 speeds). For example, EUD (Emebedded USB Debug) can only work when controller is operating in USB 2.0 speeds. User can force USB 2.0 if EUD is required. Change-Id: Id022f372014a9218537bd1b5477d4555aff4578c Signed-off-by: Vamsi Krishna Samavedam <vskrishn@codeaurora.org>
* | | | | | | | | | Merge "defconfig: msm8998: Enable USB CCID function driver"Linux Build Service Account2017-02-01
|\ \ \ \ \ \ \ \ \ \
| * | | | | | | | | | usb: gadget: add configfs support in ccid function driverHemant Kumar2017-02-01
| | |/ / / / / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This allows ccid device to enumerate using usb compostion driver supporting config file system. Also fix compliation errors. Change-Id: I363b8f967781ab162fbd7ded0b397c86cf3d3fc5 Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
* | | | | | | | | | Merge "usb: dwc3: Prevent pipe_PowerDown transition during U1 exit"Linux Build Service Account2017-02-01
|\ \ \ \ \ \ \ \ \ \
| * | | | | | | | | | usb: dwc3: Prevent pipe_PowerDown transition during U1 exitHemant Kumar2017-02-01
| | |_|/ / / / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | During U1 exit, the controller might send LFPS ping at the same time when the P1 to P0 transition occurs(GUSB3PIPECTL[27] = '0'). The de-assertion of the pipe_TxElecIdle signal during the pipe_PowerDown signal transition violates the PIPE specification. Fix this by setting GUSB3PIPECTL[27] = '1' so that there is no pipe_PowerDown transition during U1 exit. This fix is applicable for DWC3 revision 3.10 or older. Change-Id: I7708d42c0f8b67d315be59e9ff9f04ccb74b9b5c Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
* | | | | | | | | | Merge "usb: dwc3: Add maximum hw supported speed flag"Linux Build Service Account2017-02-01
|\ \ \ \ \ \ \ \ \ \ | | |_|/ / / / / / / | |/| | | | | | | |
| * | | | | | | | | usb: dwc3: Add maximum hw supported speed flagVamsi Krishna Samavedam2017-01-31
| | |/ / / / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Maximum hardware supported speed flag limits the maximum speed of the usb controller to high or super. Adding this additional flag as maximum_speed flag can be changed from different sources such as power delivery stack. Change-Id: I18f414e822b5525fe848a48384fac102cdae7b03 Signed-off-by: Vamsi Krishna Samavedam <vskrishn@codeaurora.org>
* | | | | | | | | Merge "usb: pd: Ensure VBUS is below 0.8V before turning it on"Linux Build Service Account2017-02-01
|\ \ \ \ \ \ \ \ \
| * | | | | | | | | usb: pd: Ensure VBUS is below 0.8V before turning it onJack Pham2017-01-25
| | |/ / / / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Type-C spec requires that VBUS must not be enabled as a source if there is already a voltage > VSafe0V. To address this, add a polling loop that checks PROP_VOLTAGE_NOW to ensure it has fallen below 0.8V before enabling the VBUS regulator. Change-Id: Idd3ebd185d6bbed15b6ac700cb2cf4af428210ee Signed-off-by: Jack Pham <jackp@codeaurora.org>
* | | | | | | | | Merge "usb: pd: Support Programmable Power Supply as sink"Linux Build Service Account2017-02-01
|\ \ \ \ \ \ \ \ \ | |_|/ / / / / / / |/| | | | | | | |
| * | | | | | | | usb: pd: Support Programmable Power Supply as sinkJack Pham2017-01-31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PD 3.0 version 1.1 includes a new Programmable Power Supply type that can be sent as an Augmented Power Data Object in a Source Capabilities message. Add sink-side support to request an Augmented PDO which also includes specifying the source's output output voltage and current. For userspace, overload the 'select_pdo' sysfs attribute by allowing voltage (uV) and current (uA) to be optionally written, with the following syntax: echo <src cap id> <PDO> [<uV> <uA>] > select_pdo Also rename the 'rdo' file to 'rdo_h' as it is already in human- readable format, enhance it with APDO values, and make 'rdo' simply spit out the hex value. Change-Id: If861b0f8f2f04d06299f096ff52f1e1961c1daa9 Signed-off-by: Jack Pham <jackp@codeaurora.org>
| * | | | | | | | usb: pd: Support PD Rev 3.0 for sink modeJack Pham2017-01-31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Set maximum revision support for 3.0 when starting in PE_SNK_STARTUP state. If the partner source only supports 2.0, the spec_rev will be downgraded when receiving the first Source_Capabilities message in phy_msg_received(). Add a helper to check for SinkTxOk (i.e. Rp indicates 3A) before initiating an AMS sequence from PE_SNK_READY. Currently such sequences are limited to power re-negotiation, sink-initiated data/power role swap, and initiating VDMs. Change-Id: I781c8826ded6e407297d50579d90bfd24783b164 Signed-off-by: Jack Pham <jackp@codeaurora.org>
| * | | | | | | | usb: pd: Support updating specification revisionJack Pham2017-01-31
| |/ / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | To allow for future support of PD specification revision 3.0, update the PD_MSG_HDR macro to specify the revision bits in each outgoing message header. The revision itself will be kept in the struct pdphy. Also export a PD PHY function to update the same for the auto-GoodCRC responses. For now, only Rev 2.0 is supported. Change-Id: I36e1b85f2e67597bd4fa8f0dd277374553451949 Signed-off-by: Jack Pham <jackp@codeaurora.org>
* | | | | | | | Merge "usb: gadget: Add snapshot of CCID function driver"Linux Build Service Account2017-01-31
|\ \ \ \ \ \ \ \
| * | | | | | | | usb: gadget: Add snapshot of CCID function driverHemant Kumar2017-01-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This snapshot is taken as of msm-3.18 commit: bf10764e3d1 (Merge "ARM: dts: msm: Update APC MEM ACC settings for msm8920") This USB CCID function driver will be a transport layer between the userspace CCID component and the Windows Host. Data and control commands from the Windows Host will be sent to the userspace component and vice-versa. Change-Id: Ie5eeda1550ac30cac47fd3799021598eac550652 Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
* | | | | | | | | Merge "ARM: dts: msm: Add usb master clock rate in high speed mode for msm8998"Linux Build Service Account2017-01-30
|\ \ \ \ \ \ \ \ \
| * | | | | | | | | usb: dwc3: Update core clock rate based on USB port speed.Hemant Kumar2017-01-26
| | |/ / / / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Core clock rate can be reduced or increased based on operating speeds. Controller starts in Super Speed mode (higher core clock rate) and it will operate in super or high or full or low speed upon device connection. Update the core clock rate based on bus speed to allows system to operate in better low power state (such as SVS1/SVS2 based on system configuration). High Speed rate for core clock is programmed from dtsi. Super Speed rate will be used if High speed core clock rate is not provided for backward compatibility. Change-Id: I265149d34de19ab50bd7f106a670a7112bfae384 Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
* | | | | | | | | Merge "usb: dwc3: Reset and initiate lpm while booting up with no usb cable"Linux Build Service Account2017-01-30
|\ \ \ \ \ \ \ \ \
| * | | | | | | | | usb: dwc3: Reset and initiate lpm while booting up with no usb cableHemant Kumar2017-01-26
| |/ / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Reset and initiate controller and phy low power mode to bring them to known good state during boot up. This will avoid any leakage and makes sure that DP/DM lines are in high-z state. Change-Id: I55dbe8d42ce9e56046bd7c99e17c2ec6f368c9a6 Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
* | | | | | | | | Merge "usb: gadget: f_mass_storage: Add delay before continuing status stage"Linux Build Service Account2017-01-30
|\ \ \ \ \ \ \ \ \
| * | | | | | | | | usb: gadget: f_mass_storage: Add delay before continuing status stageHemant Kumar2017-01-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There is a possibility of race between ep0 setup phase completion handler and mass storage thread. Upon set_alt if thread gets a chance to run before dwc3_ep0_delegate_req() returns USB_GADGET_DELAYED_STATUS and sets delayed_status flag to true status phase request never gets queued. This results into device enumeration failure followed by a bus resets. Fix this issue by adding delay before calling usb_composite_setup_continue() to queue the status phase request. Change-Id: Iec6cf668053af310be5171d19d204fb452e01f2a Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
* | | | | | | | | | Merge "usb: gadget: f_diag: allocate diag USB channel when not found"Linux Build Service Account2017-01-28
|\ \ \ \ \ \ \ \ \ \ | |_|/ / / / / / / / |/| | | | | | | | |
| * | | | | | | | | usb: gadget: f_diag: allocate diag USB channel when not foundLiangliang Lu2017-01-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently usb function instance driver depends on diag char driver to create the channel (using usb_diag_open api). Failing to create channel can result in enumeration failure. Avoid this dependency by creating diag channel from function instance if not available. Same channel will be reused when diag char driver creates/opens the channel. Change-Id: I11debd0189d81542762af22b3d203728d2266a42 Signed-off-by: Liangliang Lu <luliang@codeaurora.org>
* | | | | | | | | | Merge "usb: phy: snps: fix copyright information"Linux Build Service Account2017-01-21
|\ \ \ \ \ \ \ \ \ \