/* returns 0 if successful, or a negative error code. see vx_send_msg_nolock().  */
int vx_send_msg(struct vx_core *chip, struct vx_rmh *rmh)
/* returns 0 if successful, or a negative error code. see vx_send_msg_nolock().  */
int vx_send_msg(struct vx_core *chip, struct vx_rmh *rmh)
{
	unsigned long flags;
	int err;
	spin_lock_irqsave(&chip->lock, flags);
	err = vx_send_msg_nolock(chip, rmh);
	spin_unlock_irqrestore(&chip->lock, flags);
	return err;
}