rtl8712_io.c (2482B)
1// SPDX-License-Identifier: GPL-2.0 2/****************************************************************************** 3 * rtl8712_io.c 4 * 5 * Copyright(c) 2007 - 2010 Realtek Corporation. All rights reserved. 6 * Linux device driver for RTL8192SU 7 * 8 * Modifications for inclusion into the Linux staging tree are 9 * Copyright(c) 2010 Larry Finger. All rights reserved. 10 * 11 * Contact information: 12 * WLAN FAE <wlanfae@realtek.com>. 13 * Larry Finger <Larry.Finger@lwfinger.net> 14 * 15 ******************************************************************************/ 16 17#define _RTL8712_IO_C_ 18 19#include "osdep_service.h" 20#include "drv_types.h" 21#include "rtl871x_io.h" 22#include "osdep_intf.h" 23#include "usb_ops.h" 24 25u8 r8712_read8(struct _adapter *adapter, u32 addr) 26{ 27 struct intf_hdl *hdl = &adapter->pio_queue->intf; 28 29 return hdl->io_ops._read8(hdl, addr); 30} 31 32u16 r8712_read16(struct _adapter *adapter, u32 addr) 33{ 34 struct intf_hdl *hdl = &adapter->pio_queue->intf; 35 36 return hdl->io_ops._read16(hdl, addr); 37} 38 39u32 r8712_read32(struct _adapter *adapter, u32 addr) 40{ 41 struct intf_hdl *hdl = &adapter->pio_queue->intf; 42 43 return hdl->io_ops._read32(hdl, addr); 44} 45 46void r8712_write8(struct _adapter *adapter, u32 addr, u8 val) 47{ 48 struct intf_hdl *hdl = &adapter->pio_queue->intf; 49 50 hdl->io_ops._write8(hdl, addr, val); 51} 52 53void r8712_write16(struct _adapter *adapter, u32 addr, u16 val) 54{ 55 struct intf_hdl *hdl = &adapter->pio_queue->intf; 56 57 hdl->io_ops._write16(hdl, addr, val); 58} 59 60void r8712_write32(struct _adapter *adapter, u32 addr, u32 val) 61{ 62 struct intf_hdl *hdl = &adapter->pio_queue->intf; 63 64 hdl->io_ops._write32(hdl, addr, val); 65} 66 67void r8712_read_mem(struct _adapter *adapter, u32 addr, u32 cnt, u8 *pmem) 68{ 69 struct intf_hdl *hdl = &adapter->pio_queue->intf; 70 71 if (adapter->driver_stopped || adapter->surprise_removed) 72 return; 73 74 hdl->io_ops._read_mem(hdl, addr, cnt, pmem); 75} 76 77void r8712_write_mem(struct _adapter *adapter, u32 addr, u32 cnt, u8 *pmem) 78{ 79 struct intf_hdl *hdl = &adapter->pio_queue->intf; 80 81 hdl->io_ops._write_mem(hdl, addr, cnt, pmem); 82} 83 84void r8712_read_port(struct _adapter *adapter, u32 addr, u32 cnt, u8 *pmem) 85{ 86 struct intf_hdl *hdl = &adapter->pio_queue->intf; 87 88 if (adapter->driver_stopped || adapter->surprise_removed) 89 return; 90 91 hdl->io_ops._read_port(hdl, addr, cnt, pmem); 92} 93 94void r8712_write_port(struct _adapter *adapter, u32 addr, u32 cnt, u8 *pmem) 95{ 96 struct intf_hdl *hdl = &adapter->pio_queue->intf; 97 98 hdl->io_ops._write_port(hdl, addr, cnt, pmem); 99}