In reply to rag123:
It’s hard to answer this question without knowing why two separate agents/interfaces have a this kind of dependency. We would also need to know re-usability requirements, like will you ever have testbenches that test the interfaces independently?
You could certainly have a driver with two virtual interfaces.