AIGER is a format for And-Inverter Graphs (AIGs). See http://fmv.jku.at/aiger/ for details. AIGER is used in the Hardware Model Checking Competition (HWMCC), therefore all solvers competing in the competition have to support the format. The example in this directory is using super_prove as solver. Check http://downloads.bvsrc.org/super_prove/ for the lates release. (See https://bitbucket.org/sterin/super_prove_build for sources.) The "demo.sh" script in this directory expects a "super_prove" executable in the PATH. E.g. extract the release to /usr/local/libexec/super_prove and then create a /usr/local/bin/super_prove file with the following contents (and "chmod +x" that file): #!/bin/bash exec /usr/local/libexec/super_prove/bin/super_prove.sh "$@" The "demo.sh" script also expects the "z3" SMT2 solver in the PATH for converting the witness file generated by super_prove to VCD using yosys-smtbmc. See https://github.com/Z3Prover/z3 for install notes. ster' selected='selected'>master [no description]
aboutsummaryrefslogtreecommitdiffstats
path: root/include/hwaccess_x86_io.h
blob: 31d1e86c8ffd72ac15cd6d289910682d70e2615f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
/*
 * This file is part of the flashrom project.
 *
 * Copyright (C) 2009 Carl-Daniel Hailfinger
 * Copyright (C) 2022 secunet Security Networks AG
 * (Written by Thomas Heijligen <thomas.heijligen@secunet.com)
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation; version 2 of the License.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 */

/*
 * This file contains prototypes for x86 I/O Port access.
 */

#ifndef __HWACCESS_X86_IO_H__
#define __HWACCESS_X86_IO_H__ 1

#include <stdint.h>
/**
 */
int rget_io_perms(void);

void OUTB(uint8_t value, uint16_t port);
void OUTW(uint16_t value, uint16_t port);
void OUTL(uint32_t value, uint16_t port);
uint8_t INB(uint16_t port);
uint16_t INW(uint16_t port);
uint32_t INL(uint16_t port);

#endif /* __HWACCESS_X86_IO_H__ */