/* Status Register (Read Only): Driver will read this register to get the ready/busy status of the IPC block and error status of the IPC command that was just processed by SCU Format: |rfu3(8)|error code(8)|initiator id(8)|cmd id(4)|rfu1(2)|error(1)|busy(1)|  */
static int scu_ipc_check_status(struct ipc_regs *regs)
/* Status Register (Read Only): Driver will read this register to get the ready/busy status of the IPC block and error status of the IPC command that was just processed by SCU Format: |rfu3(8)|error code(8)|initiator id(8)|cmd id(4)|rfu1(2)|error(1)|busy(1)|  */
static int scu_ipc_check_status(struct ipc_regs *regs)
{
	int loop_count = 100000;
	int status;
	do {
		status = readl(&regs->status);
		if (!(status & BIT(0)))
			break;
		udelay(1);
	} while (--loop_count);
	if (!loop_count)
		return -ETIMEDOUT;
	if (status & BIT(1)) {
		printf("%s() status=0x%08x\n", __func__, status);
		return -EIO;
	}
	return 0;
}