Fix common misspellings
[GitHub/mt8127/android_kernel_alcatel_ttab.git] / drivers / staging / westbridge / astoria / include / linux / westbridge / cyasintr.h
CommitLineData
81eb669b
DC
1/* Cypress West Bridge API header file (cyasintr.h)
2## ===========================
3## Copyright (C) 2010 Cypress Semiconductor
4##
5## This program is free software; you can redistribute it and/or
6## modify it under the terms of the GNU General Public License
7## as published by the Free Software Foundation; either version 2
8## of the License, or (at your option) any later version.
9##
10## This program is distributed in the hope that it will be useful,
11## but WITHOUT ANY WARRANTY; without even the implied warranty of
12## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13## GNU General Public License for more details.
14##
15## You should have received a copy of the GNU General Public License
16## along with this program; if not, write to the Free Software
17## Foundation, Inc., 51 Franklin Street
18## Fifth Floor, Boston, MA 02110-1301, USA.
19## ===========================
20*/
21
22#ifndef _INCLUDED_CYASINTR_H_
23#define _INCLUDED_CYASINTR_H_
24
25#include "cyasdevice.h"
26
27#include "cyas_cplus_start.h"
28
29/* Summary
30 Initialize the interrupt manager module
31
32 Description
33 This function is called to initialize the interrupt module.
34 This module enables interrupts as well as servies West Bridge
35 related interrupts by determining the source of the interrupt
36 and calling the appropriate handler function.
37
38 Notes
39 If the dmaintr parameter is TRUE, the initialization code
40 initializes the interrupt mask to have the DMA related interrupt
41 enabled via the general purpose interrupt. However, the interrupt
42 service function assumes that the DMA interrupt is handled by the
43 HAL layer before the interrupt module handler function is called.
44
45 Returns
46 * CY_AS_ERROR_SUCCESS - the interrupt module was initialized
47 * correctly
48 * CY_AS_ERROR_ALREADY_RUNNING - the interrupt module was already
49 * started
50
51 See Also
52 * CyAsIntrStop
53 * CyAsServiceInterrupt
54*/
55cy_as_return_status_t
56cy_as_intr_start(
57 /* Device being initialized */
58 cy_as_device *dev_p,
59 /* If true, enable the DMA interrupt through the INT signal */
60 cy_bool dmaintr
0769c38d 61 );
81eb669b
DC
62
63/* Summary
64 Stop the interrupt manager module
65
66 Description
67 This function stops the interrupt module and masks all interrupts
68 from the West Bridge device.
69
70 Returns
71 * CY_AS_ERROR_SUCCESS - the interrupt module was stopped
25985edc 72 * successfully
81eb669b
DC
73 * CY_AS_ERROR_NOT_RUNNING - the interrupt module was not
74 * running
75
76 See Also
77 * CyAsIntrStart
78 * CyAsServiceInterrupt
79*/
80cy_as_return_status_t
81cy_as_intr_stop(
82 /* Device bein stopped */
83 cy_as_device *dev_p
0769c38d 84 );
81eb669b
DC
85
86
87/* Summary
88 The interrupt service routine for West Bridge
89
90 Description
91 When an interrupt is detected, this function is called to
92 service the West Bridge interrupt. It is safe and efficient
93 for this function to be called when no West Bridge interrupt
94 has occurred. This function will determine it is not an West
95 Bridge interrupt quickly and return.
96*/
97void cy_as_intr_service_interrupt(
98 /* The USER supplied tag for this device */
99 cy_as_hal_device_tag tag
0769c38d 100 );
81eb669b
DC
101
102#include "cyas_cplus_end.h"
103
104#endif /* _INCLUDED_CYASINTR_H_ */