]> CyberLeo.Net >> Repos - FreeBSD/releng/10.0.git/blob - sys/dev/vxge/vxgehal/vxgehal-swapper.h
- Copy stable/10 (r259064) to releng/10.0 as part of the
[FreeBSD/releng/10.0.git] / sys / dev / vxge / vxgehal / vxgehal-swapper.h
1 /*-
2  * Copyright(c) 2002-2011 Exar Corp.
3  * All rights reserved.
4  *
5  * Redistribution and use in source and binary forms, with or without
6  * modification are permitted provided the following conditions are met:
7  *
8  *    1. Redistributions of source code must retain the above copyright notice,
9  *       this list of conditions and the following disclaimer.
10  *
11  *    2. Redistributions in binary form must reproduce the above copyright
12  *       notice, this list of conditions and the following disclaimer in the
13  *       documentation and/or other materials provided with the distribution.
14  *
15  *    3. Neither the name of the Exar Corporation nor the names of its
16  *       contributors may be used to endorse or promote products derived from
17  *       this software without specific prior written permission.
18  *
19  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
20  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
21  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
22  * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
23  * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
24  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
25  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
26  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
27  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
28  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
29  * POSSIBILITY OF SUCH DAMAGE.
30  */
31 /*$FreeBSD$*/
32
33 #ifndef VXGE_HAL_SWAPPER_H
34 #define VXGE_HAL_SWAPPER_H
35
36 __EXTERN_BEGIN_DECLS
37
38 #define VXGE_HAL_SWAPPER_INITIAL_VALUE                  0x0123456789abcdefULL
39 #define VXGE_HAL_SWAPPER_BYTE_SWAPPED                   0xefcdab8967452301ULL
40 #define VXGE_HAL_SWAPPER_BIT_FLIPPED                    0x80c4a2e691d5b3f7ULL
41 #define VXGE_HAL_SWAPPER_BYTE_SWAPPED_BIT_FLIPPED       0xf7b3d591e6a2c480ULL
42
43 #define VXGE_HAL_SWAPPER_READ_BYTE_SWAP_ENABLE          0xFFFFFFFFFFFFFFFFULL
44 #define VXGE_HAL_SWAPPER_READ_BYTE_SWAP_DISABLE         0x0000000000000000ULL
45
46 #define VXGE_HAL_SWAPPER_READ_BIT_FLAP_ENABLE           0xFFFFFFFFFFFFFFFFULL
47 #define VXGE_HAL_SWAPPER_READ_BIT_FLAP_DISABLE          0x0000000000000000ULL
48
49 #define VXGE_HAL_SWAPPER_WRITE_BYTE_SWAP_ENABLE         0xFFFFFFFFFFFFFFFFULL
50 #define VXGE_HAL_SWAPPER_WRITE_BYTE_SWAP_DISABLE        0x0000000000000000ULL
51
52 #define VXGE_HAL_SWAPPER_WRITE_BIT_FLAP_ENABLE          0xFFFFFFFFFFFFFFFFULL
53 #define VXGE_HAL_SWAPPER_WRITE_BIT_FLAP_DISABLE         0x0000000000000000ULL
54
55 vxge_hal_status_e
56 __hal_legacy_swapper_set(
57     pci_dev_h pdev,
58     pci_reg_h regh,
59     vxge_hal_legacy_reg_t *legacy_reg);
60 vxge_hal_status_e
61 __hal_vpath_swapper_set(
62     vxge_hal_device_t *hldev,
63     u32 vp_id);
64
65 vxge_hal_status_e
66 __hal_kdfc_swapper_set(
67     vxge_hal_device_t *hldev,
68     u32 vp_id);
69
70 __EXTERN_END_DECLS
71
72 #endif  /* VXGE_HAL_SWAPPER_H */