cxgb_osdep.h (167528) | cxgb_osdep.h (167560) |
---|---|
1/************************************************************************** 2 3Copyright (c) 2007, Chelsio Inc. 4All rights reserved. 5 6Redistribution and use in source and binary forms, with or without 7modification, are permitted provided that the following conditions are met: 8 --- 16 unchanged lines hidden (view full) --- 25CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 26SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 27INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 28CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 29ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 30POSSIBILITY OF SUCH DAMAGE. 31 32 | 1/************************************************************************** 2 3Copyright (c) 2007, Chelsio Inc. 4All rights reserved. 5 6Redistribution and use in source and binary forms, with or without 7modification, are permitted provided that the following conditions are met: 8 --- 16 unchanged lines hidden (view full) --- 25CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 26SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 27INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 28CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 29ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 30POSSIBILITY OF SUCH DAMAGE. 31 32 |
33$FreeBSD: head/sys/dev/cxgb/cxgb_osdep.h 167528 2007-03-14 06:40:46Z kmacy $ | 33$FreeBSD: head/sys/dev/cxgb/cxgb_osdep.h 167560 2007-03-14 16:05:39Z kmacy $ |
34 35***************************************************************************/ 36 37#include <sys/param.h> 38#include <sys/systm.h> 39#include <sys/ctype.h> 40#include <sys/endian.h> 41#include <sys/bus.h> --- 57 unchanged lines hidden (view full) --- 99 100 101#if defined(__i386__) || defined(__amd64__) 102#define mb() __asm volatile("mfence":::"memory") 103#define rmb() __asm volatile("lfence":::"memory") 104#define wmb() __asm volatile("sfence" ::: "memory") 105#define smp_mb() mb() 106 | 34 35***************************************************************************/ 36 37#include <sys/param.h> 38#include <sys/systm.h> 39#include <sys/ctype.h> 40#include <sys/endian.h> 41#include <sys/bus.h> --- 57 unchanged lines hidden (view full) --- 99 100 101#if defined(__i386__) || defined(__amd64__) 102#define mb() __asm volatile("mfence":::"memory") 103#define rmb() __asm volatile("lfence":::"memory") 104#define wmb() __asm volatile("sfence" ::: "memory") 105#define smp_mb() mb() 106 |
107#define USE_PREFETCH 108#ifdef USE_PREFETCH 109#define L1_CACHE_BYTES 64 | 107#define L1_CACHE_BYTES 32 |
110static __inline 111void prefetch(void *x) 112{ 113 __asm volatile("prefetcht0 %0" :: "m" (*(unsigned long *)x)); 114} | 108static __inline 109void prefetch(void *x) 110{ 111 __asm volatile("prefetcht0 %0" :: "m" (*(unsigned long *)x)); 112} |
115#else 116#define prefetch(x) 117#endif | 113 |
118#else /* !i386 && !amd64 */ 119#define mb() 120#define rmb() 121#define wmb() 122#define smp_mb() | 114#else /* !i386 && !amd64 */ 115#define mb() 116#define rmb() 117#define wmb() 118#define smp_mb() |
119#define prefetch(x) |
|
123#endif 124#define DBG_RX (1 << 0) 125static const int debug_flags = DBG_RX; 126 127#ifdef DEBUG_PRINT 128#define DBG(flag, msg) do { \ 129 if ((flag & debug_flags)) \ 130 printf msg; \ --- 134 unchanged lines hidden --- | 120#endif 121#define DBG_RX (1 << 0) 122static const int debug_flags = DBG_RX; 123 124#ifdef DEBUG_PRINT 125#define DBG(flag, msg) do { \ 126 if ((flag & debug_flags)) \ 127 printf msg; \ --- 134 unchanged lines hidden --- |