Lines Matching refs:bitptr

88 void mad_bit_init(struct mad_bitptr *bitptr, unsigned char const *byte)  in mad_bit_init()  argument
90 bitptr->byte = byte; in mad_bit_init()
91 bitptr->cache = 0; in mad_bit_init()
92 bitptr->left = CHAR_BIT; in mad_bit_init()
110 unsigned char const *mad_bit_nextbyte(struct mad_bitptr const *bitptr) in mad_bit_nextbyte() argument
112 return bitptr->left == CHAR_BIT ? bitptr->byte : bitptr->byte + 1; in mad_bit_nextbyte()
119 void mad_bit_skip(struct mad_bitptr *bitptr, unsigned int len) in mad_bit_skip() argument
121 bitptr->byte += len / CHAR_BIT; in mad_bit_skip()
122 bitptr->left -= len % CHAR_BIT; in mad_bit_skip()
124 if (bitptr->left > CHAR_BIT) { in mad_bit_skip()
125 bitptr->byte++; in mad_bit_skip()
126 bitptr->left += CHAR_BIT; in mad_bit_skip()
129 if (bitptr->left < CHAR_BIT) in mad_bit_skip()
130 bitptr->cache = *bitptr->byte; in mad_bit_skip()
137 unsigned long mad_bit_read(struct mad_bitptr *bitptr, unsigned int len) in mad_bit_read() argument
141 if (bitptr->left == CHAR_BIT) in mad_bit_read()
142 bitptr->cache = *bitptr->byte; in mad_bit_read()
144 if (len < bitptr->left) { in mad_bit_read()
145 value = (bitptr->cache & ((1 << bitptr->left) - 1)) >> in mad_bit_read()
146 (bitptr->left - len); in mad_bit_read()
147 bitptr->left -= len; in mad_bit_read()
154 value = bitptr->cache & ((1 << bitptr->left) - 1); in mad_bit_read()
155 len -= bitptr->left; in mad_bit_read()
157 bitptr->byte++; in mad_bit_read()
158 bitptr->left = CHAR_BIT; in mad_bit_read()
163 value = (value << CHAR_BIT) | *bitptr->byte++; in mad_bit_read()
168 bitptr->cache = *bitptr->byte; in mad_bit_read()
170 value = (value << len) | (bitptr->cache >> (CHAR_BIT - len)); in mad_bit_read()
171 bitptr->left -= len; in mad_bit_read()
182 void mad_bit_write(struct mad_bitptr *bitptr, unsigned int len,
187 ptr = (unsigned char *) bitptr->byte;
197 unsigned short mad_bit_crc(struct mad_bitptr bitptr, unsigned int len, in mad_bit_crc() argument
205 data = mad_bit_read(&bitptr, 32); in mad_bit_crc()
215 crc_table[((crc >> 8) ^ mad_bit_read(&bitptr, 8)) & 0xff]; in mad_bit_crc()
217 crc_table[((crc >> 8) ^ mad_bit_read(&bitptr, 8)) & 0xff]; in mad_bit_crc()
219 crc_table[((crc >> 8) ^ mad_bit_read(&bitptr, 8)) & 0xff]; in mad_bit_crc()
229 msb = mad_bit_read(&bitptr, 1) ^ (crc >> 15); in mad_bit_crc()