Yes, the `base` address should be `unsigned long` to support physical addresses above 4GB, but the `val` should remain `unsigned int` as this is a 32-bit quantity - this function uses `mmio_write32()` to write to a 32-bit PL011 register.