Unified · Split
| @@ -106,14 +106,6 @@ static int get_vanc_line_idx(BMDDisplayMode mode) · 105 unmodified lines | |||
| 106 | return i - 1; | 106 | return i - 1; |
| 107 | } | 107 | } |
| 108 | 108 | ||
| 109 | static inline uint16_t parity (uint16_t x) | ||
| 110 | { | ||
| 111 | uint16_t i; | ||
| 112 | for (i = 4 * sizeof (x); i > 0; i /= 2) | ||
| 113 | x ^= x >> i; | ||
| 114 | return x & 1; | ||
| 115 | } | ||
| 116 | |||
| 117 | static inline void clear_parity_bits(uint16_t *buf, int len) { | 109 | static inline void clear_parity_bits(uint16_t *buf, int len) { |
| 118 | int i; | 110 | int i; |
| 119 | for (i = 0; i < len; i++) | 111 | for (i = 0; i < len; i++) |
| @@ -126,7 +118,7 @@ static int check_vanc_parity_checksum(uint16_t *buf, int len, uint16_t checksum) · 6 unmodified lines | |||
| 126 | for (i = 3; i < len - 1; i++) { | 118 | for (i = 3; i < len - 1; i++) { |
| 127 | uint16_t v = buf[i]; | 119 | uint16_t v = buf[i]; |
| 128 | int np = v >> 8; | 120 | int np = v >> 8; |
| 129 | int p = parity(v & 0xff); | 121 | int p = av_parity(v & 0xff); |
| 130 | if ((!!p ^ !!(v & 0x100)) || (np != 1 && np != 2)) { | 122 | if ((!!p ^ !!(v & 0x100)) || (np != 1 && np != 2)) { |
| 131 | // Parity check failed | 123 | // Parity check failed |
| 132 | return -1; | 124 | return -1; |