linux/drivers/staging/rtl8723bs/include/osdep_intf.h
<<
>>
Prefs
   1/* SPDX-License-Identifier: GPL-2.0 */
   2/******************************************************************************
   3 *
   4 * Copyright(c) 2007 - 2011 Realtek Corporation. All rights reserved.
   5 *
   6 ******************************************************************************/
   7
   8#ifndef __OSDEP_INTF_H_
   9#define __OSDEP_INTF_H_
  10
  11
  12struct intf_priv {
  13
  14        u8 *intf_dev;
  15        u32 max_iosz;   /* USB2.0: 128, USB1.1: 64, SDIO:64 */
  16        u32 max_xmitsz; /* USB2.0: unlimited, SDIO:512 */
  17        u32 max_recvsz; /* USB2.0: unlimited, SDIO:512 */
  18
  19        volatile u8 *io_rwmem;
  20        volatile u8 *allocated_io_rwmem;
  21        u32 io_wsz; /* unit: 4bytes */
  22        u32 io_rsz;/* unit: 4bytes */
  23        u8 intf_status;
  24
  25        void (*_bus_io)(u8 *priv);
  26
  27/*
  28Under Sync. IRP (SDIO/USB)
  29A protection mechanism is necessary for the io_rwmem(read/write protocol)
  30
  31Under Async. IRP (SDIO/USB)
  32The protection mechanism is through the pending queue.
  33*/
  34
  35        _mutex ioctl_mutex;
  36};
  37
  38
  39#ifdef CONFIG_R871X_TEST
  40int rtw_start_pseudo_adhoc(struct adapter *padapter);
  41int rtw_stop_pseudo_adhoc(struct adapter *padapter);
  42#endif
  43
  44struct dvobj_priv *devobj_init(void);
  45void devobj_deinit(struct dvobj_priv *pdvobj);
  46
  47u8 rtw_init_drv_sw(struct adapter *padapter);
  48u8 rtw_free_drv_sw(struct adapter *padapter);
  49void rtw_reset_drv_sw(struct adapter *padapter);
  50void rtw_dev_unload(struct adapter *padapter);
  51
  52u32 rtw_start_drv_threads(struct adapter *padapter);
  53void rtw_stop_drv_threads(struct adapter *padapter);
  54void rtw_cancel_all_timer(struct adapter *padapter);
  55
  56int rtw_ioctl(struct net_device *dev, struct ifreq *rq, int cmd);
  57
  58int rtw_init_netdev_name(struct net_device *pnetdev, const char *ifname);
  59struct net_device *rtw_init_netdev(struct adapter *padapter);
  60void rtw_unregister_netdevs(struct dvobj_priv *dvobj);
  61
  62u16 rtw_recv_select_queue(struct sk_buff *skb);
  63
  64int rtw_ndev_notifier_register(void);
  65void rtw_ndev_notifier_unregister(void);
  66
  67void rtw_ips_dev_unload(struct adapter *padapter);
  68
  69int rtw_ips_pwr_up(struct adapter *padapter);
  70void rtw_ips_pwr_down(struct adapter *padapter);
  71
  72int rtw_drv_register_netdev(struct adapter *padapter);
  73void rtw_ndev_destructor(_nic_hdl ndev);
  74
  75int rtw_suspend_common(struct adapter *padapter);
  76int rtw_resume_common(struct adapter *padapter);
  77
  78#endif  /* _OSDEP_INTF_H_ */
  79