You don't have to do int2ptr for mmio or absolute addresses, you can punt that to the linker.
extern struct uart UART0;
Then place that symbol at address X in your linker script.