I feel that some info is missing from your view. DA9055 is CODEC + PMIC but with two different I2C addresses. Actually it is a case of two different chips enclosed in a single die. There is NO interconnection between CODEC and PMIC inside DA9055. To me, this seems enough reason to make two drivers independent from each other and not let one part know about the existence of other. Actually in near future, there may be three variants of this chip,
This is very similar to things like the TI palmas chips - they have multiple functions on different I2C addresses. The chip still gets instantiated a single time and then the subdevices are instantiated like a MFD by the core device.
I have had a look at palmas implementation. It seems to me that a significant change to both PMIC and CODEC drivers is required to make them inline with palmas structure. It will also need a thorough testing cycle for both. I am afraid that we may not have immediate bandwidth to accommodate this level of change. Is it possible that in first go we just fix the breakage due to name collision so that both drivers remain usable. And in second iteration, we restructure both of them as you suggested?