is ait better to use a macro than a function since function adds up to code size while a macros does not
some one suggested using macros like
#define READ_REG32(address) *(unsigned int *) address
#define WRITE_REG32(address, value) *(unsigned int *) address = value
instead of functions to read or write registers