Since probing the size of a BAR requires writing and reading back from the address field, do it at probe time and cache the data instead of at api time. This should avoid fouling up any mmio transactions in flight.