/* To work around the problem, we backup the current DABT handler address and replace it with our own DABT handler, which only bounces right back into the code.  */
static void imx_pcie_fix_dabt_handler(bool set)
/* To work around the problem, we backup the current DABT handler address and replace it with our own DABT handler, which only bounces right back into the code.  */
static void imx_pcie_fix_dabt_handler(bool set)
{
	extern uint32_t *_data_abort;
	uint32_t *data_abort_addr = (uint32_t *)&_data_abort;
	static const uint32_t data_abort_bounce_handler = 0xe25ef004;
	uint32_t data_abort_bounce_addr = (uint32_t)&data_abort_bounce_handler;
	static uint32_t data_abort_backup;
	if (set) {
		data_abort_backup = *data_abort_addr;
		*data_abort_addr = data_abort_bounce_addr;
	} else {
		*data_abort_addr = data_abort_backup;
	}
}