Commit f00a86d9 authored by Martyn Welch's avatar Martyn Welch Committed by Greg Kroah-Hartman

Staging: vme: add VME userspace driver

Adds a VME userspace access driver
Signed-off-by: default avatarMartyn Welch <martyn.welch@gefanuc.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
parent a17a75e2
...@@ -11,7 +11,7 @@ menuconfig VME ...@@ -11,7 +11,7 @@ menuconfig VME
if VME if VME
#source "drivers/staging/vme/bridges/Kconfig" #source "drivers/staging/vme/bridges/Kconfig"
#
#source "drivers/staging/vme/devices/Kconfig" source "drivers/staging/vme/devices/Kconfig"
endif # VME endif # VME
...@@ -4,4 +4,4 @@ ...@@ -4,4 +4,4 @@
obj-$(CONFIG_VME) += vme.o obj-$(CONFIG_VME) += vme.o
#obj-y += bridges/ #obj-y += bridges/
#obj-y += devices/ obj-y += devices/
comment "VME Device Drivers"
config VME_USER
tristate "VME user space access driver"
help
If you say Y here you want to be able to access a limited number of
VME windows in a manner at least semi-compatible with the interface
provided with the original driver at http://vmelinux.org/.
#
# Makefile for the VME device drivers.
#
obj-$(CONFIG_VME_USER) += vme_user.o
This diff is collapsed.
/*
* VMEbus Master Window Configuration Structure
*/
typedef struct {
char enable; /* State of Window */
unsigned long long vme_addr; /* Starting Address on the VMEbus */
unsigned long long size; /* Window Size */
vme_address_t aspace; /* Address Space */
vme_cycle_t cycle; /* Cycle properties */
vme_width_t dwidth; /* Maximum Data Width */
#if 0
char prefetchEnable; /* Prefetch Read Enable State */
int prefetchSize; /* Prefetch Read Size (Cache Lines) */
char wrPostEnable; /* Write Post State */
#endif
} vme_master_t;
/*
* IOCTL Commands and structures
*/
/* Magic number for use in ioctls */
#define VME_IOC_MAGIC 0xAE
/* VMEbus Slave Window Configuration Structure */
typedef struct {
char enable; /* State of Window */
unsigned long long vme_addr; /* Starting Address on the VMEbus */
unsigned long long size; /* Window Size */
vme_address_t aspace; /* Address Space */
vme_cycle_t cycle; /* Cycle properties */
#if 0
char wrPostEnable; /* Write Post State */
char rmwLock; /* Lock PCI during RMW Cycles */
char data64BitCapable; /* non-VMEbus capable of 64-bit Data */
#endif
} vme_slave_t;
#define VME_SET_SLAVE _IOW(VME_IOC_MAGIC, 10, vme_slave_t)
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment