-
Notifications
You must be signed in to change notification settings - Fork 29
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
This driver is based on a fork of the TivaRailcomDriver; the hardware interaction is rewritten to use the STM32 HAL libraries and in part direct access to the USART peripheral. A major difference is that unlike the Tiva, the STM32 devices do not have a FIFO on the UART hardware. This makes it impossible to only perform reads from the UART data registers when the cutout is done. To work around this issue, the STM32 Railcom Driver uses DMA to copy the data from the UART hardware register into the buffer in the driver. This requires a free DMA channel for each railcom channel that is in use. Misc changes: - Implements toggle() in STM32 GPIO driver. - Adds a limit to how many buffers the RailcomToOpenlcbDebugProxy is willing to allocate. When we run out of buffers, we drop the packet to the floor. === * Rename includes and guard. * Fixes incorrect include for railcom implementation header. * Adds another instruction to libatomic. * Implements stm32 railcom driver (forked from the basis of tivarailcom). * Implements toggle() in stm32gpio. * Limits the number of buffers that the railcom debug port is willing to allocate. * Implements the STM32 railcom driver (this is a diff from the forked tiva railcom driver) * Support nullptr parent when using the constructor with more arguments. * Makes detecting a locomotive asymmetric, with fewer positive confirmations needed for reporting the address than how many empty packets are needed to report block empty. * Reserves 1 kbytes of space at the top of RAM for the interrupt stack. Clears this RAM to all zeros at the beginning of the run, so that we can verify that the heap did not grow into the interrupt stack. * Fix review comments including whitespace and hanging braces. switch minmax repeat counts to more intuitive definitions without double counting.
- Loading branch information
1 parent
b9207af
commit 3f6afa0
Showing
8 changed files
with
347 additions
and
178 deletions.
There are no files selected for viewing
This file contains 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
This file contains 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
This file contains 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
This file contains 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
This file contains 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
This file contains 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
This file contains 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
Oops, something went wrong.