/* Check whether there is some group that the user space has not consumed yet. When the user space consumes a group, it sets it to -1. Cosuming could be reading data in case of RX and filling a buffer in case of TX.  */
static int poch_channel_available(struct channel_info *channel)
/* Check whether there is some group that the user space has not consumed yet. When the user space consumes a group, it sets it to -1. Cosuming could be reading data in case of RX and filling a buffer in case of TX.  */
static int poch_channel_available(struct channel_info *channel)
{
	int available = 0;
	spin_lock_irq(&channel->group_offsets_lock);
	if (channel->consumed != channel->transfer)
		available = 1;
	spin_unlock_irq(&channel->group_offsets_lock);
	return available;
}