LCOV - code coverage report
Current view: top level - include/linux - crc16.h (source / functions) Hit Total Coverage
Test: combined.info Lines: 0 2 0.0 %
Date: 2022-03-28 13:20:08 Functions: 0 0 -
Branches: 0 0 -

           Branch data     Line data    Source code
       1                 :            : /* SPDX-License-Identifier: GPL-2.0-only */
       2                 :            : /*
       3                 :            :  *      crc16.h - CRC-16 routine
       4                 :            :  *
       5                 :            :  * Implements the standard CRC-16:
       6                 :            :  *   Width 16
       7                 :            :  *   Poly  0x8005 (x^16 + x^15 + x^2 + 1)
       8                 :            :  *   Init  0
       9                 :            :  *
      10                 :            :  * Copyright (c) 2005 Ben Gardner <bgardner@wabtec.com>
      11                 :            :  */
      12                 :            : 
      13                 :            : #ifndef __CRC16_H
      14                 :            : #define __CRC16_H
      15                 :            : 
      16                 :            : #include <linux/types.h>
      17                 :            : 
      18                 :            : extern u16 const crc16_table[256];
      19                 :            : 
      20                 :            : extern u16 crc16(u16 crc, const u8 *buffer, size_t len);
      21                 :            : 
      22                 :          0 : static inline u16 crc16_byte(u16 crc, const u8 data)
      23                 :            : {
      24                 :          0 :         return (crc >> 8) ^ crc16_table[(crc ^ data) & 0xff];
      25                 :            : }
      26                 :            : 
      27                 :            : #endif /* __CRC16_H */
      28                 :            : 

Generated by: LCOV version 1.14