⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 common_atheros_sdiostack_ar6000_wlan.patch

📁 ar6k 的WIFI驱动
💻 PATCH
📖 第 1 页 / 共 5 页
字号:
+                          A_UINT32 targ_reply_arg);+void ar6000_dset_close(void *devt, A_UINT32 access_cookie);+void ar6000_dset_data_req(void *devt,+                          A_UINT32 access_cookie,+                          A_UINT32 offset,+                          A_UINT32 length,+                          A_UINT32 targ_buf,+                          A_UINT32 targ_reply_fn,+                          A_UINT32 targ_reply_arg);++void ar6000_gpio_intr_rx(A_UINT32 intr_mask, A_UINT32 input_values);+void ar6000_gpio_data_rx(A_UINT32 reg_id, A_UINT32 value);+void ar6000_gpio_ack_rx(void);++#ifdef __cplusplus+}+#endif++#endif /* _AR6000_API_H_ */Index: linux-2.6.18/drivers/sdio/function/wlan/ar6000/include/athdrv.h===================================================================--- /dev/null+++ linux-2.6.18/drivers/sdio/function/wlan/ar6000/include/athdrv.h@@ -0,0 +1,598 @@+/*+ * Copyright (c) 2004-2006 Atheros Communications Inc.+ *+ *  Wireless Network driver for Atheros AR6001+ *+ *  This program is free software; you can redistribute it and/or modify+ *  it under the terms of the GNU General Public License version 2 as+ *  published by the Free Software Foundation;+ *+ *  Software distributed under the License is distributed on an "AS+ *  IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or+ *  implied. See the License for the specific language governing+ *  rights and limitations under the License.+ *+ *+ * This file contains the definitions for the AR6000 linux driver.+ *+ */++#ifndef _ATHDRV_H_+#define _ATHDRV_H_++#ifdef __cplusplus+extern "C" {+#endif+++/*+ * There are two types of ioctl's here: Standard ioctls and+ * eXtended ioctls.  All extended ioctls (XIOCTL) are multiplexed+ * off of the single ioctl command, AR6000_IOCTL_EXTENDED.  The+ * arguments for every XIOCTL starts with a 32-bit command word+ * that is used to select which extended ioctl is in use.  After+ * the command word are command-specific arguments.+ */++/* Linux standard Wireless Extensions, private ioctl interfaces */+#define IEEE80211_IOCTL_SETPARAM             (SIOCIWFIRSTPRIV+0)+#define IEEE80211_IOCTL_GETPARAM             (SIOCIWFIRSTPRIV+1)+#define IEEE80211_IOCTL_SETKEY               (SIOCIWFIRSTPRIV+2)+#define IEEE80211_IOCTL_SETWMMPARAMS         (SIOCIWFIRSTPRIV+3)+#define IEEE80211_IOCTL_DELKEY               (SIOCIWFIRSTPRIV+4)+#define IEEE80211_IOCTL_GETWMMPARAMS         (SIOCIWFIRSTPRIV+5)+#define IEEE80211_IOCTL_SETMLME              (SIOCIWFIRSTPRIV+6)+#define IEEE80211_IOCTL_SETOPTIE             (SIOCIWFIRSTPRIV+6)+#define IEEE80211_IOCTL_GETOPTIE             (SIOCIWFIRSTPRIV+7)+#define IEEE80211_IOCTL_ADDPMKID             (SIOCIWFIRSTPRIV+8)+//#define IEEE80211_IOCTL_SETAUTHALG           (SIOCIWFIRSTPRIV+10)+#define IEEE80211_IOCTL_LASTONE              (SIOCIWFIRSTPRIV+9)++++/*                      ====WMI Ioctls====                                    */+/*+ *+ * Many ioctls simply provide WMI services to application code:+ * an application makes such an ioctl call with a set of arguments+ * that are packaged into the corresponding WMI message, and sent+ * to the Target.+ */++#define AR6000_IOCTL_WMI_GETREV              (SIOCIWFIRSTPRIV+10)+/*+ * arguments:+ *   ar6000_version *revision+ */++#define AR6000_IOCTL_WMI_SETPWR              (SIOCIWFIRSTPRIV+11)+/*+ * arguments:+ *   WMI_POWER_MODE_CMD pwrModeCmd (see include/wmi.h)+ * uses: WMI_SET_POWER_MODE_CMDID+ */++#define AR6000_IOCTL_WMI_SETSCAN             (SIOCIWFIRSTPRIV+12)+/*+ * arguments:+ *   WMI_SCAN_PARAMS_CMD scanParams (see include/wmi.h)+ * uses: WMI_SET_SCAN_PARAMS_CMDID+ */++#define AR6000_IOCTL_WMI_SETLISTENINT        (SIOCIWFIRSTPRIV+13)+/*+ * arguments:+ *   UINT32 listenInterval+ * uses: WMI_SET_LISTEN_INT_CMDID+ */++#define AR6000_IOCTL_WMI_SETBSSFILTER        (SIOCIWFIRSTPRIV+14)+/*+ * arguments:+ *   WMI_BSS_FILTER filter (see include/wmi.h)+ * uses: WMI_SET_BSS_FILTER_CMDID+ */++#define AR6000_IOCTL_WMI_SET_CHANNELPARAMS   (SIOCIWFIRSTPRIV+16)+/*+ * arguments:+ *   WMI_CHANNEL_PARAMS_CMD chParams+ * uses: WMI_SET_CHANNEL_PARAMS_CMDID+ */++#define AR6000_IOCTL_WMI_SET_PROBEDSSID      (SIOCIWFIRSTPRIV+17)+/*+ * arguments:+ *   WMI_PROBED_SSID_CMD probedSsids (see include/wmi.h)+ * uses: WMI_SETPROBED_SSID_CMDID+ */++#define AR6000_IOCTL_WMI_SET_PMPARAMS        (SIOCIWFIRSTPRIV+18)+/*+ * arguments:+ *   WMI_POWER_PARAMS_CMD powerParams (see include/wmi.h)+ * uses: WMI_SET_POWER_PARAMS_CMDID+ */++#define AR6000_IOCTL_WMI_SET_BADAP           (SIOCIWFIRSTPRIV+19)+/*+ * arguments:+ *   WMI_ADD_BAD_AP_CMD badAPs (see include/wmi.h)+ * uses: WMI_ADD_BAD_AP_CMDID+ */++#define AR6000_IOCTL_WMI_GET_QOS_QUEUE       (SIOCIWFIRSTPRIV+20)+/*+ * arguments:+ *   ar6000_queuereq queueRequest (see below)+ */++#define AR6000_IOCTL_WMI_CREATE_QOS          (SIOCIWFIRSTPRIV+21)+/*+ * arguments:+ *   WMI_CREATE_PSTREAM createPstreamCmd (see include/wmi.h)+ * uses: WMI_CREATE_PSTREAM_CMDID+ */++#define AR6000_IOCTL_WMI_DELETE_QOS          (SIOCIWFIRSTPRIV+22)+/*+ * arguments:+ *   WMI_DELETE_PSTREAM_CMD deletePstreamCmd (see include/wmi.h)+ * uses: WMI_DELETE_PSTREAM_CMDID+ */++#define AR6000_IOCTL_WMI_SET_LINKTHRESHOLD   (SIOCIWFIRSTPRIV+23)+/*+ * arguments:+ *   WMI_RSSI_THRESHOLD_PARAMS_CMD thresholdParams (see include/wmi.h)+ * uses: WMI_RSSI_THRESHOLD_PARAMS_CMDID+ */++#define AR6000_IOCTL_WMI_SET_ERROR_REPORT_BITMASK (SIOCIWFIRSTPRIV+24)+/*+ * arguments:+ *   WMI_TARGET_ERROR_REPORT_BITMASK errorReportBitMask (see include/wmi.h)+ * uses: WMI_TARGET_ERROR_REPORT_BITMASK_CMDID+ */++#define AR6000_IOCTL_WMI_GET_TARGET_STATS    (SIOCIWFIRSTPRIV+25)+/*+ * arguments:+ *   TARGET_STATS *targetStats (see below)+ * uses: WMI_GET_STATISTICS_CMDID+ */++#define AR6000_IOCTL_WMI_SET_ASSOC_INFO      (SIOCIWFIRSTPRIV+26)+/*+ * arguments:+ *   WMI_SET_ASSOC_INFO_CMD setAssocInfoCmd+ * uses: WMI_SET_ASSOC_INFO_CMDID+ */++#define AR6000_IOCTL_WMI_SET_ACCESS_PARAMS   (SIOCIWFIRSTPRIV+27)+/*+ * arguments:+ *   WMI_SET_ACCESS_PARAMS_CMD setAccessParams (see include/wmi.h)+ * uses: WMI_SET_ACCESS_PARAMS_CMDID+ */++#define AR6000_IOCTL_WMI_SET_BMISS_TIME      (SIOCIWFIRSTPRIV+28)+/*+ * arguments:+ *   UINT32 beaconMissTime+ * uses: WMI_SET_BMISS_TIME_CMDID+ */++#define AR6000_IOCTL_WMI_SET_DISC_TIMEOUT    (SIOCIWFIRSTPRIV+29)+/*+ * arguments:+ *   WMI_DISC_TIMEOUT_CMD disconnectTimeoutCmd (see include/wmi.h)+ * uses: WMI_SET_DISC_TIMEOUT_CMDID+ */++#define AR6000_IOCTL_WMI_SET_IBSS_PM_CAPS    (SIOCIWFIRSTPRIV+30)+/*+ * arguments:+ *   WMI_IBSS_PM_CAPS_CMD ibssPowerMgmtCapsCmd+ * uses: WMI_SET_IBSS_PM_CAPS_CMDID+ */++/*+ * There is a very small space available for driver-private+ * wireless ioctls.  In order to circumvent this limitation,+ * we multiplex a bunch of ioctls (XIOCTLs) on top of a+ * single AR6000_IOCTL_EXTENDED ioctl.+ */+#define AR6000_IOCTL_EXTENDED                (SIOCIWFIRSTPRIV+31)+++/*                         ====BMI Extended Ioctls====                        */++#define AR6000_XIOCTL_BMI_DONE                 1+/*+ * arguments:+ *   UINT32 cmd (AR6000_XIOCTL_BMI_DONE)+ * uses: BMI_DONE+ */++#define AR6000_XIOCTL_BMI_READ_MEMORY          2+/*+ * arguments:+ *   union {+ *     struct {+ *       UINT32 cmd (AR6000_XIOCTL_BMI_READ_MEMORY)+ *       UINT32 address+ *       UINT32 length+ *     }+ *     char results[length]+ *   }+ * uses: BMI_READ_MEMORY+ */++#define AR6000_XIOCTL_BMI_WRITE_MEMORY         3+/*+ * arguments:+ *   UINT32 cmd (AR6000_XIOCTL_BMI_WRITE_MEMORY)+ *   UINT32 address+ *   UINT32 length+ *   char data[length]+ * uses: BMI_WRITE_MEMORY+ */++#define AR6000_XIOCTL_BMI_EXECUTE              4+/*+ * arguments:+ *   UINT32 cmd (AR6000_XIOCTL_BMI_EXECUTE)+ *   UINT32 TargetAddress+ *   UINT32 parameter+ * uses: BMI_EXECUTE+ */++#define AR6000_XIOCTL_BMI_SET_APP_START        5+/*+ * arguments:+ *   UINT32 cmd (AR6000_XIOCTL_BMI_SET_APP_START)+ *   UINT32 TargetAddress+ * uses: BMI_SET_APP_START+ */++#define AR6000_XIOCTL_BMI_READ_SOC_REGISTER    6+/*+ * arguments:+ *   union {+ *     struct {+ *       UINT32 cmd (AR6000_XIOCTL_BMI_READ_SOC_REGISTER)+ *       UINT32 TargetAddress, 32-bit aligned+ *     }+ *     UINT32 result+ *   }+ * uses: BMI_READ_SOC_REGISTER+ */++#define AR6000_XIOCTL_BMI_WRITE_SOC_REGISTER   7+/*+ * arguments:+ *     struct {+ *       UINT32 cmd (AR6000_XIOCTL_BMI_WRITE_SOC_REGISTER)+ *       UINT32 TargetAddress, 32-bit aligned+ *       UINT32 newValue+ *     }+ * uses: BMI_WRITE_SOC_REGISTER+ */++#define AR6000_XIOCTL_BMI_TEST                 8+/*+ * arguments:+ *   UINT32 cmd (AR6000_XIOCTL_BMI_TEST)+ *   UINT32 address+ *   UINT32 length+ *   UINT32 count+ */++++/*                      ====DataSet Extended Ioctls====                       */++#define AR6000_XIOCTL_WMI_DSET_WAIT_REQ        9+/*+ * arguments:+ *   UINT32 cmd (AR6000_XIOCTL_WMI_DSET_WAIT_REQ)+ */++#define AR6000_XIOCTL_WMI_DSET_OPEN_REPLY     10+/*+ * arguments:+ *   UINT32 cmd (AR6000_XIOCTL_WMI_DSET_OPEN_REPLY)+ *   dset_open_reply_t (see host/include/app/dset.h)+ * uses: WMIX_DSETOPEN_REPLY_CMDID+ */++#define AR6000_XIOCTL_WMI_DSET_DATA_REPLY     11+/*+ * arguments:+ *   UINT32 cmd (AR6000_XIOCTL_WMI_DSET_DATA_REPLY)+ *   dset_data_reply_t (see host/include/app/dset.h)+ * uses: WMIX_DSETDATA_REPLY_CMDID+ */++#define AR6000_XIOCTL_FORCE_TARGET_RESET      12+/*+ * arguments:+ *   UINT32 cmd (AR6000_XIOCTL_FORCE_TARGET_RESET)+ */+++#ifdef HTC_RAW_INTERFACE+/* HTC Raw Interface Ioctls */+#define AR6000_XIOCTL_HTC_RAW_OPEN            13+/*+ * arguments:+ *   UINT32 cmd (AR6000_XIOCTL_HTC_RAW_OPEN)+ */++#define AR6000_XIOCTL_HTC_RAW_CLOSE           14+/*+ * arguments:+ *   UINT32 cmd (AR6000_XIOCTL_HTC_RAW_CLOSE)+ */++#define AR6000_XIOCTL_HTC_RAW_READ            15+/*+ * arguments:+ *   union {+ *     struct {+ *       UINT32 cmd (AR6000_XIOCTL_HTC_RAW_READ)+ *       UINT32 mailboxID+ *       UINT32 length+ *     }+ *     results[length]+ *   }+ */++#define AR6000_XIOCTL_HTC_RAW_WRITE           16+/*+ * arguments:+ *   UINT32 cmd (AR6000_XIOCTL_HTC_RAW_WRITE)+ *   UINT32 mailboxID+ *   UINT32 length+ *   char buffer[length]+ */+#endif /* HTC_RAW_INTERFACE */++#define AR6000_XIOCTL_CHECK_TARGET_READY      17+/*+ * arguments:+ *   UINT32 cmd (AR6000_XIOCTL_CHECK_TARGET_READY)+ */++++/*                ====GPIO (General Purpose I/O) Extended Ioctls====          */++#define AR6000_XIOCTL_GPIO_OUTPUT_SET         18+/*+ * arguments:+ *   UINT32 cmd (AR6000_XIOCTL_GPIO_OUTPUT_SET)+ *   ar6000_gpio_output_set_cmd_s (see below)+ * uses: WMIX_GPIO_OUTPUT_SET_CMDID+ */++#define AR6000_XIOCTL_GPIO_INPUT_GET          19+/*+ * arguments:+ *   UINT32 cmd (AR6000_XIOCTL_GPIO_INPUT_GET)+ * uses: WMIX_GPIO_INPUT_GET_CMDID

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -