The obi backend currently requires an rready signal to be present, however this is an optional signal not supported by all OBI uses.
https://github.com/pulp-platform/iDMA/blob/master/src/backend/idma_obi_read.sv#L120
https://github.com/pulp-platform/iDMA/blob/master/src/backend/idma_obi_write.sv#L167
Ideally, all requests coming from the obi read are directly acknowledged and absorbed, so the internal buffer needs to be capable of accepting all outstanding transactions. This can be implemented with a credit counter.
The write backend should be slightly easier to manage, as no data needs to be absorbed (only error information).