What's bothering me is that it is generally the responsibility of the end user to write the platform.request code. Ideally you'd want the end user to deal with the least amount of platform dependant code so that their code is portable across FPGA boards or even FPGA architectures.
Of course. But the entire reason you are having this problem is that you are using the platform specific primitive TSHX2DQSA, right? So it makes no sense to try and abstract over this stuff if in the end you're going to break the abstraction anyway.