linux/drivers/staging/r8188eu/include/rtw_ioctl.h
<<
>>
Prefs
   1/* SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause */
   2/* Copyright(c) 2007 - 2011 Realtek Corporation. */
   3
   4#ifndef _RTW_IOCTL_H_
   5#define _RTW_IOCTL_H_
   6
   7#include "osdep_service.h"
   8#include "drv_types.h"
   9
  10#ifndef OID_802_11_CAPABILITY
  11        #define OID_802_11_CAPABILITY   0x0d010122
  12#endif
  13
  14#ifndef OID_802_11_PMKID
  15        #define OID_802_11_PMKID        0x0d010123
  16#endif
  17
  18/*  For DDK-defined OIDs */
  19#define OID_NDIS_SEG1   0x00010100
  20#define OID_NDIS_SEG2   0x00010200
  21#define OID_NDIS_SEG3   0x00020100
  22#define OID_NDIS_SEG4   0x01010100
  23#define OID_NDIS_SEG5   0x01020100
  24#define OID_NDIS_SEG6   0x01020200
  25#define OID_NDIS_SEG7   0xFD010100
  26#define OID_NDIS_SEG8   0x0D010100
  27#define OID_NDIS_SEG9   0x0D010200
  28#define OID_NDIS_SEG10  0x0D020200
  29
  30#define SZ_OID_NDIS_SEG1        23
  31#define SZ_OID_NDIS_SEG2        3
  32#define SZ_OID_NDIS_SEG3        6
  33#define SZ_OID_NDIS_SEG4        6
  34#define SZ_OID_NDIS_SEG5        4
  35#define SZ_OID_NDIS_SEG6        8
  36#define SZ_OID_NDIS_SEG7        7
  37#define SZ_OID_NDIS_SEG8        36
  38#define SZ_OID_NDIS_SEG9        24
  39#define SZ_OID_NDIS_SEG10       19
  40
  41/*  For Realtek-defined OIDs */
  42#define OID_MP_SEG1             0xFF871100
  43#define OID_MP_SEG2             0xFF818000
  44
  45#define OID_MP_SEG3             0xFF818700
  46#define OID_MP_SEG4             0xFF011100
  47
  48enum oid_type {
  49        QUERY_OID,
  50        SET_OID
  51};
  52
  53struct oid_funs_node {
  54        unsigned int oid_start; /* the starting number for OID */
  55        unsigned int oid_end; /* the ending number for OID */
  56        struct oid_obj_priv *node_array;
  57        unsigned int array_sz; /* the size of node_array */
  58        int query_counter; /* count the number of query hits for this segment */
  59        int set_counter; /* count the number of set hits for this segment */
  60};
  61
  62struct oid_par_priv {
  63        void            *adapter_context;
  64        NDIS_OID        oid;
  65        void            *information_buf;
  66        u32             information_buf_len;
  67        u32             *bytes_rw;
  68        u32             *bytes_needed;
  69        enum oid_type   type_of_oid;
  70        u32             dbg;
  71};
  72
  73struct oid_obj_priv {
  74        unsigned char   dbg; /*  0: without OID debug message
  75                              *  1: with OID debug message */
  76        int (*oidfuns)(struct oid_par_priv *poid_par_priv);
  77};
  78
  79extern struct iw_handler_def  rtw_handlers_def;
  80
  81int drv_query_info(struct  net_device *miniportadaptercontext, NDIS_OID oid,
  82                   void *informationbuffer, u32 informationbufferlength,
  83                   u32 *byteswritten, u32 *bytesneeded);
  84
  85int drv_set_info(struct  net_device *MiniportAdapterContext,
  86                 NDIS_OID oid, void *informationbuffer,
  87                 u32 informationbufferlength, u32 *bytesread,
  88                 u32 *bytesneeded);
  89
  90extern int ui_pid[3];
  91
  92#endif /*  #ifndef __INC_CEINFO_ */
  93