Back to home page

OSCL-LXR

 
 

    


0001 // SPDX-License-Identifier: GPL-2.0
0002 #include <linux/io.h>
0003 #include <linux/export.h>
0004 
0005 /**
0006  *  check_signature     -   find BIOS signatures
0007  *  @io_addr: mmio address to check
0008  *  @signature:  signature block
0009  *  @length: length of signature
0010  *
0011  *  Perform a signature comparison with the mmio address io_addr. This
0012  *  address should have been obtained by ioremap.
0013  *  Returns 1 on a match.
0014  */
0015 
0016 int check_signature(const volatile void __iomem *io_addr,
0017             const unsigned char *signature, int length)
0018 {
0019     while (length--) {
0020         if (readb(io_addr) != *signature)
0021             return 0;
0022         io_addr++;
0023         signature++;
0024     }
0025     return 1;
0026 }
0027 EXPORT_SYMBOL(check_signature);