Lines Matching refs:parser
561 struct ff400_msg_parser *parser = ff->msg_parser;
563 return (parser->push_pos != parser->pull_pos);
658 struct ff400_msg_parser *parser = ff->msg_parser;
660 parser->msgs[parser->push_pos].msg = quad;
661 parser->msgs[parser->push_pos].tstamp = tstamp;
662 ++parser->push_pos;
663 if (parser->push_pos >= FF400_QUEUE_SIZE)
664 parser->push_pos = 0;
684 struct ff400_msg_parser *parser = ff->msg_parser;
688 if (count < sizeof(ev) || parser->pull_pos == parser->push_pos)
694 while (count >= sizeof(*parser->msgs) && parser->pull_pos != parser->push_pos) {
696 if (copy_to_user(buf + consumed, parser->msgs + parser->pull_pos,
697 sizeof(*parser->msgs)))
703 ++parser->pull_pos;
704 if (parser->pull_pos >= FF400_QUEUE_SIZE)
705 parser->pull_pos = 0;
707 count -= sizeof(*parser->msgs);
708 consumed += sizeof(*parser->msgs);