root/drivers/staging/vme/devices/vme_user.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


   1 /* SPDX-License-Identifier: GPL-2.0 */
   2 #ifndef _VME_USER_H_
   3 #define _VME_USER_H_
   4 
   5 #define VME_USER_BUS_MAX        1
   6 
   7 /*
   8  * VMEbus Master Window Configuration Structure
   9  */
  10 struct vme_master {
  11         __u32 enable;           /* State of Window */
  12         __u64 vme_addr;         /* Starting Address on the VMEbus */
  13         __u64 size;             /* Window Size */
  14         __u32 aspace;           /* Address Space */
  15         __u32 cycle;            /* Cycle properties */
  16         __u32 dwidth;           /* Maximum Data Width */
  17 #if 0
  18         char prefetchenable;            /* Prefetch Read Enable State */
  19         int prefetchsize;               /* Prefetch Read Size (Cache Lines) */
  20         char wrpostenable;              /* Write Post State */
  21 #endif
  22 } __packed;
  23 
  24 /*
  25  * IOCTL Commands and structures
  26  */
  27 
  28 /* Magic number for use in ioctls */
  29 #define VME_IOC_MAGIC 0xAE
  30 
  31 /* VMEbus Slave Window Configuration Structure */
  32 struct vme_slave {
  33         __u32 enable;           /* State of Window */
  34         __u64 vme_addr;         /* Starting Address on the VMEbus */
  35         __u64 size;             /* Window Size */
  36         __u32 aspace;           /* Address Space */
  37         __u32 cycle;            /* Cycle properties */
  38 #if 0
  39         char wrpostenable;              /* Write Post State */
  40         char rmwlock;                   /* Lock PCI during RMW Cycles */
  41         char data64bitcapable;          /* non-VMEbus capable of 64-bit Data */
  42 #endif
  43 } __packed;
  44 
  45 struct vme_irq_id {
  46         __u8 level;
  47         __u8 statid;
  48 };
  49 
  50 #define VME_GET_SLAVE _IOR(VME_IOC_MAGIC, 1, struct vme_slave)
  51 #define VME_SET_SLAVE _IOW(VME_IOC_MAGIC, 2, struct vme_slave)
  52 #define VME_GET_MASTER _IOR(VME_IOC_MAGIC, 3, struct vme_master)
  53 #define VME_SET_MASTER _IOW(VME_IOC_MAGIC, 4, struct vme_master)
  54 #define VME_IRQ_GEN _IOW(VME_IOC_MAGIC, 5, struct vme_irq_id)
  55 
  56 #endif /* _VME_USER_H_ */
  57 

/* [<][>][^][v][top][bottom][index][help] */