Currently model.setup takes a config template file and prepares output that are needed for model.run i.e. these preprocessing:
forcing_io.prepare_forcing(self._config)
soil_io.prepare_soil_data(self._config)
soil_io.prepare_soil_init(self._config)
It should be possible to skip data preparation in model.setup if input data exist.