linux/drivers/staging/rtl8712/rtl8712_io.c
<<
>>
Prefs
   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}
 100