Single branch specified, using that and the previous one: remotes/brancher/net-next-2025-03-04--15-00 (v6.14-rc4-1228-g6a6231bbb5d7) remotes/brancher/net-next-2025-03-04--18-00 (v6.14-rc4-1241-g11aed8572db4) ==== BASE DIFF ==== .../devicetree/bindings/net/rfkill-gpio.yaml | 5 + drivers/net/wireless/broadcom/b43/main.c | 2 +- .../wireless/broadcom/brcm80211/brcmfmac/bcmsdh.c | 20 +- drivers/net/wireless/intel/ipw2x00/ipw2200.c | 2 +- drivers/net/wireless/intel/ipw2x00/libipw.h | 2 - drivers/net/wireless/intel/ipw2x00/libipw_rx.c | 91 - drivers/net/wireless/intel/iwlegacy/4965-rs.c | 15 +- drivers/net/wireless/intel/iwlegacy/common.h | 2 - drivers/net/wireless/intel/iwlwifi/cfg/22000.c | 1 - drivers/net/wireless/intel/iwlwifi/cfg/ax210.c | 1 - drivers/net/wireless/intel/iwlwifi/cfg/bz.c | 10 +- drivers/net/wireless/intel/iwlwifi/cfg/dr.c | 2 +- drivers/net/wireless/intel/iwlwifi/cfg/sc.c | 8 +- drivers/net/wireless/intel/iwlwifi/dvm/tt.c | 11 - drivers/net/wireless/intel/iwlwifi/dvm/tt.h | 1 - drivers/net/wireless/intel/iwlwifi/fw/api/alive.h | 4 +- .../net/wireless/intel/iwlwifi/fw/api/commands.h | 7 +- .../net/wireless/intel/iwlwifi/fw/api/context.h | 6 +- drivers/net/wireless/intel/iwlwifi/fw/api/d3.h | 2 +- .../net/wireless/intel/iwlwifi/fw/api/datapath.h | 19 +- .../net/wireless/intel/iwlwifi/fw/api/dbg-tlv.h | 9 +- drivers/net/wireless/intel/iwlwifi/fw/api/dhc.h | 129 + .../net/wireless/intel/iwlwifi/fw/api/location.h | 66 +- .../net/wireless/intel/iwlwifi/fw/api/mac-cfg.h | 95 +- drivers/net/wireless/intel/iwlwifi/fw/api/phy.h | 18 +- drivers/net/wireless/intel/iwlwifi/fw/api/rs.h | 52 + drivers/net/wireless/intel/iwlwifi/fw/api/sta.h | 1 + .../net/wireless/intel/iwlwifi/fw/api/time-event.h | 42 +- drivers/net/wireless/intel/iwlwifi/fw/dbg.c | 194 +- drivers/net/wireless/intel/iwlwifi/fw/dbg.h | 3 - drivers/net/wireless/intel/iwlwifi/fw/dump.c | 3 + drivers/net/wireless/intel/iwlwifi/fw/regulatory.c | 56 +- drivers/net/wireless/intel/iwlwifi/fw/regulatory.h | 4 + drivers/net/wireless/intel/iwlwifi/fw/runtime.h | 2 + drivers/net/wireless/intel/iwlwifi/fw/uefi.c | 3 + drivers/net/wireless/intel/iwlwifi/iwl-config.h | 23 +- .../wireless/intel/iwlwifi/iwl-context-info-gen3.h | 8 +- drivers/net/wireless/intel/iwlwifi/iwl-debug.h | 9 +- drivers/net/wireless/intel/iwlwifi/iwl-drv.c | 2 +- drivers/net/wireless/intel/iwlwifi/iwl-nvm-parse.c | 24 +- drivers/net/wireless/intel/iwlwifi/iwl-trans.c | 5 +- drivers/net/wireless/intel/iwlwifi/iwl-trans.h | 11 +- drivers/net/wireless/intel/iwlwifi/mvm/d3.c | 79 +- drivers/net/wireless/intel/iwlwifi/mvm/debugfs.c | 7 + .../net/wireless/intel/iwlwifi/mvm/ftm-initiator.c | 119 +- .../net/wireless/intel/iwlwifi/mvm/ftm-responder.c | 86 - drivers/net/wireless/intel/iwlwifi/mvm/fw.c | 54 +- drivers/net/wireless/intel/iwlwifi/mvm/mac-ctxt.c | 23 - drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c | 9 +- drivers/net/wireless/intel/iwlwifi/mvm/mld-sta.c | 2 +- drivers/net/wireless/intel/iwlwifi/mvm/mvm.h | 16 +- drivers/net/wireless/intel/iwlwifi/mvm/ops.c | 6 +- drivers/net/wireless/intel/iwlwifi/mvm/rs.c | 2 +- drivers/net/wireless/intel/iwlwifi/mvm/rxmq.c | 8 +- drivers/net/wireless/intel/iwlwifi/mvm/sta.c | 61 - drivers/net/wireless/intel/iwlwifi/mvm/sta.h | 4 - .../net/wireless/intel/iwlwifi/mvm/time-event.c | 8 +- drivers/net/wireless/intel/iwlwifi/mvm/tt.c | 4 +- .../wireless/intel/iwlwifi/pcie/ctxt-info-gen3.c | 5 +- drivers/net/wireless/intel/iwlwifi/pcie/drv.c | 237 +- drivers/net/wireless/intel/iwlwifi/pcie/internal.h | 5 +- .../net/wireless/intel/iwlwifi/pcie/trans-gen2.c | 4 +- drivers/net/wireless/intel/iwlwifi/pcie/tx-gen2.c | 6 +- drivers/net/wireless/intel/iwlwifi/pcie/tx.c | 20 +- drivers/net/wireless/intel/iwlwifi/tests/devinfo.c | 15 +- drivers/net/wireless/marvell/libertas/cmd.c | 143 +- drivers/net/wireless/marvell/libertas/cmd.h | 10 - drivers/net/wireless/marvell/libertas/cmdresp.c | 1 - drivers/net/wireless/marvell/libertas/decl.h | 4 - drivers/net/wireless/marvell/libertas/dev.h | 4 - drivers/net/wireless/marvell/libertas/main.c | 88 +- drivers/net/wireless/marvell/mwifiex/main.c | 4 +- drivers/net/wireless/marvell/mwifiex/main.h | 4 +- drivers/net/wireless/marvell/mwifiex/pcie.c | 4 +- drivers/net/wireless/marvell/mwifiex/sdio.c | 4 +- drivers/net/wireless/marvell/mwifiex/uap_event.c | 16 - drivers/net/wireless/marvell/mwifiex/usb.c | 4 +- drivers/net/wireless/quantenna/qtnfmac/qlink.h | 21 +- drivers/net/wireless/realtek/rtl8xxxu/8192c.c | 2 + drivers/net/wireless/realtek/rtl8xxxu/core.c | 17 +- .../net/wireless/realtek/rtlwifi/rtl8192de/phy.c | 6 +- drivers/net/wireless/realtek/rtw88/fw.c | 15 + drivers/net/wireless/realtek/rtw88/fw.h | 1 + drivers/net/wireless/realtek/rtw88/mac.c | 6 +- drivers/net/wireless/realtek/rtw88/main.c | 18 +- drivers/net/wireless/realtek/rtw88/main.h | 36 +- drivers/net/wireless/realtek/rtw88/pci.c | 4 +- drivers/net/wireless/realtek/rtw88/phy.c | 191 +- drivers/net/wireless/realtek/rtw88/phy.h | 20 +- drivers/net/wireless/realtek/rtw88/reg.h | 3 +- drivers/net/wireless/realtek/rtw88/rtw8723d.c | 4 +- drivers/net/wireless/realtek/rtw88/rtw8821c.c | 16 +- drivers/net/wireless/realtek/rtw88/rtw8822b.c | 16 +- drivers/net/wireless/realtek/rtw88/rtw8822c.c | 2 +- drivers/net/wireless/realtek/rtw88/rtw88xxa.c | 2 +- drivers/net/wireless/realtek/rtw88/sar.c | 2 +- drivers/net/wireless/realtek/rtw88/sdio.c | 2 +- drivers/net/wireless/realtek/rtw88/usb.c | 2 +- drivers/net/wireless/realtek/rtw89/Kconfig | 2 +- drivers/net/wireless/realtek/rtw89/chan.c | 28 +- drivers/net/wireless/realtek/rtw89/chan.h | 2 +- drivers/net/wireless/realtek/rtw89/coex.c | 2945 +++++++++++--------- drivers/net/wireless/realtek/rtw89/coex.h | 18 +- drivers/net/wireless/realtek/rtw89/core.c | 192 +- drivers/net/wireless/realtek/rtw89/core.h | 169 +- drivers/net/wireless/realtek/rtw89/debug.c | 2062 ++++++++------ drivers/net/wireless/realtek/rtw89/fw.c | 189 +- drivers/net/wireless/realtek/rtw89/fw.h | 46 +- drivers/net/wireless/realtek/rtw89/mac.c | 31 +- drivers/net/wireless/realtek/rtw89/mac.h | 1 + drivers/net/wireless/realtek/rtw89/mac80211.c | 281 +- drivers/net/wireless/realtek/rtw89/mac_be.c | 2 +- drivers/net/wireless/realtek/rtw89/phy.c | 748 ++--- drivers/net/wireless/realtek/rtw89/phy.h | 15 +- drivers/net/wireless/realtek/rtw89/ps.c | 6 +- drivers/net/wireless/realtek/rtw89/reg.h | 5 + drivers/net/wireless/realtek/rtw89/regd.c | 574 ++-- drivers/net/wireless/realtek/rtw89/rtw8851b.c | 21 +- drivers/net/wireless/realtek/rtw89/rtw8852a.c | 21 +- drivers/net/wireless/realtek/rtw89/rtw8852b.c | 21 +- drivers/net/wireless/realtek/rtw89/rtw8852bt.c | 21 +- drivers/net/wireless/realtek/rtw89/rtw8852c.c | 21 +- drivers/net/wireless/realtek/rtw89/rtw8922a.c | 15 +- drivers/net/wireless/realtek/rtw89/sar.c | 63 +- drivers/net/wireless/realtek/rtw89/sar.h | 5 +- drivers/net/wireless/realtek/rtw89/ser.c | 17 +- drivers/net/wireless/realtek/rtw89/util.c | 11 + drivers/net/wireless/realtek/rtw89/util.h | 5 +- drivers/net/wireless/realtek/rtw89/wow.c | 7 +- drivers/net/wireless/virtual/mac80211_hwsim.c | 1 + include/linux/ieee80211.h | 12 + include/net/cfg80211.h | 48 +- include/net/dropreason.h | 6 - include/net/mac80211.h | 38 +- include/uapi/linux/nl80211.h | 4 +- net/mac80211/agg-rx.c | 22 +- net/mac80211/agg-tx.c | 9 +- net/mac80211/cfg.c | 23 +- net/mac80211/chan.c | 20 +- net/mac80211/debugfs.c | 44 +- net/mac80211/driver-ops.c | 10 +- net/mac80211/driver-ops.h | 3 +- net/mac80211/drop.h | 21 +- net/mac80211/ethtool.c | 2 +- net/mac80211/ieee80211_i.h | 30 +- net/mac80211/iface.c | 87 +- net/mac80211/main.c | 16 +- net/mac80211/mesh_hwmp.c | 14 +- net/mac80211/mlme.c | 583 +++- net/mac80211/parse.c | 135 +- net/mac80211/rx.c | 219 +- net/mac80211/sta_info.c | 64 +- net/mac80211/status.c | 34 +- net/mac80211/tests/Makefile | 2 +- net/mac80211/tests/chan-mode.c | 254 ++ net/mac80211/tests/util.c | 6 +- net/mac80211/tx.c | 5 +- net/mac80211/util.c | 8 +- net/rfkill/rfkill-gpio.c | 3 + net/wireless/core.h | 1 - net/wireless/nl80211.c | 26 +- net/wireless/reg.c | 3 +- net/wireless/scan.c | 8 +- net/wireless/trace.h | 2 +- 164 files changed, 6728 insertions(+), 5001 deletions(-) ==== COMMIT DIFF ==== diff --git a/tmp/tmp.TBS5hZADnS b/tmp/tmp.I0j3lNdhZn index 0e164dd1651e..83e7fcffccd4 100644 --- a/tmp/tmp.TBS5hZADnS +++ b/tmp/tmp.I0j3lNdhZn @@ -3,11 +3,23 @@ selftests: net: enable profiling tc_action dbg profile patch forwarding: set timeout to 3 hours +openvswitch: avoid allocating labels_ext in ovs_ct_set_labels +net/mlx5e: Properly match IPsec subnet addresses +net/mlx5e: Separate address related variables to be in struct +net/mlx5: Lag, Enable Multiport E-Switch offloads on 8 ports LAG +net/mlx5e: Enable lanes configuration when auto-negotiation is off +net/mlx5: Refactor link speed handling with mlx5_link_info struct +net/mlx5: Relocate function declarations from port.h to mlx5_core.h +netpoll: Optimize skb refilling on critical path +net: airoha: Enable TSO/Scatter Gather for LAN port +sched: Add dualpi2 qdisc net: airoha: Fix lan4 support in airoha_qdma_get_gdm_port() sched: address a potential NULL pointer dereference in the GRED scheduler. +net: airoha: Increase max mtu to 9k +net: airoha: Introduce airoha_dev_change_mtu callback +net: airoha: Enable Rx Scatter-Gather +net: airoha: Move min/max packet len configuration in airoha_dev_open() inet: fix lwtunnel_valid_encap_type() lock imbalance -Merge tag 'wireless-next-2025-03-04-v2' of https://git.kernel.org/pub/scm/linux/kernel/git/wireless/wireless-next -Merge tag 'wireless-2025-03-04' of https://git.kernel.org/pub/scm/linux/kernel/git/wireless/wireless net/smc: use the correct ndev to find pnetid by pnetid table ieee802154: ca8210: Switch to using gpiod API ieee802154: ca8210: Get platform data via dev_get_platdata() @@ -80,7 +92,6 @@ vlan: enforce underlying device type net/mlx5: Fill out devlink dev info only for PFs net: Prevent use after free in netif_napi_set_irq_locked() netpoll: guard __netpoll_send_skb() with RCU read lock -net: phy: dp83869: fix status reporting for speed optimization net: phy: phy_caps: Allow getting an phy_interface's capabilities net: phylink: Convert capabilities to linkmodes using phy_caps net: phylink: Add a mapping between MAC_CAPS and LINK_CAPS @@ -135,150 +146,3 @@ selftests: mptcp: add a test for mptcp_diag_dump_one selftests: mptcp: Add a tool to get specific msk_info ppp: Fix KMSAN uninit-value warning with bpf bnx2: Fix unused data compilation warning -wifi: iwlwifi: remove mld/roc.c -wifi: nl80211: disable multi-link reconfiguration -wifi: cfg80211: regulatory: improve invalid hints checking -wifi: mac80211: refactor populating mesh related fields in sinfo -wifi: cfg80211: reorg sinfo structure elements for mesh -wifi: iwlwifi: Fix spelling mistake "Increate" -> "Increase" -wifi: iwlwifi: add Debug Host Command APIs -wifi: iwlwifi: add IWL_MAX_NUM_IGTKS macro -wifi: iwlwifi: add OMI bandwidth reduction APIs -wifi: iwlwifi: remove mvm prefix from iwl_mvm_d3_end_notif -wifi: iwlwifi: remember if the UATS table was read successfully -wifi: iwlwifi: export iwl_get_lari_config_bitmap -wifi: iwlwifi: add support for external 32 KHz clock -wifi: iwlwifi: mld: add a debug level for EHT prints -wifi: iwlwifi: mld: add a debug level for PTP prints -wifi: iwlwifi: remove mvm prefix from iwl_mvm_esr_mode_notif -wifi: iwlwifi: use 0xff instead of 0xffffffff for invalid -wifi: iwlwifi: location api cleanup -wifi: cfg80211: expose update timestamp to drivers -wifi: mac80211: add ieee80211_iter_chan_contexts_mtx -wifi: mac80211: fix integer overflow in hwmp_route_info_get() -wifi: mac80211: Fix possible integer promotion issue -wifi: cfg80211: convert timeouts to secs_to_jiffies() -wifi: mac80211: Add counter for all monitor interfaces -wifi: iwlegacy: don't warn for unused variables with DEBUG_FS=n -wifi: brcmfmac: keep power during suspend if board requires it -wifi: mac80211: Fix sparse warning for monitor_sdata -wifi: mac80211: fix vendor-specific inheritance -wifi: mac80211: fix MLE non-inheritance parsing -Merge tag 'rtw-next-2025-02-10-v2' of https://github.com/pkshih/rtw -wifi: iwlwifi: Fix A-MSDU TSO preparation -wifi: iwlwifi: Free pages allocated when failing to build A-MSDU -wifi: iwlwifi: limit printed string from FW file -wifi: iwlwifi: mvm: use the right version of the rate API -wifi: iwlwifi: mvm: don't try to talk to a dead firmware -wifi: iwlwifi: mvm: don't dump the firmware state upon RFKILL while suspend -wifi: iwlwifi: mvm: clean up ROC on failure -wifi: iwlwifi: fw: avoid using an uninitialized variable -wifi: iwlwifi: fw: allocate chained SG tables for dump -wifi: mac80211: remove debugfs dir for virtual monitor -wifi: mac80211: Cleanup sta TXQs on flush -wifi: nl80211: reject cooked mode if it is set along with other flags -wifi: iwlwifi: implement dump region split -wifi: iwlwifi: add twt operation cmd -wifi: iwlwifi: use correct IMR dump variable -wifi: iwlwifi: support ROC version 6 -wifi: iwlwifi: clarify the meaning of IWL_INIT_PHY -wifi: iwlwifi: properly set the names for SC devices -wifi: iwlwifi: make no_160 more generic -wifi: iwlwifi: be less aggressive with re-probe -wifi: iwlwifi: fw: make iwl_send_dbg_dump_complete_cmd() static -wifi: iwlwifi: mvm: Indicate support link reconfiguration -wifi: iwlwifi: Indicate support for EPCS -wifi: iwlwifi: cfg: separate 22000/BZ family HT params -wifi: iwlwifi: enable 320 MHz on slow PCIe links -wifi: iwlwifi: don't warn during reprobe -wifi: iwlwifi: Unify TAS block list handling in regulatory.c -wifi: iwlwifi: mvm: rename and move iwl_mvm_eval_dsm_rfi() to iwl_rfi_is_enabled_in_bios() -wifi: b43: Replace outdated firmware URL -wifi: mac80211: rework the Tx of the deauth in ieee80211_set_disassoc() -wifi: mac80211: ensure sdata->work is canceled before initialized. -wifi: mac80211: enable removing assoc link -wifi: mac80211: aggregation: remove deflink accesses for MLO -wifi: mac80211: always send max agg subframe num in strict mode -wifi: mac80211: don't unconditionally call drv_mgd_complete_tx() -wifi: mac80211: remove misplaced drv_mgd_complete_tx() call -wifi: mac80211: set ieee80211_prep_tx_info::link_id upon Auth Rx -wifi: mac80211: tests: add tests for ieee80211_determine_chan_mode -wifi: mac80211: add HT and VHT basic set verification -wifi: mac80211_hwsim: enable strict mode -wifi: mac80211: add strict mode disabling workarounds -wifi: mac80211: Add processing of TTLM teardown frame -wifi: ieee80211: Add missing EHT MAC capabilities -wifi: mac80211: Add support for EPCS configuration -wifi: mac80211: Refactor ieee80211_sta_wmm_params() -wifi: cfg80211: Fix trace print for removed links -wifi: qtnfmac: Avoid multiple -Wflex-array-member-not-at-end warnings -wifi: mac80211: Drop cooked monitor support -wifi: nl80211/cfg80211: Stop supporting cooked monitor -wifi: mwifiex: Remove unused mwifiex_uap_del_sta_data -wifi: ipw2x00: Fix spelling mistake "stablization" -> "stabilization" -wifi: iwlwifi: remove the mvm prefix from iwl_mvm_aux_sta_cmd -wifi: iwlwifi: remove the version number from iwl_dts_measurement_notif_v2 -wifi: iwlwifi: remove the mvm prefix from iwl_mvm_ctdp_cmd -net: rfkill: gpio: allow booting in blocked state -dt-bindings: net: rfkill-gpio: enable booting in blocked state -wifi: iwlwifi: Remove old device data -wifi: iwlwifi: Remove unused iwl_bz_name -wifi: iwlwifi: mvm: Remove unused iwl_mvm_ftm_add_pasn_sta -wifi: iwlwifi: mvm: Remove unused iwl_mvm_ftm_*_add_pasn_sta functions -wifi: iwlwifi: mvm: Remove unused iwl_mvm_rx_missed_vap_notif -wifi: iwlwifi: dvm: Remove unused iwl_rx_ant_restriction -wifi: rtw89: debugfs depends on CFG80211's one -wifi: rtlwifi: rtl8192de: Fix typos of debug message of phy setting -wifi: rtw88: Fix rtw_update_sta_info() for RTL8814AU -wifi: rtw88: Extend TX power stuff for 3-4 spatial streams -wifi: rtw88: Rename RTW_RATE_SECTION_MAX to RTW_RATE_SECTION_NUM -wifi: rtw88: Constify some more structs and arrays -wifi: rtw88: Extend rtw_fw_send_ra_info() for RTL8814AU -wifi: rtw88: Extend rf_base_addr and rf_sipi_addr for RTL8814AU -wifi: rtw88: Extend struct rtw_pwr_track_tbl for RTL8814AU -wifi: rtw88: Fix download_firmware_validate() for RTL8814AU -wifi: rtw88: Fix __rtw_download_firmware() for RTL8814AU -wifi: rtw88: Fix a typo of debug message in rtw8723d_iqk_check_tx_failed() -wifi: rtw89: regd: avoid using BITMAP_FROM_U64() to assign function bitmap -wifi: rtw89: coex: Update Wi-Fi/Bluetooth coexistence version to 7.0.3 -wifi: rtw89: coex: To avoid TWS serials A2DP lag, adjust slot arrangement -wifi: rtw89: coex: Assign value over than 0 to avoid firmware timer hang -wifi: rtw89: fw: validate multi-firmware header before getting its size -wifi: rtw89: fw: validate multi-firmware header before accessing -wifi: rtw89: ps: update H2C command with more info for PS -wifi: rtw89: call power_on ahead before selecting firmware -wifi: rtl8xxxu: retry firmware download on error -wifi: rtw88: Don't use static local variable in rtw8821c_set_tx_power_index_by_rate -wifi: rtw88: Don't use static local variable in rtw8822b_set_tx_power_index_by_rate -wifi: rtl8xxxu: Enable AP mode for RTL8192CU (RTL8188CUS) -wifi: rtw89: pci: not assert wiphy_lock to free early_h2c for PCI probe/remove -wifi: rtw89: remove definition of driver mutex -wifi: rtw89: manual cosmetic along lockdep_assert_wiphy() -wifi: rtw89: remove consumers of driver mutex -wifi: rtw89: debugfs: use debugfs_short_fops -wifi: rtw89: debugfs: use wiphy_locked_debugfs_{read,write}() if needed -wifi: rtw89: debugfs: specify buffer size allocated by devm_kazlloc() for reading -wifi: rtw89: debugfs: implement file_ops::read/write to replace seq_file -wifi: rtw89: use wiphy_work() to replace ieee802111_work() -wifi: rtw89: add wiphy_lock() to work that isn't held wiphy_lock() yet -wifi: rtw89: cleanup unused rtwdev::roc_work -wifi: rtw89: regd: refactor init/setup flow and prototype -wifi: rtw89: regd: handle supported regulatory functions by country -wifi: rtw89: regd: support loading regd table from fw element -wifi: rtw89: phy: disable CFO track when two PHY are working simultaneously -wifi: rtw89: phy: support EDCCA log per PHY -wifi: rtw89: phy: support EDCCA per PHY -wifi: rtw89: phy: support ch_info per PHY -wifi: rtw89: phy: support DIG per PHY -wifi: rtw89: phy: support env_monitor per PHY -wifi: rtw89: phy: add PHY context array to support functions per PHY -wifi: rtw89: phy: rename to RTW89_PHY_NUM as proper naming -wifi: ipw2x00: Remove unused libipw_rx_any() -wifi: libertas: Remove unused auto deep sleep code -wifi: libertas: cmd: remove unused functions -wifi: libertas: main: remove unused functions -wifi: mwifiex: Constify struct mwifiex_if_ops -wifi: rtw89: Correct immediate cfg_len calculation for scan_offload_be -wifi: rtw89: coex: Update Wi-Fi/Bluetooth coexistence version to 7.0.2 -wifi: rtw89: coex: Separated Wi-Fi connecting event from Wi-Fi scan event -wifi: rtw89: coex: Add protect to avoid A2DP lag while Wi-Fi connecting