Lines Matching defs:seqbuf

15 struct seqbuf {
21 static void seqbuf_init(struct seqbuf *seqbuf, void *buf, size_t size)
23 seqbuf->buf = buf;
24 seqbuf->size = size;
25 seqbuf->pos = 0;
28 static size_t seqbuf_avail(struct seqbuf *seqbuf)
30 return seqbuf->pos < seqbuf->size ? seqbuf->size - seqbuf->pos : 0;
33 static size_t seqbuf_status(struct seqbuf *seqbuf)
35 return seqbuf->pos <= seqbuf->size ? 0 : -EOVERFLOW;
38 static int seqbuf_eof(struct seqbuf *seqbuf)
40 return seqbuf->pos >= seqbuf->size;
43 static int seqbuf_read(struct seqbuf *seqbuf, void *buf, size_t nbyte)
45 nbyte = min(nbyte, seqbuf_avail(seqbuf));
46 memcpy(buf, seqbuf->buf + seqbuf->pos, nbyte);
47 seqbuf->pos += nbyte;
48 return seqbuf_status(seqbuf);
51 static int seqbuf_read_u32(struct seqbuf *seqbuf, u32 *v)
53 return seqbuf_read(seqbuf, v, 4);
56 static int seqbuf_read_str(struct seqbuf *seqbuf, const char **str)
58 *str = seqbuf->buf + seqbuf->pos;
59 seqbuf->pos += strnlen(*str, seqbuf_avail(seqbuf));
60 seqbuf->pos++;
61 return seqbuf_status(seqbuf);
64 static void seqbuf_seek(struct seqbuf *seqbuf, ssize_t offset)
66 seqbuf->pos += offset;
411 struct seqbuf seqbuf;
433 seqbuf_init(&seqbuf, buf, dsize);
435 while (!seqbuf_eof(&seqbuf)) {
436 err = seqbuf_read_u32(&seqbuf, &attrs);
440 err = seqbuf_read_str(&seqbuf, &name);
690 static int bpmp_populate_dir(struct tegra_bpmp *bpmp, struct seqbuf *seqbuf,
698 while (!seqbuf_eof(seqbuf)) {
699 err = seqbuf_read_u32(seqbuf, &d);
704 seqbuf_seek(seqbuf, -4);
712 err = seqbuf_read_u32(seqbuf, &t);
715 err = seqbuf_read_str(seqbuf, &name);
723 err = bpmp_populate_dir(bpmp, seqbuf, dentry, depth+1);
744 struct seqbuf seqbuf;
764 seqbuf_init(&seqbuf, virt, nbytes);
765 err = bpmp_populate_dir(bpmp, &seqbuf, bpmp->debugfs_mirror, 0);