Revert "stm32_i2c: ensure that unexpected ISR can't overwrite stale data"

This reverts commit 099b2017ccfa0fc7696f168db2a0c2e13fe5edbc.

This is only a temporary measure to gain the time to apply a more complete fix without side effects.
include/cxx: Fix some bad idempotence defintions in header files
Disable -Wshadow warnings for system headers - alternatively we could use #pragma GCC system_header in those
stm32: add sw workaround for broken stm32 hw RTS implementation

adds support for manually asserting nRTS when the OS buffer is nearly full
and deasserting it when it has room again.

This makes the RTS pin actually work in a useful way (the stm32 hw
implementation is broken - it asserts nRTS as soon as more than one
character is received).

We assert nRTS from inside of up_recvchars.  For deassertion we needed
a new callback from the general serial device layer when characters
have been dequed.  onrxdeque was added to uart_ops_s for this purpose and
implemented (currently) only on the stm32.
mtd driver: add missing SPI header