1/* SPDX-License-Identifier: BSD-3-Clause 2 * Copyright 2008-2017 Cisco Systems, Inc. All rights reserved. 3 * Copyright 2007 Nuova Systems, Inc. All rights reserved. 4 */ 5 6#ifndef _ENIC_COMPAT_H_ 7#define _ENIC_COMPAT_H_ 8 9#include <sys/param.h> 10#include <sys/socket.h> 11#include <sys/kernel.h> 12#include <sys/bus.h> 13#include <sys/module.h> 14#include <sys/rman.h> 15#include <sys/endian.h> 16#include <sys/sockio.h> 17#include <sys/priv.h> 18 19#include <machine/bus.h> 20#include <machine/resource.h> 21 22#define ETH_ALEN ETHER_ADDR_LEN 23 24#define typeof __typeof__ 25#define __iomem 26#define unlikely(x) __builtin_expect((x),0) 27 28#define le16_to_cpu 29#define le32_to_cpu 30#define le64_to_cpu 31#define cpu_to_le16 32#define cpu_to_le32 33#define cpu_to_le64 34 35#define pr_err(y, args...) dev_err(0, y, ##args) 36#define pr_warn(y, args...) dev_warning(0, y, ##args) 37#define BUG() pr_err("BUG at %s:%d", __func__, __LINE__) 38 39#define VNIC_ALIGN(x, a) __ALIGN_MASK(x, (typeof(x))(a)-1) 40#define __ALIGN_MASK(x, mask) (((x)+(mask))&~(mask)) 41#define udelay(t) DELAY(t) 42#define usleep(x) pause("ENIC usleep", ((x) * 1000000 / hz + 1)) 43 44#define dev_printk(level, fmt, args...) \ 45 printf(fmt, ## args) 46 47#define dev_err(x, args...) dev_printk(ERR, args) 48/*#define dev_info(x, args...) dev_printk(INFO, args)*/ 49#define dev_info(x, args...) 50 51#define __le16 uint16_t 52#define __le32 uint32_t 53#define __le64 uint64_t 54 55#define min_t(type, x, y) ({ \ 56 type __min1 = (x); \ 57 type __min2 = (y); \ 58 __min1 < __min2 ? __min1 : __min2; }) 59 60#define max_t(type, x, y) ({ \ 61 type __max1 = (x); \ 62 type __max2 = (y); \ 63 __max1 > __max2 ? __max1 : __max2; }) 64 65#endif /* _ENIC_COMPAT_H_ */ 66