Add the rt linux 4.1.3-rt3 as base
[kvmfornfv.git] / kernel / drivers / net / wireless / cw1200 / hwbus.h
1 /*
2  * Common hwbus abstraction layer interface for cw1200 wireless driver
3  *
4  * Copyright (c) 2010, ST-Ericsson
5  * Author: Dmitry Tarnyagin <dmitry.tarnyagin@lockless.no>
6  *
7  * This program is free software; you can redistribute it and/or modify
8  * it under the terms of the GNU General Public License version 2 as
9  * published by the Free Software Foundation.
10  */
11
12 #ifndef CW1200_HWBUS_H
13 #define CW1200_HWBUS_H
14
15 struct hwbus_priv;
16
17 void cw1200_irq_handler(struct cw1200_common *priv);
18
19 /* This MUST be wrapped with hwbus_ops->lock/unlock! */
20 int __cw1200_irq_enable(struct cw1200_common *priv, int enable);
21
22 struct hwbus_ops {
23         int (*hwbus_memcpy_fromio)(struct hwbus_priv *self, unsigned int addr,
24                                         void *dst, int count);
25         int (*hwbus_memcpy_toio)(struct hwbus_priv *self, unsigned int addr,
26                                         const void *src, int count);
27         void (*lock)(struct hwbus_priv *self);
28         void (*unlock)(struct hwbus_priv *self);
29         size_t (*align_size)(struct hwbus_priv *self, size_t size);
30         int (*power_mgmt)(struct hwbus_priv *self, bool suspend);
31 };
32
33 #endif /* CW1200_HWBUS_H */