I've pretty much had to completely scrap your top-level logic for INTn signals and CSReg registers.
Not sure why you have RX signals dependent on TX states and vice-versa?
Would never have worked for me.