/* Read a device register and return its value. The MCP interface must be enabled to prevent this function hanging.  */
unsigned int mcp_reg_read(struct mcp *mcp, unsigned int reg)
/* Read a device register and return its value. The MCP interface must be enabled to prevent this function hanging.  */
unsigned int mcp_reg_read(struct mcp *mcp, unsigned int reg)
{
	unsigned long flags;
	unsigned int val;
	spin_lock_irqsave(&mcp->lock, flags);
	val = mcp->ops->reg_read(mcp, reg);
	spin_unlock_irqrestore(&mcp->lock, flags);
	return val;
}