-
Couldn't load subscription status.
- Fork 718
USB cherry picks for NCS 2.8.0 #2063
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
jfischer-no
approved these changes
Oct 7, 2024
carlescufi
approved these changes
Oct 10, 2024
8a6ffd6 to
27b0794
Compare
Peripherals are required to support the suspend state whenever VBUS is powered, even if bus reset has not occurred (Mandate: Required, Effective Date: February, 2010). Remove the stale suspend check that essentially prevented the device from hibernating when connected to already suspended bus. (cherry picked from commit f57e78d) Signed-off-by: Tomasz Moń <[email protected]>
Adhere to programming guide steps on Hibernation Exit on Host Initiated Reset. (cherry picked from commit 508bd3e) Signed-off-by: Tomasz Moń <[email protected]>
Update the documented value range that `uart_irq_tx_ready` returns in order to provide more information to the callers about the number of bytes that could be writted with `uart_fifo_fill` without fragmentation. Signed-off-by: Jordan Yates <[email protected]> (cherry picked from commit 5bd53b6) Signed-off-by: Tomasz Moń <[email protected]>
Update the interrupt driver UART drivers that use `struct ring_buf` internally to report the number of bytes that can be pushed in `uart_fifo_fill` without fragmentation. Signed-off-by: Jordan Yates <[email protected]> (cherry picked from commit 81352d0) Signed-off-by: Tomasz Moń <[email protected]>
The async IRQ shim supports writes of any size up to the TX buffer size. Signed-off-by: Jordan Yates <[email protected]> (cherry picked from commit 3e5c72a) Signed-off-by: Tomasz Moń <[email protected]>
Update nrfx drivers with the minimum number of bytes that can be sent in a single call to `uart_fifo_fill`. Signed-off-by: Jordan Yates <[email protected]> (cherry picked from commit 0425b04) Signed-off-by: Tomasz Moń <[email protected]>
…the heading Move "Built-in functions" section down and increase the heading. Signed-off-by: Johann Fischer <[email protected]> (cherry picked from commit fc0437c) Signed-off-by: Tomasz Moń <[email protected]>
…iven UART API Align CDC ACM UART with Interrupt-driven UART API behavior description. Use the same flags in uart_irq_rx_ready(), uart_irq_tx_ready(), and uart_irq_is_pending(), which are updated after each uart_irq_update() call. Allow TX FIFO to be filled if there is space. Signed-off-by: Johann Fischer <[email protected]> (cherry picked from commit 64ee885) Signed-off-by: Tomasz Moń <[email protected]>
In general, it mirrors what is described in Interrupt-driven API documentation, but here a little more explicitly and with a simplified example, so that we can finally chisel it into the stone. Signed-off-by: Johann Fischer <[email protected]> (cherry picked from commit 1867e71) Signed-off-by: Tomasz Moń <[email protected]>
…acy implementation Apply changes in commit c152e09 ("usb: device: cdc_acm: block in uart_poll_out() routine") to the new CDC ACM UART poll_out implementation. Signed-off-by: Johann Fischer <[email protected]> (cherry picked from commit 6cf2775) Signed-off-by: Tomasz Moń <[email protected]>
… simultaneously As it is still accepted practice, allow fifo_fill and poll_out to be used simultaneously. The lock around fifo_fill was already in place. Signed-off-by: Johann Fischer <[email protected]> (cherry picked from commit ef89321) Signed-off-by: Tomasz Moń <[email protected]>
…API behavior Add note about CDC ACM virtual UART polling API behavior. Signed-off-by: Johann Fischer <[email protected]> (cherry picked from commit ece1f51) Signed-off-by: Tomasz Moń <[email protected]>
…he current MPS When the controller is connected to a full speed bus, regardless of whether the controller supports high speed or not, the transfer size for the bulk OUT endpoint should be equal to the MPS in the current configuration. Signed-off-by: Johann Fischer <[email protected]> (cherry picked from commit 4875aa3) Signed-off-by: Tomasz Moń <[email protected]>
…C ACM Use delayable work to reduce CPU load when there is no transfer flow in the host direction. This also improves the performance of poll out, as introduced in commit commit fed6bde ("usb: device: cdc_acm: send more than 1 byte in poll out") for the legacy CDC ACM implementation. Signed-off-by: Johann Fischer <[email protected]> (cherry picked from commit fe4d8a6) Signed-off-by: Tomasz Moń <[email protected]>
…ssion Verbatim from USB 2.0 specification: The Remote Wakeup field indicates whether the device is currently enabled to request remote wakeup. The default mode for devices that support remote wakeup is disabled. If D1 is reset to zero, the ability of the device to signal remote wakeup is disabled. If D1 is set to one, the ability of the device to signal remote wakeup is enabled. The Remote Wakeup field can be modified by the SetFeature() and ClearFeature() requests using the DEVICE_REMOTE_WAKEUP feature selector. This field is reset to zero when the device is reset. Signed-off-by: Benedek Kupper <[email protected]> (cherry picked from commit a6b911f) Signed-off-by: Tomasz Moń <[email protected]>
27b0794 to
9a4914b
Compare
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fixes suspend current when connected to already suspended bus and prevents possible CDC ACM endless workqueue processing.