Changeset View
Changeset View
Standalone View
Standalone View
sys/dev/ixgbe/ixgbe_osdep.c
/****************************************************************************** | /****************************************************************************** | ||||
Copyright (c) 2001-2015, Intel Corporation | Copyright (c) 2001-2017, Intel Corporation | ||||
All rights reserved. | All rights reserved. | ||||
Redistribution and use in source and binary forms, with or without | Redistribution and use in source and binary forms, with or without | ||||
modification, are permitted provided that the following conditions are met: | modification, are permitted provided that the following conditions are met: | ||||
1. Redistributions of source code must retain the above copyright notice, | 1. Redistributions of source code must retain the above copyright notice, | ||||
this list of conditions and the following disclaimer. | this list of conditions and the following disclaimer. | ||||
2. Redistributions in binary form must reproduce the above copyright | 2. Redistributions in binary form must reproduce the above copyright | ||||
notice, this list of conditions and the following disclaimer in the | notice, this list of conditions and the following disclaimer in the | ||||
documentation and/or other materials provided with the distribution. | documentation and/or other materials provided with the distribution. | ||||
3. Neither the name of the Intel Corporation nor the names of its | 3. Neither the name of the Intel Corporation nor the names of its | ||||
contributors may be used to endorse or promote products derived from | contributors may be used to endorse or promote products derived from | ||||
this software without specific prior written permission. | this software without specific prior written permission. | ||||
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" | ||||
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | ||||
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE | IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE | ||||
ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE | ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE | ||||
LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR | LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR | ||||
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF | CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF | ||||
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS | SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS | ||||
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN | INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN | ||||
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) | CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) | ||||
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE | ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE | ||||
POSSIBILITY OF SUCH DAMAGE. | POSSIBILITY OF SUCH DAMAGE. | ||||
******************************************************************************/ | ******************************************************************************/ | ||||
/*$FreeBSD$*/ | /*$FreeBSD$*/ | ||||
#include "ixgbe_osdep.h" | |||||
#include "ixgbe.h" | #include "ixgbe.h" | ||||
inline device_t | |||||
ixgbe_dev_from_hw(struct ixgbe_hw *hw) | |||||
{ | |||||
return ((struct adapter *)hw->back)->dev; | |||||
} | |||||
inline u16 | inline u16 | ||||
ixgbe_read_pci_cfg(struct ixgbe_hw *hw, u32 reg) | ixgbe_read_pci_cfg(struct ixgbe_hw *hw, u32 reg) | ||||
{ | { | ||||
return pci_read_config(((struct adapter *)hw->back)->dev, | return pci_read_config(((struct adapter *)hw->back)->dev, reg, 2); | ||||
reg, 2); | |||||
} | } | ||||
inline void | inline void | ||||
ixgbe_write_pci_cfg(struct ixgbe_hw *hw, u32 reg, u16 value) | ixgbe_write_pci_cfg(struct ixgbe_hw *hw, u32 reg, u16 value) | ||||
{ | { | ||||
pci_write_config(((struct adapter *)hw->back)->dev, | pci_write_config(((struct adapter *)hw->back)->dev, reg, value, 2); | ||||
reg, value, 2); | |||||
} | } | ||||
inline u32 | inline u32 | ||||
ixgbe_read_reg(struct ixgbe_hw *hw, u32 reg) | ixgbe_read_reg(struct ixgbe_hw *hw, u32 reg) | ||||
{ | { | ||||
return bus_space_read_4(((struct adapter *)hw->back)->osdep.mem_bus_space_tag, | return bus_space_read_4(((struct adapter *)hw->back)->osdep.mem_bus_space_tag, | ||||
((struct adapter *)hw->back)->osdep.mem_bus_space_handle, | ((struct adapter *)hw->back)->osdep.mem_bus_space_handle, reg); | ||||
reg); | |||||
} | } | ||||
inline void | inline void | ||||
ixgbe_write_reg(struct ixgbe_hw *hw, u32 reg, u32 val) | ixgbe_write_reg(struct ixgbe_hw *hw, u32 reg, u32 val) | ||||
{ | { | ||||
bus_space_write_4(((struct adapter *)hw->back)->osdep.mem_bus_space_tag, | bus_space_write_4(((struct adapter *)hw->back)->osdep.mem_bus_space_tag, | ||||
((struct adapter *)hw->back)->osdep.mem_bus_space_handle, | ((struct adapter *)hw->back)->osdep.mem_bus_space_handle, | ||||
reg, val); | reg, val); | ||||
Show All 17 Lines |