From: Ludwig Maier Date: Sun, 27 Oct 2013 21:54:47 +0000 (+0100) Subject: update X-Git-Url: https://jspc29.x-matter.uni-frankfurt.de/git/?a=commitdiff_plain;h=649ecb7e25197c6762121cf0ee1e0877618c3e00;p=trbnettools.git update --- diff --git a/pexor/kernel-module/pexor_trb.c b/pexor/kernel-module/pexor_trb.c index e5d32cd..db32b0d 100644 --- a/pexor/kernel-module/pexor_trb.c +++ b/pexor/kernel-module/pexor_trb.c @@ -20,7 +20,7 @@ #include "pexor_user.h" #include "pexor_trb.h" -//#define PEXOR_DEBUGPRINT +#define PEXOR_DEBUGPRINT //#define PEXOR_TRB_DEBUG #ifdef PEXOR_DEBUGPRINT @@ -810,11 +810,9 @@ int pexor_mmap(struct file* filp, return 0; } -inline static void iowrite32_mb(u32 val, void __iomem *addr) -{ - iowrite32(val, addr); - wmb(); -} + +#define iowrite32_mb( args... ) \ + iowrite32( args ); wmb(); int pexor_ioctl_read_register(struct pexor_privdata* priv, unsigned long arg) @@ -1228,7 +1226,7 @@ int pexor_ioctl_trbnet_request(struct pexor_privdata* priv, switch (command) { case PEXOR_TRBNETCOM_REG_WRITE: // first send trbnet request - iowrite32(0x00000000, priv->pexor.trbnet_sender_err[3]); + iowrite32_mb(0x00000000, priv->pexor.trbnet_sender_err[3]); iowrite32_mb(descriptor.reg_address, priv->pexor.trbnet_sender_data[3]); iowrite32_mb((descriptor.arg0 >> 16) & 0xffff, priv->pexor.trbnet_sender_data[3]); @@ -1253,7 +1251,7 @@ int pexor_ioctl_trbnet_request(struct pexor_privdata* priv, } // first send trbnet request - iowrite32(0x00000000, priv->pexor.trbnet_sender_err[3]); + iowrite32_mb(0x00000000, priv->pexor.trbnet_sender_err[3]); iowrite32_mb(descriptor.reg_address, priv->pexor.trbnet_sender_data[3]); iowrite32_mb(descriptor.arg0, priv->pexor.trbnet_sender_data[3]); iowrite32_mb(0x00000000, priv->pexor.trbnet_sender_data[3]); @@ -1276,7 +1274,7 @@ int pexor_ioctl_trbnet_request(struct pexor_privdata* priv, case PEXOR_TRBNETCOM_REG_READ: // first send trbnet request - iowrite32(0x00000000, priv->pexor.trbnet_sender_err[3]); + iowrite32_mb(0x00000000, priv->pexor.trbnet_sender_err[3]); iowrite32_mb(descriptor.reg_address, priv->pexor.trbnet_sender_data[3]); iowrite32_mb(0x00000000, priv->pexor.trbnet_sender_data[3]); iowrite32_mb(0x00000000, priv->pexor.trbnet_sender_data[3]); @@ -1290,7 +1288,7 @@ int pexor_ioctl_trbnet_request(struct pexor_privdata* priv, case PEXOR_TRBNETCOM_REG_READ_MEM: // first send trbnet request - iowrite32(0x00000000, priv->pexor.trbnet_sender_err[3]); + iowrite32_mb(0x00000000, priv->pexor.trbnet_sender_err[3]); iowrite32_mb(descriptor.reg_address, priv->pexor.trbnet_sender_data[3]); iowrite32_mb(descriptor.arg0, priv->pexor.trbnet_sender_data[3]); iowrite32_mb(0x00000000, priv->pexor.trbnet_sender_data[3]); @@ -1304,7 +1302,7 @@ int pexor_ioctl_trbnet_request(struct pexor_privdata* priv, case PEXOR_TRBNETCOM_READ_UID: // first send trbnet request - iowrite32(0x00000000, priv->pexor.trbnet_sender_err[3]); + iowrite32_mb(0x00000000, priv->pexor.trbnet_sender_err[3]); iowrite32_mb(PEXOR_TRB_NET_READUNIQUEID, priv->pexor.trbnet_sender_data[3]); iowrite32_mb(0x00000000, priv->pexor.trbnet_sender_data[3]); iowrite32_mb(0x00000000, priv->pexor.trbnet_sender_data[3]); @@ -1318,7 +1316,7 @@ int pexor_ioctl_trbnet_request(struct pexor_privdata* priv, case PEXOR_TRBNETCOM_SET_ADDRESS: // first send trbnet request - iowrite32(0x00000000, priv->pexor.trbnet_sender_err[3]); + iowrite32_mb(0x00000000, priv->pexor.trbnet_sender_err[3]); iowrite32_mb(PEXOR_TRB_NET_SETADDRESS, priv->pexor.trbnet_sender_data[3]); iowrite32_mb(descriptor.arg0 & 0xffff, priv->pexor.trbnet_sender_data[3]); iowrite32_mb(descriptor.arg0 >> 16 & 0xffff,