Home
last modified time | relevance | path

Searched full:ie (Results 1 – 25 of 2236) sorted by relevance

12345678910>>...90

/kernel/linux/linux-6.6/drivers/net/wireless/marvell/mwifiex/
Die.c3 * NXP Wireless LAN device driver: management IE handling- setting and
4 * deleting IE.
11 /* This function checks if current IE index is used by any on other interface.
12 * Return: -1: yes, current IE index is used by someone else.
13 * 0: no, current IE index is NOT used by other interface.
20 struct mwifiex_ie *ie; in mwifiex_ie_index_used_by_other_intf() local
24 ie = &adapter->priv[i]->mgmt_ie[idx]; in mwifiex_ie_index_used_by_other_intf()
25 if (ie->mgmt_subtype_mask && ie->ie_length) in mwifiex_ie_index_used_by_other_intf()
33 /* Get unused IE index. This index will be used for setting new IE */
36 struct mwifiex_ie *ie, u16 *index) in mwifiex_ie_get_autoidx() argument
[all …]
/kernel/linux/linux-5.10/drivers/net/wireless/marvell/mwifiex/
Die.c2 * NXP Wireless LAN device driver: management IE handling- setting and
3 * deleting IE.
23 /* This function checks if current IE index is used by any on other interface.
24 * Return: -1: yes, current IE index is used by someone else.
25 * 0: no, current IE index is NOT used by other interface.
32 struct mwifiex_ie *ie; in mwifiex_ie_index_used_by_other_intf() local
36 ie = &adapter->priv[i]->mgmt_ie[idx]; in mwifiex_ie_index_used_by_other_intf()
37 if (ie->mgmt_subtype_mask && ie->ie_length) in mwifiex_ie_index_used_by_other_intf()
45 /* Get unused IE index. This index will be used for setting new IE */
48 struct mwifiex_ie *ie, u16 *index) in mwifiex_ie_get_autoidx() argument
[all …]
/kernel/linux/linux-5.10/fs/ntfs/
Dindex.c115 INDEX_ENTRY *ie; in ntfs_index_lookup() local
165 ie = (INDEX_ENTRY*)((u8*)&ir->index + in ntfs_index_lookup()
171 for (;; ie = (INDEX_ENTRY*)((u8*)ie + le16_to_cpu(ie->length))) { in ntfs_index_lookup()
173 if ((u8*)ie < (u8*)actx->mrec || (u8*)ie + in ntfs_index_lookup()
175 (u8*)ie + le16_to_cpu(ie->length) > index_end) in ntfs_index_lookup()
181 if (ie->flags & INDEX_ENTRY_END) in ntfs_index_lookup()
185 le16_to_cpu(ie->key_length) > in ntfs_index_lookup()
186 le16_to_cpu(ie->data.vi.data_offset) || in ntfs_index_lookup()
187 (u32)le16_to_cpu(ie->data.vi.data_offset) + in ntfs_index_lookup()
188 le16_to_cpu(ie->data.vi.data_length) > in ntfs_index_lookup()
[all …]
Ddir.c74 INDEX_ENTRY *ie; in ntfs_lookup_inode_by_name() local
117 ie = (INDEX_ENTRY*)((u8*)&ir->index + in ntfs_lookup_inode_by_name()
123 for (;; ie = (INDEX_ENTRY*)((u8*)ie + le16_to_cpu(ie->length))) { in ntfs_lookup_inode_by_name()
125 if ((u8*)ie < (u8*)ctx->mrec || (u8*)ie + in ntfs_lookup_inode_by_name()
127 (u8*)ie + le16_to_cpu(ie->key_length) > in ntfs_lookup_inode_by_name()
134 if (ie->flags & INDEX_ENTRY_END) in ntfs_lookup_inode_by_name()
144 (ntfschar*)&ie->key.file_name.file_name, in ntfs_lookup_inode_by_name()
145 ie->key.file_name.file_name_length, in ntfs_lookup_inode_by_name()
158 if (ie->key.file_name.file_name_type == FILE_NAME_DOS) { in ntfs_lookup_inode_by_name()
168 ie->data.dir.indexed_file); in ntfs_lookup_inode_by_name()
[all …]
/kernel/linux/linux-6.6/fs/ntfs/
Dindex.c115 INDEX_ENTRY *ie; in ntfs_index_lookup() local
165 ie = (INDEX_ENTRY*)((u8*)&ir->index + in ntfs_index_lookup()
171 for (;; ie = (INDEX_ENTRY*)((u8*)ie + le16_to_cpu(ie->length))) { in ntfs_index_lookup()
173 if ((u8*)ie < (u8*)actx->mrec || (u8*)ie + in ntfs_index_lookup()
175 (u8*)ie + le16_to_cpu(ie->length) > index_end) in ntfs_index_lookup()
181 if (ie->flags & INDEX_ENTRY_END) in ntfs_index_lookup()
185 le16_to_cpu(ie->key_length) > in ntfs_index_lookup()
186 le16_to_cpu(ie->data.vi.data_offset) || in ntfs_index_lookup()
187 (u32)le16_to_cpu(ie->data.vi.data_offset) + in ntfs_index_lookup()
188 le16_to_cpu(ie->data.vi.data_length) > in ntfs_index_lookup()
[all …]
Ddir.c74 INDEX_ENTRY *ie; in ntfs_lookup_inode_by_name() local
117 ie = (INDEX_ENTRY*)((u8*)&ir->index + in ntfs_lookup_inode_by_name()
123 for (;; ie = (INDEX_ENTRY*)((u8*)ie + le16_to_cpu(ie->length))) { in ntfs_lookup_inode_by_name()
125 if ((u8*)ie < (u8*)ctx->mrec || (u8*)ie + in ntfs_lookup_inode_by_name()
127 (u8*)ie + le16_to_cpu(ie->key_length) > in ntfs_lookup_inode_by_name()
134 if (ie->flags & INDEX_ENTRY_END) in ntfs_lookup_inode_by_name()
144 (ntfschar*)&ie->key.file_name.file_name, in ntfs_lookup_inode_by_name()
145 ie->key.file_name.file_name_length, in ntfs_lookup_inode_by_name()
158 if (ie->key.file_name.file_name_type == FILE_NAME_DOS) { in ntfs_lookup_inode_by_name()
168 ie->data.dir.indexed_file); in ntfs_lookup_inode_by_name()
[all …]
/kernel/linux/linux-5.10/drivers/net/ethernet/chelsio/cxgb/
Dvsc7326_reg.h68 * ie = 0 for ingress, 1 for egress
71 #define REG_TEST(ie,fn) CRA(0x2,ie&1,0x00+fn) /* Mode & Test Register */ argument
72 #define REG_TOP_BOTTOM(ie,fn) CRA(0x2,ie&1,0x10+fn) /* FIFO Buffer Top & Bottom */ argument
73 #define REG_TAIL(ie,fn) CRA(0x2,ie&1,0x20+fn) /* FIFO Write Pointer */ argument
74 #define REG_HEAD(ie,fn) CRA(0x2,ie&1,0x30+fn) /* FIFO Read Pointer */ argument
75 #define REG_HIGH_LOW_WM(ie,fn) CRA(0x2,ie&1,0x40+fn) /* Flow Control Water Marks */ argument
76 #define REG_CT_THRHLD(ie,fn) CRA(0x2,ie&1,0x50+fn) /* Cut Through Threshold */ argument
77 #define REG_FIFO_DROP_CNT(ie,fn) CRA(0x2,ie&1,0x60+fn) /* Drop & CRC Error Counter */ argument
78 #define REG_DEBUG_BUF_CNT(ie,fn) CRA(0x2,ie&1,0x70+fn) /* Input Side Debug Counter */ argument
83 * ie = 0 for ingress, 1 for egress
[all …]
/kernel/linux/linux-6.6/drivers/net/ethernet/chelsio/cxgb/
Dvsc7326_reg.h68 * ie = 0 for ingress, 1 for egress
71 #define REG_TEST(ie,fn) CRA(0x2,ie&1,0x00+fn) /* Mode & Test Register */ argument
72 #define REG_TOP_BOTTOM(ie,fn) CRA(0x2,ie&1,0x10+fn) /* FIFO Buffer Top & Bottom */ argument
73 #define REG_TAIL(ie,fn) CRA(0x2,ie&1,0x20+fn) /* FIFO Write Pointer */ argument
74 #define REG_HEAD(ie,fn) CRA(0x2,ie&1,0x30+fn) /* FIFO Read Pointer */ argument
75 #define REG_HIGH_LOW_WM(ie,fn) CRA(0x2,ie&1,0x40+fn) /* Flow Control Water Marks */ argument
76 #define REG_CT_THRHLD(ie,fn) CRA(0x2,ie&1,0x50+fn) /* Cut Through Threshold */ argument
77 #define REG_FIFO_DROP_CNT(ie,fn) CRA(0x2,ie&1,0x60+fn) /* Drop & CRC Error Counter */ argument
78 #define REG_DEBUG_BUF_CNT(ie,fn) CRA(0x2,ie&1,0x70+fn) /* Input Side Debug Counter */ argument
83 * ie = 0 for ingress, 1 for egress
[all …]
/kernel/linux/linux-6.6/drivers/dma/idxd/
Dsubmit.c73 static struct idxd_desc *list_abort_desc(struct idxd_wq *wq, struct idxd_irq_entry *ie, in list_abort_desc() argument
78 lockdep_assert_held(&ie->list_lock); in list_abort_desc()
79 list_for_each_entry_safe(d, n, &ie->work_list, list) { in list_abort_desc()
95 static void llist_abort_desc(struct idxd_wq *wq, struct idxd_irq_entry *ie, in llist_abort_desc() argument
107 spin_lock(&ie->list_lock); in llist_abort_desc()
108 head = llist_del_all(&ie->pending_llist); in llist_abort_desc()
119 list_add_tail(&d->list, &ie->work_list); in llist_abort_desc()
124 found = list_abort_desc(wq, ie, desc); in llist_abort_desc()
125 spin_unlock(&ie->list_lock); in llist_abort_desc()
169 struct idxd_irq_entry *ie = NULL; in idxd_submit_desc() local
[all …]
/kernel/linux/linux-5.10/drivers/staging/rtl8712/
Dieee80211.c39 * for adhoc-master to generate ie and provide supported-rate to fw
164 u8 *ie = dev_network->IEs; in r8712_generate_ie() local
169 ie += sz; in r8712_generate_ie()
171 *(__le16 *)ie = cpu_to_le16(beaconPeriod); in r8712_generate_ie()
173 ie += 2; in r8712_generate_ie()
175 *(u16 *)ie = 0; in r8712_generate_ie()
176 *(__le16 *)ie |= cpu_to_le16(cap_IBSS); in r8712_generate_ie()
178 *(__le16 *)ie |= cpu_to_le16(cap_ShortPremble); in r8712_generate_ie()
180 *(__le16 *)ie |= cpu_to_le16(cap_Privacy); in r8712_generate_ie()
182 ie += 2; in r8712_generate_ie()
[all …]
/kernel/linux/linux-6.6/drivers/staging/rtl8712/
Dieee80211.c39 * for adhoc-master to generate ie and provide supported-rate to fw
164 u8 *ie = dev_network->IEs; in r8712_generate_ie() local
169 ie += sz; in r8712_generate_ie()
171 *(__le16 *)ie = cpu_to_le16(beacon_period); in r8712_generate_ie()
173 ie += 2; in r8712_generate_ie()
175 *(u16 *)ie = 0; in r8712_generate_ie()
176 *(__le16 *)ie |= cpu_to_le16(WLAN_CAPABILITY_IBSS); in r8712_generate_ie()
178 *(__le16 *)ie |= cpu_to_le16(WLAN_CAPABILITY_SHORT_PREAMBLE); in r8712_generate_ie()
180 *(__le16 *)ie |= cpu_to_le16(WLAN_CAPABILITY_PRIVACY); in r8712_generate_ie()
182 ie += 2; in r8712_generate_ie()
[all …]
/kernel/linux/linux-6.6/drivers/staging/rtl8723bs/core/
Drtw_ieee80211.c35 /* for adhoc-master to generate ie and provide supported-rate to fw */
163 * rtw_get_ie_ex - Search specific IE from a series of IEs
169 …* @ie: If not NULL and the specific IE is found, the IE will be copied to the buf starting from th…
170 * @ielen: If not NULL and the specific IE is found, will set to the length of the entire IE
172 * Returns: The address of the specific IE found, or NULL
174 u8 *rtw_get_ie_ex(u8 *in_ie, uint in_len, u8 eid, u8 *oui, u8 oui_len, u8 *ie, uint *ielen) in rtw_get_ie_ex() argument
192 if (ie) in rtw_get_ie_ex()
193 memcpy(ie, &in_ie[cnt], in_ie[cnt+1]+2); in rtw_get_ie_ex()
289 u8 *ie = pdev_network->ies; in rtw_generate_ie() local
293 ie += sz; in rtw_generate_ie()
[all …]
/kernel/linux/linux-6.6/drivers/net/wireless/realtek/rtw89/
Dps.c293 struct rtw89_p2p_noa_ie *ie = &setter->ie; in rtw89_p2p_noa_renew() local
294 struct rtw89_p2p_ie_head *p2p_head = &ie->p2p_head; in rtw89_p2p_noa_renew()
295 struct rtw89_noa_attr_head *noa_head = &ie->noa_head; in rtw89_p2p_noa_renew()
302 memset(ie, 0, sizeof(*ie)); in rtw89_p2p_noa_renew()
321 struct rtw89_p2p_noa_ie *ie = &setter->ie; in rtw89_p2p_noa_append() local
322 struct rtw89_p2p_ie_head *p2p_head = &ie->p2p_head; in rtw89_p2p_noa_append()
323 struct rtw89_noa_attr_head *noa_head = &ie->noa_head; in rtw89_p2p_noa_append()
334 ie->noa_desc[setter->noa_count++] = *desc; in rtw89_p2p_noa_append()
340 struct rtw89_p2p_noa_ie *ie = &setter->ie; in rtw89_p2p_noa_fetch() local
346 *data = ie; in rtw89_p2p_noa_fetch()
[all …]
/kernel/linux/linux-5.10/drivers/net/wireless/realtek/rtlwifi/
Dps.c711 u8 *pos, *end, *ie; in rtl_p2p_noa_ie() local
719 ie = NULL; in rtl_p2p_noa_ie()
727 ie = pos + 2+4; in rtl_p2p_noa_ie()
734 if (ie == NULL) in rtl_p2p_noa_ie()
737 /*to find noa ie*/ in rtl_p2p_noa_ie()
738 while (ie + 1 < end) { in rtl_p2p_noa_ie()
739 noa_len = le16_to_cpu(*((__le16 *)&ie[1])); in rtl_p2p_noa_ie()
740 if (ie + 3 + ie[1] > end) in rtl_p2p_noa_ie()
743 if (ie[0] == 12) { in rtl_p2p_noa_ie()
756 noa_index = ie[3]; in rtl_p2p_noa_ie()
[all …]
/kernel/linux/linux-6.6/drivers/net/wireless/realtek/rtlwifi/
Dps.c711 u8 *pos, *end, *ie; in rtl_p2p_noa_ie() local
719 ie = NULL; in rtl_p2p_noa_ie()
727 ie = pos + 2+4; in rtl_p2p_noa_ie()
734 if (ie == NULL) in rtl_p2p_noa_ie()
737 /*to find noa ie*/ in rtl_p2p_noa_ie()
738 while (ie + 1 < end) { in rtl_p2p_noa_ie()
739 noa_len = le16_to_cpu(*((__le16 *)&ie[1])); in rtl_p2p_noa_ie()
740 if (ie + 3 + ie[1] > end) in rtl_p2p_noa_ie()
743 if (ie[0] == 12) { in rtl_p2p_noa_ie()
756 noa_index = ie[3]; in rtl_p2p_noa_ie()
[all …]
/kernel/linux/linux-5.10/net/wireless/
Dwext-sme.c31 wdev->wext.connect.ie = wdev->wext.ie; in cfg80211_mgd_wext_connect()
215 const u8 *ie; in cfg80211_mgd_wext_giwessid() local
218 ie = ieee80211_bss_get_ie(&wdev->current_bss->pub, in cfg80211_mgd_wext_giwessid()
220 if (ie) { in cfg80211_mgd_wext_giwessid()
222 data->length = ie[1]; in cfg80211_mgd_wext_giwessid()
226 memcpy(ssid, ie + 2, data->length); in cfg80211_mgd_wext_giwessid()
318 u8 *ie = extra; in cfg80211_wext_siwgenie() local
325 ie = NULL; in cfg80211_wext_siwgenie()
332 memcmp(wdev->wext.ie, ie, ie_len) == 0) in cfg80211_wext_siwgenie()
336 ie = kmemdup(extra, ie_len, GFP_KERNEL); in cfg80211_wext_siwgenie()
[all …]
/kernel/linux/linux-5.10/drivers/staging/rtl8723bs/core/
Drtw_ieee80211.c36 /* for adhoc-master to generate ie and provide supported-rate to fw */
173 * rtw_get_ie_ex - Search specific IE from a series of IEs
179 …* @ie: If not NULL and the specific IE is found, the IE will be copied to the buf starting from th…
180 * @ielen: If not NULL and the specific IE is found, will set to the length of the entire IE
182 * Returns: The address of the specific IE found, or NULL
184 u8 *rtw_get_ie_ex(u8 *in_ie, uint in_len, u8 eid, u8 *oui, u8 oui_len, u8 *ie, uint *ielen) in rtw_get_ie_ex() argument
202 if (ie) in rtw_get_ie_ex()
203 memcpy(ie, &in_ie[cnt], in_ie[cnt+1]+2); in rtw_get_ie_ex()
306 u8 *ie = pdev_network->IEs; in rtw_generate_ie() local
310 ie += sz; in rtw_generate_ie()
[all …]
/kernel/linux/linux-5.10/drivers/staging/rtl8188eu/core/
Drtw_ieee80211.c39 /* for adhoc-master to generate ie and provide supported-rate to fw */
212 u8 *ie = pdev_network->ies; in rtw_generate_ie() local
216 ie += sz; in rtw_generate_ie()
219 *(__le16 *)ie = cpu_to_le16((u16)pdev_network->Configuration.BeaconPeriod);/* BCN_INTERVAL; */ in rtw_generate_ie()
221 ie += 2; in rtw_generate_ie()
224 *(u16 *)ie = 0; in rtw_generate_ie()
226 *(__le16 *)ie |= cpu_to_le16(cap_IBSS); in rtw_generate_ie()
229 *(__le16 *)ie |= cpu_to_le16(cap_ShortPremble); in rtw_generate_ie()
232 *(__le16 *)ie |= cpu_to_le16(cap_Privacy); in rtw_generate_ie()
235 ie += 2; in rtw_generate_ie()
[all …]
/kernel/linux/linux-6.6/drivers/net/wireless/marvell/libertas/
Dmesh.c91 struct mrvl_meshie *ie; in lbs_mesh_config() local
95 ie = (struct mrvl_meshie *)cmd.data; in lbs_mesh_config()
99 ie->id = WLAN_EID_VENDOR_SPECIFIC; in lbs_mesh_config()
100 ie->val.oui[0] = 0x00; in lbs_mesh_config()
101 ie->val.oui[1] = 0x50; in lbs_mesh_config()
102 ie->val.oui[2] = 0x43; in lbs_mesh_config()
103 ie->val.type = MARVELL_MESH_IE_TYPE; in lbs_mesh_config()
104 ie->val.subtype = MARVELL_MESH_IE_SUBTYPE; in lbs_mesh_config()
105 ie->val.version = MARVELL_MESH_IE_VERSION; in lbs_mesh_config()
106 ie->val.active_protocol_id = MARVELL_MESH_PROTO_ID_HWMP; in lbs_mesh_config()
[all …]
/kernel/linux/linux-5.10/drivers/net/wireless/marvell/libertas/
Dmesh.c91 struct mrvl_meshie *ie; in lbs_mesh_config() local
95 ie = (struct mrvl_meshie *)cmd.data; in lbs_mesh_config()
99 ie->id = WLAN_EID_VENDOR_SPECIFIC; in lbs_mesh_config()
100 ie->val.oui[0] = 0x00; in lbs_mesh_config()
101 ie->val.oui[1] = 0x50; in lbs_mesh_config()
102 ie->val.oui[2] = 0x43; in lbs_mesh_config()
103 ie->val.type = MARVELL_MESH_IE_TYPE; in lbs_mesh_config()
104 ie->val.subtype = MARVELL_MESH_IE_SUBTYPE; in lbs_mesh_config()
105 ie->val.version = MARVELL_MESH_IE_VERSION; in lbs_mesh_config()
106 ie->val.active_protocol_id = MARVELL_MESH_PROTO_ID_HWMP; in lbs_mesh_config()
[all …]
/kernel/linux/linux-6.6/drivers/net/wireless/ath/ath10k/
Dp2p.c23 /* P2P IE */ in ath10k_p2p_noa_ie_fill()
70 static void ath10k_p2p_noa_ie_assign(struct ath10k_vif *arvif, void *ie, in ath10k_p2p_noa_ie_assign() argument
79 arvif->u.ap.noa_data = ie; in ath10k_p2p_noa_ie_assign()
87 void *ie; in __ath10k_p2p_noa_update() local
98 ie = kmalloc(len, GFP_ATOMIC); in __ath10k_p2p_noa_update()
99 if (!ie) in __ath10k_p2p_noa_update()
102 ath10k_p2p_noa_ie_fill(ie, len, noa); in __ath10k_p2p_noa_update()
103 ath10k_p2p_noa_ie_assign(arvif, ie, len); in __ath10k_p2p_noa_update()
/kernel/linux/linux-5.10/drivers/net/wireless/ath/ath10k/
Dp2p.c23 /* P2P IE */ in ath10k_p2p_noa_ie_fill()
70 static void ath10k_p2p_noa_ie_assign(struct ath10k_vif *arvif, void *ie, in ath10k_p2p_noa_ie_assign() argument
79 arvif->u.ap.noa_data = ie; in ath10k_p2p_noa_ie_assign()
87 void *ie; in __ath10k_p2p_noa_update() local
98 ie = kmalloc(len, GFP_ATOMIC); in __ath10k_p2p_noa_update()
99 if (!ie) in __ath10k_p2p_noa_update()
102 ath10k_p2p_noa_ie_fill(ie, len, noa); in __ath10k_p2p_noa_update()
103 ath10k_p2p_noa_ie_assign(arvif, ie, len); in __ath10k_p2p_noa_update()
/kernel/linux/linux-6.6/drivers/net/wireless/intersil/orinoco/
Dscan.c80 u8 *ie; in orinoco_add_hostscan_result() local
97 ie = ie_buf + len + 2; in orinoco_add_hostscan_result()
101 ie_len += symbol_build_supp_rates(ie, bss->s.rates); in orinoco_add_hostscan_result()
105 ie_len += prism_build_supp_rates(ie, bss->p.rates); in orinoco_add_hostscan_result()
140 const u8 *ie; in orinoco_add_extscan_result() local
149 ie = cfg80211_find_ie(WLAN_EID_DS_PARAMS, bss->data, ie_len); in orinoco_add_extscan_result()
150 chan = ie ? ie[2] : 0; in orinoco_add_extscan_result()
157 ie = bss->data; in orinoco_add_extscan_result()
162 beacon_interval, ie, ie_len, signal, in orinoco_add_extscan_result()
/kernel/linux/linux-5.10/drivers/net/wireless/intersil/orinoco/
Dscan.c80 u8 *ie; in orinoco_add_hostscan_result() local
97 ie = ie_buf + len + 2; in orinoco_add_hostscan_result()
101 ie_len += symbol_build_supp_rates(ie, bss->s.rates); in orinoco_add_hostscan_result()
105 ie_len += prism_build_supp_rates(ie, bss->p.rates); in orinoco_add_hostscan_result()
140 const u8 *ie; in orinoco_add_extscan_result() local
149 ie = cfg80211_find_ie(WLAN_EID_DS_PARAMS, bss->data, ie_len); in orinoco_add_extscan_result()
150 chan = ie ? ie[2] : 0; in orinoco_add_extscan_result()
157 ie = bss->data; in orinoco_add_extscan_result()
162 beacon_interval, ie, ie_len, signal, in orinoco_add_extscan_result()
/kernel/linux/linux-5.10/Documentation/block/
Dinline-encryption.rst26 We want to support inline encryption (IE) in the kernel.
28 IE hardware is absent. We also want IE to work with layered devices
29 like dm and loopback (i.e. we want to be able to use the IE hardware
37 - IE hardware has a limited number of "keyslots" that can be programmed
60 While IE hardware works on the notion of keyslots, the FS layer has no
65 encryption contexts specified by the FS to keyslots on the IE hardware.
66 This KSM also serves as the way IE hardware can expose its capabilities to
68 to support IE will construct a KSM and set it up in its struct request_queue.
69 Upper layers that want to use IE on this device can then use this KSM in
72 that the device supports IE.
[all …]

12345678910>>...90