blob: 6ac597ffd3b9031e73b8229ef91b5e1f4520cc44 [file] [log] [blame]
Daniel Drake66bb42f2007-11-19 16:20:12 +00001/* ZD1211 USB-WLAN driver for Linux
2 *
3 * Copyright (C) 2005-2007 Ulrich Kunitz <kune@deine-taler.de>
4 * Copyright (C) 2006-2007 Daniel Drake <dsd@gentoo.org>
Daniel Drakee85d0912006-06-02 17:11:32 +01005 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with this program; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19 */
20
21#ifndef _ZD_DEF_H
22#define _ZD_DEF_H
23
24#include <linux/kernel.h>
25#include <linux/stringify.h>
26#include <linux/device.h>
Daniel Drakee85d0912006-06-02 17:11:32 +010027
Daniel Drake0ce34bc2006-12-12 01:26:11 +000028typedef u16 __nocast zd_addr_t;
29
Daniel Drakee85d0912006-06-02 17:11:32 +010030#define dev_printk_f(level, dev, fmt, args...) \
31 dev_printk(level, dev, "%s() " fmt, __func__, ##args)
32
33#ifdef DEBUG
34# define dev_dbg_f(dev, fmt, args...) \
35 dev_printk_f(KERN_DEBUG, dev, fmt, ## args)
Johannes Berg00d3f142009-02-10 21:26:00 +010036# define dev_dbg_f_limit(dev, fmt, args...) do { \
37 if (net_ratelimit()) \
38 dev_printk_f(KERN_DEBUG, dev, fmt, ## args); \
Johannes Berg570a0a72009-02-10 21:25:37 +010039} while (0)
Daniel Drakee85d0912006-06-02 17:11:32 +010040#else
41# define dev_dbg_f(dev, fmt, args...) do { (void)(dev); } while (0)
Johannes Berg570a0a72009-02-10 21:25:37 +010042# define dev_dbg_f_limit(dev, fmt, args...) do { (void)(dev); } while (0)
Daniel Drakee85d0912006-06-02 17:11:32 +010043#endif /* DEBUG */
44
45#ifdef DEBUG
46# define ZD_ASSERT(x) \
47do { \
48 if (!(x)) { \
49 pr_debug("%s:%d ASSERT %s VIOLATED!\n", \
50 __FILE__, __LINE__, __stringify(x)); \
Ulrich Kunitz741fec52006-11-22 00:05:53 +000051 dump_stack(); \
Daniel Drakee85d0912006-06-02 17:11:32 +010052 } \
53} while (0)
54#else
55# define ZD_ASSERT(x) do { } while (0)
56#endif
57
Ulrich Kunitzc48cf122006-08-12 18:00:17 +010058#ifdef DEBUG
59# define ZD_MEMCLEAR(pointer, size) memset((pointer), 0xff, (size))
60#else
61# define ZD_MEMCLEAR(pointer, size) do { } while (0)
62#endif
63
Daniel Drakee85d0912006-06-02 17:11:32 +010064#endif /* _ZD_DEF_H */