kinetis: Add support for LPUART module in parallel with UART module#7362
kinetis: Add support for LPUART module in parallel with UART module#7362miri64 merged 1 commit intoRIOT-OS:masterfrom
Conversation
|
On first sight, the changes look legid to me. I will take a final look at the changes one #6994 is merged and this PR is rebased |
|
Ah, and by the way thanks for splitting those PRs! |
b19f9cd to
977444d
Compare
|
rebased |
977444d to
318abd9
Compare
|
ping @haukepetersen |
|
(CI was idle) |
e2affdc to
cd94f6f
Compare
|
Updated the UART mode handling to support LPUART as well |
8a08940 to
d76c429
Compare
d76c429 to
aaceb4f
Compare
41fd2d8 to
1ea99ef
Compare
1ea99ef to
41ab608
Compare
|
@gebart so is the whole cluster of PRs ready for review from your perspective? |
|
This PR and the board+CPU PR is ready IMO. The transceiver driver has been stable in my tests, but there may be some clean up needed yet. |
f9d2e3d to
a2da73b
Compare
6b64133 to
531243f
Compare
531243f to
e3a322d
Compare
|
@haukepetersen @emmanuelsearch This is ready for review. This is currently blocking #6995 and #7107, and it's a general pain to keep basing all my other working branches on this PR. |
A dispatcher function is implemented for directing writes to the correct function. The dispatcher is bypassed completely if the CPU only contain one kind of UART module. There are at least two different UART hardware modules deployed in different Kinetis CPU families (or possibly three or more when counting variations of the UART module). The UART module is an older 8 bit module with advanced functionality, while the LPUART is a 32 bit module with focus on low power consumption. - The older families in the K series all have UART modules. - The K22F family have both UART and LPUART modules in the same CPU. - Older L series (e.g. KL25Z) have two variations of the UART module - Newer L series (e.g. KL43Z) have LPUART modules, and sometimes UART as well. - Newer W series (KW41Z) have only LPUART
e3a322d to
00a0740
Compare
|
I have tested and reviewed what I can and found no issues so far. |
|
Re-trigger murdock just in case... |
|
Thanks! 🎉 |
Depends on
#6994Split from #6994 to make the review easier.
A dispatcher function is implemented for directing writes to the correct
function. The dispatcher is bypassed completely if the CPU only contain
one kind of UART module.
There are at least two different UART hardware modules deployed in
different Kinetis CPU families (or possibly three or more when counting
variations of the UART module). The UART module is an older 8 bit module
with advanced functionality, while the LPUART is a 32 bit module with
focus on low power consumption.
UART as well.