ELF@@,)%zR| (,D-DD T DD-(D$D-DD L DD-4pD-D0L 0  0LD-D ,LD-D H  l  HD-,D-D H    HD-,D-D H    HD-(8\D-D H  |  HD-(d,D-DD T DD-(pT-D H  x  HD-<D-D@P 0 X @PD-D ?#{ OLFyA qTh@@M97u" RR{k `   *@R4H9    hNFyqThRFyqT0)R1)7*tB`OB @{è#_hRFy)R@ kTh qT)R(!Ț)I  T)R kT4R kT7R k@T** }_)@ } Ȫ5?#{O@@TB@BOA{¨#_֌t?#{O_`Rr@j@*(9r@j@}S(9@yj@( 9@9j@( 9`_j@r@7h_r@BR JI `R`_!R"Rh_` J) `_OA{¨#__?#{O4F@@7@!*@7L9 qT*R@!RR*@*OA{¨#__?#{ 4F`@`@*R`@`@`@* @{¨#__?#{4F R*{#_J(@9Q qT?#{ }4F` J) bBR@* @{¨#_` _?#{WOCA8aR C@@ 6!RbR@*R7 @y@9A *Rr 2?kcTR*h@ @Q*!)!h @aj@** 7@@9*J Q qJ * (Th9@7@* BR@!R J) @RA8 C@ TOCWB{A#_50o?#{!{#_`}?#{{#_author=Marcel Holtmann description=Generic Bluetooth SDIO driver ver 0.1version=0.1license=GPLname=btsdiointree=Yscmversion=gcb019dda06f1depends=bluetoothalias=sdio:c02v*d*alias=sdio:c03v*d*srcversion=9ECD1F6E8E55CD4BEEB6CA3vermagic=6.12.11-android16-0-gcb019dda06f1-ab12995838 SMP preempt mod_unload modversions aarch64btsdiobtsdio__sdio_register_driver/psdio_unregister_driver;devm_kmallocw)eohci_alloc_dev_privZ4ȸalt_cb_patch_nops%hci_register_devhci_free_dev[ H5cancel_work_synchci_unregister_dev"[sdio_claim_host[skb_dequeueF\bskb_push4(sdio_writesbsk_skb_reason_dropF\bskb_pullG`sdio_writebZskb_queue_head"[sdio_release_host#(sdio_enable_func8wsdio_claim_irq#(sdio_disable_func#(sdio_release_irqH|jskb_queue_purge_reasonZskb_queue_tailsWsystem_wqLqueue_work_on'sdio_readbeusdio_readsbح5__alloc_skbF\bskb_puthci_recv_frameFr__stack_chk_failfmodule_layout/p;w)eoZ4ȸ%[ H5"[[F\b4(F\bG`Z"[#(8w#(#(H|jZsWL'euح5F\bFrf__sdio_register_driversdio_unregister_driverdevm_kmallochci_alloc_dev_privalt_cb_patch_nopshci_register_devhci_free_devcancel_work_synchci_unregister_devsdio_claim_hostskb_dequeueskb_pushsdio_writesbsk_skb_reason_dropskb_pullsdio_writebskb_queue_headsdio_release_hostsdio_enable_funcsdio_claim_irqsdio_disable_funcsdio_release_irqskb_queue_purge_reasonskb_queue_tailsystem_wqqueue_work_onsdio_readbsdio_readsb__alloc_skbskb_puthci_recv_frame__stack_chk_failmodule_layoutLinuxLinuxGNU&VؑWf%LP%Le%Iw%L%L%L%L %L0%L@%P%XƅL`%Lp%L,L*%~7%LJ%L]%4Qo% @w%4`%4%4%4%4%4%4 %4@%4`%4%4%4%%@%I%Iv %y@!y@ %#'%$5%&%H%:%[%:&k%'%(%L)%)%,sd @/%2%4%5I6%7%:%@;%<%\<%\=$ :@= %d@>%~?!%~ ?,%\@?4%\?<%?E%@T%Q]@@^%]@Ko% `K%]K%K%V]LV]L%]L]L%HL%R]L%HM%\]@M%&N%&O%&O!%&PF%&P-%&Q7%&QF%&R^%&Rn%&S}%&S%&T%&T%&U%&U%&V]]Vw W&X%@XOX1B^]Xׄq_$0 x\@x%i]x%x%j]x%Ih %j]p%IH)%k]P6%I0G%&@U%4f%Iw%L%%+%4%Y%~ %@%R]%@%X]%@%&)%]"l]Ml]"l]@%l]Nl]& n]jp]@<%r]l]E%t]N%v]@$`]z]Y%t]l%|]@}%~]%]I I %(&%4%4%4%4%4% (%~%~ %~@%~`%~%~%~#%~*%~2%~ :% j]#W] B@uVRQuQQ@J%Q%@Y%@߬_]f%c]@3f]n%`]a] b]Y]y%d]e] b]\%g]h] b] %HI I m] b]o] b]\q] b]4s] b]Hu] b]]w] b]x]y] R]{] ]b]}] b]] b]I]']%sILg L%I(%I0] Hb]\%%% %'%G%h%%%% % % % ;% Z%~%%%%%"%L%f%%%%%%%K%e%%]%H$ b],@]%]%]%]N6% ƅH%HnKH %H!]@% %H"HHuH%HY4H%K%K [nH0%@%R]P!]]%%]*%];%K@C HPD%HX]N%]] b]HKa%]] b]HK\x%$ b]K@] ! 1 !  $ b]% ]% ]% %% ] ,s8% ]% % $ b])B\% ]% DISCOVERY_STOPPEDDISCOVERY_STARTINGDISCOVERY_FINDINGDISCOVERY_RESOLVINGDISCOVERY_STOPPINGdiscovery_statelast_adv_addrlast_adv_addr_typelast_adv_rssilast_adv_flagslast_adv_datalast_adv_data_lenreport_invalid_rssiresult_filteringlimitedrssiuuid_countuuidsname_resolve_timeoutbdaddr_tBT_RUNNINGBT_SUSPEND_DISCONNECTBT_SUSPEND_CONFIGURE_WAKEdevcoredump_stateHCI_DEVCOREDUMP_IDLEHCI_DEVCOREDUMP_ACTIVEHCI_DEVCOREDUMP_DONEHCI_DEVCOREDUMP_ABORTHCI_DEVCOREDUMP_TIMEOUTINTERLEAVE_SCAN_NONEINTERLEAVE_SCAN_NO_FILTERINTERLEAVE_SCAN_ALLOWLISThci_devunset_handle_idabdaddrsetup_addrpublic_addrrandom_addradv_addr_typeshort_nameeirappearancemajor_classminor_classmax_pagele_featuresle_accept_list_sizele_resolv_list_sizele_num_of_adv_setsle_statesmesh_ad_typesmesh_send_refhci_verhci_revlmp_verlmp_subvervoice_settingnum_iacstored_max_keysstored_num_keysio_capabilityinq_tx_powererr_data_reportingpage_scan_intervalpage_scan_windowpage_scan_typele_adv_channel_maple_adv_min_intervalle_adv_max_intervalle_scan_typele_scan_intervalle_scan_windowle_scan_int_suspendle_scan_window_suspendle_scan_int_discoveryle_scan_window_discoveryle_scan_int_adv_monitorle_scan_window_adv_monitorle_scan_int_connectle_scan_window_connectle_conn_min_intervalle_conn_max_intervalle_conn_latencyle_supv_timeoutle_def_tx_lenle_def_tx_timele_max_tx_lenle_max_tx_timele_max_rx_lenle_max_rx_timele_max_key_sizele_min_key_sizediscov_interleaved_timeoutconn_info_min_ageconn_info_max_ageauth_payload_timeoutmin_enc_key_sizemax_enc_key_sizepairing_optsssp_debug_modehw_error_codeadvmon_allowlist_durationadvmon_no_filter_durationenable_advmon_interleave_scandevid_sourcedevid_vendordevid_productdevid_versiondef_page_scan_typedef_page_scan_intdef_page_scan_windowdef_inq_scan_typedef_inq_scan_intdef_inq_scan_windowdef_br_lstodef_page_timeoutdef_multi_adv_rotation_durationdef_le_autoconnect_timeoutmin_le_tx_powermax_le_tx_poweresco_typelink_policyidle_timeoutsniff_min_intervalsniff_max_intervalauto_accept_delaycmd_cntacl_cntsco_cntle_cntiso_cntacl_mtusco_mtule_mtuiso_mtuacl_pktssco_pktsle_pktsiso_pktsacl_last_txle_last_txle_tx_def_physle_rx_def_physreq_workqueueerror_resetcmd_sync_workcmd_sync_work_listcmd_sync_work_lockunregister_lockcmd_sync_cancel_workreenable_adv_workdiscov_timeoutdiscov_offservice_cachencmd_timerrx_workcmd_workle_scan_disablerx_qraw_qcmd_qsent_cmdrecv_eventreq_wait_qreq_statusreq_resultreq_skbreq_rspsmp_datasmp_bredr_datadiscoverydiscovery_pausedadvertising_old_stateadvertising_pausedsuspend_notifiersuspend_state_nextscanning_pausedwake_reasonwake_addrwake_addr_typeconn_hashmesh_pendingmgmt_pendingreject_listaccept_listlink_keyslong_term_keysidentity_resolving_keysremote_oob_datale_accept_listle_resolv_listle_conn_paramspend_le_connspend_le_reportsblocked_keyslocal_codecsfw_infoconn_flagsadv_tx_poweradv_dataadv_data_lenscan_rsp_datascan_rsp_data_lenper_adv_dataper_adv_data_lenadv_instancesadv_instance_cntcur_adv_instanceadv_instance_timeoutadv_instance_expireadv_monitors_idradv_monitors_cntirkrpa_timeoutrpa_expiredrpamesh_send_doneinterleave_scan_stateinterleave_scanmonitored_devicesadvmon_pend_notifyhw_errorset_diagset_bdaddrset_quality_reportget_data_path_idget_codec_config_dataclassify_pkt_typehci_conn_hashacl_numsco_numiso_numle_numle_num_peripheralhci_dev_statserr_rxerr_txcmd_txevt_rxacl_txacl_rxsco_txsco_rxbyte_rxbyte_txhci_devcoredumpdump_qdump_rxdump_timeoutdmp_hdrcoredump_tdmp_hdr_tnotify_change_thci_conn_flags_tbt_codecdata_pathnum_capsHCI_QUIRK_RESET_ON_CLOSEHCI_QUIRK_RAW_DEVICEHCI_QUIRK_FIXUP_BUFFER_SIZEHCI_QUIRK_FIXUP_INQUIRY_MODEHCI_QUIRK_BROKEN_LOCAL_COMMANDSHCI_QUIRK_BROKEN_STORED_LINK_KEYHCI_QUIRK_EXTERNAL_CONFIGHCI_QUIRK_INVALID_BDADDRHCI_QUIRK_USE_BDADDR_PROPERTYHCI_QUIRK_BDADDR_PROPERTY_BROKENHCI_QUIRK_STRICT_DUPLICATE_FILTERHCI_QUIRK_SIMULTANEOUS_DISCOVERYHCI_QUIRK_NON_PERSISTENT_DIAGHCI_QUIRK_NON_PERSISTENT_SETUPHCI_QUIRK_WIDEBAND_SPEECH_SUPPORTEDHCI_QUIRK_BROKEN_LE_STATESHCI_QUIRK_BROKEN_ERR_DATA_REPORTINGHCI_QUIRK_NO_SUSPEND_NOTIFIERHCI_QUIRK_BROKEN_READ_TRANSMIT_POWERHCI_QUIRK_BROKEN_FILTER_CLEAR_ALLHCI_QUIRK_BROKEN_ENHANCED_SETUP_SYNC_CONNHCI_QUIRK_BROKEN_EXT_SCANHCI_QUIRK_BROKEN_MWS_TRANSPORT_CONFIGHCI_QUIRK_BROKEN_LOCAL_EXT_FEATURES_PAGE_2HCI_QUIRK_BROKEN_SET_RPA_TIMEOUTHCI_QUIRK_BROKEN_EXT_CREATE_CONNHCI_QUIRK_BROKEN_WRITE_AUTH_PAYLOAD_TIMEOUTHCI_QUIRK_USE_MSFT_EXT_ADDRESS_FILTERHCI_QUIRK_BROKEN_LE_CODEDHCI_QUIRK_BROKEN_READ_ENC_KEY_SIZEHCI_QUIRK_FIXUP_LE_EXT_ADV_REPORT_PHYbtsdio_datal2caphcimgmtbt_skb_cbforce_activepkt_statusl2cap_ctrlsframesarreqseqtxseqpsml2cap_chanreq_completereq_complete_skbhci_ctrlreq_eventhci_req_complete_thci_req_complete_skb_tmgmt_ctrlbtsdio_closebtsdio_flushbtsdio_interruptbtsdio_openbtsdio_probebtsdio_removebtsdio_send_framebtsdio_workv@ Pc^ @@@h@@g@@@@@@O@\J@Y@( 5\F00@^x(%F( @h_H(q@_0(F@_(xFs@_(Fak0H0@``(2`H gHU0p`@(a(Lob# H@@@b0(N@VDW($͚Kf vD9&T-= 4KGՁL/RWfg}ia4KOF1z޿v[$R@|ÒƉ2l_,uh|f˨ ԼiUΟ*Jg?|[Z|.Z?bRlZD&.vS|{n0мM'FnPpwZ=ѼTrIs^iZ ;\yo>N!IZCvZMg*?`=%x\Np/tHz܌hlX<8!;PA/CH ޚ+j)_ =g}bRVhWhKh[Y#< (!ƅhK=p'J*0Nd;s~Module signature appended~