2 * Copyright (c) 2013 Qualcomm Atheros, Inc.
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted (subject to the limitations in the
7 * disclaimer below) provided that the following conditions are met:
9 * * Redistributions of source code must retain the above copyright
10 * notice, this list of conditions and the following disclaimer.
12 * * Redistributions in binary form must reproduce the above copyright
13 * notice, this list of conditions and the following disclaimer in the
14 * documentation and/or other materials provided with the
17 * * Neither the name of Qualcomm Atheros nor the names of its
18 * contributors may be used to endorse or promote products derived
19 * from this software without specific prior written permission.
21 * NO EXPRESS OR IMPLIED LICENSES TO ANY PARTY'S PATENT RIGHTS ARE
22 * GRANTED BY THIS LICENSE. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT
23 * HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED
24 * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
25 * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
26 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
27 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
28 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
29 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
30 * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
31 * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
32 * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
33 * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
35 #ifndef __ADF_OS_PCI_PVT_H
36 #define __ADF_OS_PCI_PVT_H
40 //extern A_PCI_INIT_FUNC g_pci_init_func;
45 #define __adf_os_pci_module_init(_fn) A_PCI_INIT_FUNC g_pci_init_func = _fn;
50 #define __adf_os_pci_module_exit(_fn)
53 * initiallize the PCI driver structure
54 * Instance name will be <name>_pci_info
56 #define __adf_os_pci_set_drv_info(_name, _pci_ids, _attach, _detach, _suspend, _resume) \
62 ADF_OS_BUS_TYPE_PCI, \
68 * XXX: pci functions undone
76 __adf_os_pci_config_read8(adf_os_device_t osdev, int offset, a_uint8_t *val)
78 (*val) = wlan_pci_config_read(offset, 1);
81 * XXX:how do we know the read succeded
86 __adf_os_pci_config_write8(adf_os_device_t osdev, int offset, a_uint8_t val)
88 wlan_pci_config_write(offset, val, 1);
93 __adf_os_pci_config_read16(adf_os_device_t osdev, int offset, a_uint16_t *val)
95 (*val) = wlan_pci_config_read(offset, 2);
100 __adf_os_pci_config_write16(adf_os_device_t osdev, int offset, a_uint16_t val)
102 wlan_pci_config_write(offset, val, 2);
107 __adf_os_pci_config_read32(adf_os_device_t osdev, int offset, a_uint32_t *val)
109 (*val) = wlan_pci_config_read(offset, 4);
114 __adf_os_pci_config_write32(adf_os_device_t osdev, int offset, a_uint32_t val)
116 wlan_pci_config_write(offset, val, 4);