| .. | .. |
|---|
| 1 | | -/****************************************************************************** |
|---|
| 2 | | - * |
|---|
| 3 | | - * Copyright(c) 2009-2014 Realtek Corporation. |
|---|
| 4 | | - * |
|---|
| 5 | | - * This program is free software; you can redistribute it and/or modify it |
|---|
| 6 | | - * under the terms of version 2 of the GNU General Public License as |
|---|
| 7 | | - * published by the Free Software Foundation. |
|---|
| 8 | | - * |
|---|
| 9 | | - * This program is distributed in the hope that it will be useful, but WITHOUT |
|---|
| 10 | | - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or |
|---|
| 11 | | - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for |
|---|
| 12 | | - * more details. |
|---|
| 13 | | - * |
|---|
| 14 | | - * The full GNU General Public License is included in this distribution in the |
|---|
| 15 | | - * file called LICENSE. |
|---|
| 16 | | - * |
|---|
| 17 | | - * Contact Information: |
|---|
| 18 | | - * wlanfae <wlanfae@realtek.com> |
|---|
| 19 | | - * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, |
|---|
| 20 | | - * Hsinchu 300, Taiwan. |
|---|
| 21 | | - * Larry Finger <Larry.Finger@lwfinger.net> |
|---|
| 22 | | - * |
|---|
| 23 | | - *****************************************************************************/ |
|---|
| 1 | +/* SPDX-License-Identifier: GPL-2.0 */ |
|---|
| 2 | +/* Copyright(c) 2009-2014 Realtek Corporation.*/ |
|---|
| 24 | 3 | |
|---|
| 25 | 4 | #ifndef __RTL92E__FW__H__ |
|---|
| 26 | 5 | #define __RTL92E__FW__H__ |
|---|
| .. | .. |
|---|
| 132 | 111 | (u32)(((_len) >> 7) + ((_len) & 0x7F ? 1 : 0)) |
|---|
| 133 | 112 | |
|---|
| 134 | 113 | #define SET_H2CCMD_PWRMODE_PARM_MODE(__ph2ccmd, __val) \ |
|---|
| 135 | | - SET_BITS_TO_LE_1BYTE(__ph2ccmd, 0, 8, __val) |
|---|
| 114 | + *(u8 *)__ph2ccmd = __val; |
|---|
| 136 | 115 | #define SET_H2CCMD_PWRMODE_PARM_RLBM(__cmd, __val) \ |
|---|
| 137 | | - SET_BITS_TO_LE_1BYTE((__cmd)+1, 0, 4, __val) |
|---|
| 116 | + u8p_replace_bits(__cmd + 1, __val, GENMASK(3, 0)) |
|---|
| 138 | 117 | #define SET_H2CCMD_PWRMODE_PARM_SMART_PS(__cmd, __val) \ |
|---|
| 139 | | - SET_BITS_TO_LE_1BYTE((__cmd)+1, 4, 4, __val) |
|---|
| 118 | + u8p_replace_bits(__cmd + 1, __val, GENMASK(7, 4)) |
|---|
| 140 | 119 | #define SET_H2CCMD_PWRMODE_PARM_AWAKE_INTERVAL(__cmd, __val) \ |
|---|
| 141 | | - SET_BITS_TO_LE_1BYTE((__cmd)+2, 0, 8, __val) |
|---|
| 120 | + *(u8 *)(__cmd + 2) = __val; |
|---|
| 142 | 121 | #define SET_H2CCMD_PWRMODE_PARM_ALL_QUEUE_UAPSD(__cmd, __val) \ |
|---|
| 143 | | - SET_BITS_TO_LE_1BYTE((__cmd)+3, 0, 8, __val) |
|---|
| 122 | + *(u8 *)(__cmd + 3) = __val; |
|---|
| 144 | 123 | #define SET_H2CCMD_PWRMODE_PARM_PWR_STATE(__cmd, __val) \ |
|---|
| 145 | | - SET_BITS_TO_LE_1BYTE((__cmd)+4, 0, 8, __val) |
|---|
| 124 | + *(u8 *)(__cmd + 4) = __val; |
|---|
| 146 | 125 | #define SET_H2CCMD_PWRMODE_PARM_BYTE5(__cmd, __val) \ |
|---|
| 147 | | - SET_BITS_TO_LE_1BYTE((__cmd) + 5, 0, 8, __val) |
|---|
| 148 | | -#define GET_92E_H2CCMD_PWRMODE_PARM_MODE(__cmd) \ |
|---|
| 149 | | - LE_BITS_TO_1BYTE(__cmd, 0, 8) |
|---|
| 126 | + *(u8 *)(__cmd + 5) = __val; |
|---|
| 150 | 127 | |
|---|
| 151 | | -#define SET_H2CCMD_JOINBSSRPT_PARM_OPMODE(__ph2ccmd, __val) \ |
|---|
| 152 | | - SET_BITS_TO_LE_1BYTE(__ph2ccmd, 0, 8, __val) |
|---|
| 153 | 128 | #define SET_H2CCMD_RSVDPAGE_LOC_PROBE_RSP(__ph2ccmd, __val) \ |
|---|
| 154 | | - SET_BITS_TO_LE_1BYTE(__ph2ccmd, 0, 8, __val) |
|---|
| 129 | + *(u8 *)__ph2ccmd = __val; |
|---|
| 155 | 130 | #define SET_H2CCMD_RSVDPAGE_LOC_PSPOLL(__ph2ccmd, __val) \ |
|---|
| 156 | | - SET_BITS_TO_LE_1BYTE((__ph2ccmd)+1, 0, 8, __val) |
|---|
| 131 | + *(u8 *)(__ph2ccmd + 1) = __val; |
|---|
| 157 | 132 | #define SET_H2CCMD_RSVDPAGE_LOC_NULL_DATA(__ph2ccmd, __val) \ |
|---|
| 158 | | - SET_BITS_TO_LE_1BYTE((__ph2ccmd)+2, 0, 8, __val) |
|---|
| 133 | + *(u8 *)(__ph2ccmd + 2) = __val; |
|---|
| 159 | 134 | #define SET_H2CCMD_RSVDPAGE_LOC_QOS_NULL_DATA(__ph2ccmd, __val) \ |
|---|
| 160 | | - SET_BITS_TO_LE_1BYTE((__ph2ccmd) + 3, 0, 8, __val) |
|---|
| 135 | + *(u8 *)(__ph2ccmd + 3) = __val; |
|---|
| 161 | 136 | #define SET_H2CCMD_RSVDPAGE_LOC_BT_QOS_NULL_DATA(__ph2ccmd, __val) \ |
|---|
| 162 | | - SET_BITS_TO_LE_1BYTE((__ph2ccmd) + 4, 0, 8, __val) |
|---|
| 137 | + *(u8 *)(__ph2ccmd + 4) = __val; |
|---|
| 163 | 138 | |
|---|
| 164 | 139 | /* _MEDIA_STATUS_RPT_PARM_CMD1 */ |
|---|
| 165 | 140 | #define SET_H2CCMD_MSRRPT_PARM_OPMODE(__cmd, __val) \ |
|---|
| 166 | | - SET_BITS_TO_LE_1BYTE(__cmd, 0, 1, __val) |
|---|
| 141 | + u8p_replace_bits(__cmd, __val, BIT(0)) |
|---|
| 167 | 142 | #define SET_H2CCMD_MSRRPT_PARM_MACID_IND(__cmd, __val) \ |
|---|
| 168 | | - SET_BITS_TO_LE_1BYTE(__cmd, 1, 1, __val) |
|---|
| 143 | + u8p_replace_bits(__cmd, __val, BIT(1)) |
|---|
| 169 | 144 | #define SET_H2CCMD_MSRRPT_PARM_MACID(__cmd, __val) \ |
|---|
| 170 | | - SET_BITS_TO_LE_1BYTE(__cmd+1, 0, 8, __val) |
|---|
| 145 | + *(u8 *)(__ph2ccmd + 1) = __val; |
|---|
| 171 | 146 | #define SET_H2CCMD_MSRRPT_PARM_MACID_END(__cmd, __val) \ |
|---|
| 172 | | - SET_BITS_TO_LE_1BYTE(__cmd+2, 0, 8, __val) |
|---|
| 147 | + *(u8 *)(__ph2ccmd + 2) = __val; |
|---|
| 173 | 148 | |
|---|
| 174 | 149 | int rtl92ee_download_fw(struct ieee80211_hw *hw, bool buse_wake_on_wlan_fw); |
|---|
| 175 | 150 | void rtl92ee_fill_h2c_cmd(struct ieee80211_hw *hw, u8 element_id, |
|---|