arch/tiva: Serial TIOCxBRK BSD-compatible BREAK support #8475
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.
Summary
In the lower half UART driver for Tiva architecture (TM4C12x), adding the
TIOCxBRK
ioctl calls, which allow an application to transmit a BSD compatible line BREAK.TIOCSBRK
starts the BREAK andTIOCCBRK
ends it.This architecture supports BSD-style BREAK in hardware. We write to the BRK bit (bit 0) of the UART Line Control register (UARTLCRH) to start the BREAK, which begins after the UART finishes shifting out the current character in progress, if any, including its stop bit(s), and continues indefinitely until we write to the BRK bit again to stop the BREAK.
Impact
When new Kconfig option
TIVA_UART_BREAKS
is activated,TIOCSBRK
andTIOCCBRK
ioctl calls are supported on Tiva architectures. When not activated, no effect.Testing
Custom board.