summaryrefslogtreecommitdiff
path: root/pci-arbiter/pcifs.h
diff options
context:
space:
mode:
authorDamien Zammit <damien@zamaudio.com>2019-11-03 21:35:57 +0100
committerSamuel Thibault <samuel.thibault@ens-lyon.org>2019-11-03 21:37:57 +0100
commitb160d6f3b3cdcd6a293c33cd89dcc46ab54c3264 (patch)
treebabcc0b5db069672277131e914beef6d6b4dddc5 /pci-arbiter/pcifs.h
parent084e5a86e5eca77cec49e08e0d83fe8266eca91b (diff)
pci-arbiter: Use libpciaccess instead of embedding it
This patch removes all embedded pciaccess code from the arbiter and instead uses the external pciaccess library. * pci-arbiter/Makefile: * Remove pci_access.c and x86_pci.c from the sources. * pci-arbiter/func_files.c: * io_config_file: Use a harcoded PCI config size. * read_rom_file: Grab the full rom first, then return the requested amount. * pci-arbiter/main.c: * main: Call create_fs_tree() w/o pci_sys. Since it's not part of the translator anymore. * pci-arbiter/netfs_impl.c: * netfs_attempt_read: Send pci_device_cfg_read() as the read op. * netfs_attempt_write: Send pci_device_cfg_write() as the write op. * pci-arbiter/pci-ops.c: * S_pci_conf_read: Call libpciaccess' pci_device_cfg_read(). * S_pci_conf_write: Call libpciaccess' pci_device_cfg_write(). * S_pci_get_dev_rom: Set rom.base_addr to zero for the moment, until libpciaccess esposes it properly. * pci-arbiter/pci_access.c: Deleted * pci-arbiter/pci_access.h: Deleted * pci-arbiter/pcifs.c: * create_fs_tree: Remove the pci_sys parameter. Use libpciaccess' iterator. Use a hardcoded config space size. * pci-arbiter/pcifs.h: Definitions for changes in pcifs.c. * pci-arbiter/x86_pci.c: Deleted. * pci-arbiter/x86_pci.h: Deleted.
Diffstat (limited to 'pci-arbiter/pcifs.h')
-rw-r--r--pci-arbiter/pcifs.h11
1 files changed, 7 insertions, 4 deletions
diff --git a/pci-arbiter/pcifs.h b/pci-arbiter/pcifs.h
index 7a35c77d..deb57b06 100644
--- a/pci-arbiter/pcifs.h
+++ b/pci-arbiter/pcifs.h
@@ -27,8 +27,11 @@
#include <pthread.h>
#include <maptime.h>
-#include "pci_access.h"
-#include "netfs_impl.h"
+#include <pciaccess.h>
+// FIXME: Hardcoded PCI config size
+#define PCI_CONFIG_SIZE 256
+
+#include <netfs_impl.h>
/* Size of a directory entry name */
#ifndef NAME_SIZE
@@ -200,9 +203,9 @@ volatile struct mapped_time_value *pcifs_maptime;
/* FS manipulation functions */
error_t alloc_file_system (struct pcifs **fs);
error_t init_file_system (file_t underlying_node, struct pcifs *fs);
-error_t create_fs_tree (struct pcifs *fs, struct pci_system *pci_sys);
+error_t create_fs_tree (struct pcifs *fs);
error_t fs_set_permissions (struct pcifs *fs);
error_t entry_check_perms (struct iouser *user, struct pcifs_dirent *e,
- int flags);
+ int flags);
#endif /* PCIFS_H */