raiden00pl commented on issue #12653: URL: https://github.com/apache/nuttx/issues/12653#issuecomment-2219758230
Hi @LuchianMihai, improvements to stm32 are welcome, but please sync ALL stm32 families with your changes. The support for stm32 families in NuttX is a little mess, but they are all based on arch/stm32. This means that all these architectures should be modified: - arch/stm32f7 - arch/stm32h7 - arch/stm32l4 - arch/stm32l5 - arch/stm32u5 - arch/stm32wb - arch/stm32wl5 - arch/stm32f0l0g0 > up_txint guarded by SERIAL_HAVE_RXDMA_OPS define & up_rxint guarded by SERIAL_HAVE_TXDMA_OPS define, which I find odd, shouldn't it be reversed? I think this is correct. You have to consider all possible cases for DMA: 1. no RX DMA, no TX DMA 2. no RX DMA, TX DMA enabled 3. RX DMA enabled, no TX DMA 4. RX DMA enabled, TX DMA enabled The case you are writing about applies to 2 and 3, where DMA is enabled only for one direction. So up_txint is required when: 1. no dma at all 2. no TX DMA > up_*usartint functions are bit ackward to use, as stated above, I interact with two register using only one 16 bit variable. I agree this `priv->ie` looks weird. This is probably the case where something is implemented in a strange way, but it works, so it's safer not to touch it and no one had the initiative to fix it :) -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
