improve for macro OUT_GPIO and SET_GPIO_ALT

always call INP_GPIO first