/* can_remove_receive(PktP,P) returns non-zero if PKT_IN_USE is set for the next packet on the queue. It will also set PktP to point to the relevant packet, . If PKT_IN_USE is clear, then can_remove_receive() returns 0.  */
int can_remove_receive(struct PKT __iomem **PktP, struct Port *PortP)
/* can_remove_receive(PktP,P) returns non-zero if PKT_IN_USE is set for the next packet on the queue. It will also set PktP to point to the relevant packet, . If PKT_IN_USE is clear, then can_remove_receive() returns 0.  */
int can_remove_receive(struct PKT __iomem **PktP, struct Port *PortP)
{
	if (readw(PortP->RxRemove) & PKT_IN_USE) {
		*PktP = (struct PKT __iomem *) RIO_PTR(PortP->Caddr, readw(PortP->RxRemove) & ~PKT_IN_USE);
		return 1;
	}
	return 0;
}