plasma_atomic.h - multi-statement macro safety

plasma_atomic.h - multi-statement macro safety
wrap multi-statement macro values in do { ... } while (0)
to ensure single statement and proper compilation even if
macro is use in conditional statements without curly brackets
(e.g. if (x) macro1; else macro2; (which might result in compile error))
doc: benefits of using do { } while (0) in macros