ELF@@)&!zR| ($D-DD L DD-(D$D-DD L DD-8pD-D0L 0  0LD-D ,LD-D H  l  HD-0D-D0L 0  0LD-,D-D H    HD-(@\D-D H  |  HD-(l,D-DD T DD-,D-D H  l  HD-8D-D@P 0 T @PD-D H?#{WO|GyA qTh@@O97u" RR@{{ `  (*`R 9d h l x h~GyqThGyqT+Ȃ)R1)@7*tRu*OBWA{è#_hGy)RU kT)R k`T4R kT7R kT*hR kTjR k@TȂ }_)@ } Ȫ5>9?#{OP@TB@ROA{¨#_ֶ`?#{ O_tRr@n@*(9r@n@}S(9@yn@( 9@9n@( 9`_n@r@7h_r@AR MPI MR`_!R"Rh_ -P) -`_OB @{è#_k$|?#{OI@@7@!*@7N9 qT*R@!RR*@*OA{¨#_k$|?#{ I`@`@*R`@`@`@* @{¨#_k$|?#{I R*{#_/x9?#{ (@9I qT qTqaTRRR` @) bBR@*`  @{¨#_>9?#{WOCA8aRCP@ 6!RbR@*R`7 @y@9A *Rr 2?kCTR*l@ @Q*!)!l @an@** 7@@9*IP Q qJ *I(Th9@7@* AR@!R )P) )@RA8C@ TOCWB{A#_ű6?#{{#_ g@?#{{#_author=Marcel Holtmann description=Generic Bluetooth SDIO driver ver 0.1version=0.1license=GPLvermagic=6.6.66-android15-8-g3feaf4d5ef4d-ab12995886 SMP preempt mod_unload modversions aarch64name=btsdiointree=Yscmversion=g3feaf4d5ef4ddepends=bluetoothalias=sdio:c02v*d*alias=sdio:c03v*d*srcversion=CC5D107AA4400C2BF63FEE1btsdioLinuxLinuxbtsdioKsdio_register_driverfVsdio_unregister_driver`devm_kmallocVhci_alloc_dev_privm\alt_cb_patch_nopsnhci_register_dev\hci_free_devicancel_work_syncQhci_unregister_dev4,sdio_claim_host4skb_dequeueMskb_pushDb!sdio_writesbmx"kfree_skb_reasonZPskb_pull1sdio_writebskb_queue_headsdio_release_host9-sdio_enable_funcX{sdio_claim_irqYĨsdio_disable_func=dsdio_release_irqr82skb_queue_purge_reasonlbskb_queue_tailӅ3-system_wq*squeue_work_onG{&sdio_readb{pmsdio_readsbI__alloc_skbÔfskb_putex=hci_recv_frame__stack_chk_fail7o'Nmodule_layoutGNU/IwWz>ZfGNUHR`0d0S0$0$000(0(0X0XUtVWXV$Y0ZD[\]Z^_`a<YDbP0T0Xc__daY_ed a@fghhij4_Lklmkn]<_lo77O77Q0TNPLp00Android (11368308, +pgo, +bolt, +lto, +mlgo, based on r510928) clang version 18.0.0 (https://android.googlesource.com/toolchain/llvm-project 477610d4d0d988e69dbc3fae4fe86bff3f07f2b5)1H2t0000$D0p0(0X0IK k&),/01$% NP  _2'   n 9 $ \ (, XN!  L    Y , $o   H $ ( T X ~ Sy2-s-2_ k ,m&  #w`w _ d!@7!<*S=#! $$C'8PMzE4]saN+E]0.note.gnu.property.note.Linux.rela.exit.text.rela.init.text.hyp.text.rela.text.comment.init.plt.hyp.bss.rela.altinstructions__versions.hyp.event_ids.modinfo.note.GNU-stack.llvm_addrsig.text.ftrace_trampoline.init.eh_frame.rela.eh_frame.rela.gnu.linkonce.this_module.note.gnu.build-id.shstrtab.strtab.symtab.hyp.rodata.rela.exit.data.rela.init.data.hyp.data.rela.data.BTF.rodata.str1.1hci_alloc_dev_privhci_unregister_devhci_register_devhci_free_devskb_putsdio_claim_hostsdio_release_hostbtsdio_interruptalt_cb_patch_nops____versionssdio_unregister_driversdio_register_driverbtsdio_driversystem_wqsdio_claim_irqsdio_release_irqskb_queue_purge_reasonkfree_skb_reasonqueue_work_onbtsdio_openskb_pullskb_queue_tail__stack_chk_failbtsdio_workskb_pushbtsdio_flushbtsdio_removeskb_dequeuebtsdio_closehci_recv_framebtsdio_send_frameinit_module__this_modulecleanup_module__mod_sdio__btsdio_table_device_tablebtsdio_probeskb_queue_headdevm_kmalloccancel_work_syncsdio_disable_funcsdio_enable_funcsdio_writesbsdio_readsb__alloc_skbsdio_writebsdio_readb__UNIQUE_ID_vermagic339__UNIQUE_ID_version719$d.19$d.9$d.28__UNIQUE_ID_description718$x.18$x.8$d.37$d.27__UNIQUE_ID_author717$d.17$d.7__UNIQUE_ID_srcversion346$d.36$d.26__UNIQUE_ID___addressable_cleanup_module716$x.16$x.6__UNIQUE_ID_alias345$d.25_note_15__UNIQUE_ID___addressable_init_module715$d.15$d.5__UNIQUE_ID_alias344$d.24_note_14$x.14$x.4$d.4__UNIQUE_ID_depends343$d.23$d.13$d.3__UNIQUE_ID_scmversion342$x.22$x.12$x.2$d.2__UNIQUE_ID_intree341$d.21$d.11$d.1__UNIQUE_ID_name340__UNIQUE_ID_license720$x.20$x.10$d.10ddV  QmY ?mY mYQ mY?;{%M{%`{%r{%{%{%p  &@ &*&@ۦ{%{%I{%E{% {%@{%I |%c |%c( ,|%c0 4|%E8 9|%L@ D|% E#  J|% X|%@ m|%/ I  v|%|%|%|%|%|%|%}%}%2}%G}%a}%{}%p&*;}%TMJ J}% }%P}%}%E8 }%J}%F }%( }%M }%J}%J}J7:}% ~%J~%J2~%JE~%O~%H]~%JP* 2k~%Js~%M{~%J/M~%M~%M ~%J0~%M@~%MP~%J`~%Fh~%Jp~%M%M%J%%J8%ML%M`%Jm%M~%M%M%M%M %M0%M@%MP%M`.%MpE%MZ%Mo%M%M%M%M%M%Mɀ%M׀%M%J %J(%M0!%M@3%MPE%M`Z%Jpk%Jx|%J%J%J%M%Mځ%J%M%M%M %M .%J0A%M@S%MPh%J`z%Mp%M%M%M%M܂%M%F%FXTM%M!%MM-% :%M@M%MP`%J`k%x%%%%J%M%M Ã%@ԃ%`%%J2%52#3% @3%5`3%53&%53-%535%53=%54E%5 4L%5@4T%5`4]%54f%54n%54w%M4%M4$`M5%M5%@5%5%5%J6DŽ%J6Ff-@6ք%-6969,@8%<%>%&?%;@$%;A4%CI%D[%MFj%,@Fu%,J> ,N%,S%@W%X[@Z%,[%,`%N@dą%Neʅ%NeЅ%fم%fu ;g%0h%@i%`i%i %i%j%@j-%j7% vK%c v\% @vr%c`v%kv%@ww`w%cw+cw%Iwņ%wφ%Iwކ%x%&@y%&y%&@z%&zD|%&@{%&{$%&@|3%&|K%&@}[%&}j%&@~y%&~%&@%&%&@%&_@ %c@ @bȇ%Ӈ%F%%J%%Jȹ%й#%J4%&B%5@S%J`d%Mpy%,%6%5%% %,@ˈ%ψ%,ވ%%,@%&%c5@5L@ 1d)% r@2% ;% F%@uR% e%v%@Q3QJQaQ@J J %=M+M%M %M0E@J %(&%5%5lj%5ω%5׉%5މ%5 % (%% %@%`%!%(%/%6%>% F% 9c X*@5Z))9)@V%N]%@e%,r%@/Zz% % %  %IJ J    5  I  c   c >  J> K%JiMK M%J(Ê%J0̊%%%%3%S%t%%%ŋ% % % )% G% f%%%Ȍ%% %-%W%q%%%%%0%V%p%%X0 ,@=N%%#%*n )% XTI%I>LG`I Ŏ%I!@Ў% ێ%IBIA?IYI%Iu I%L%L I0%: @}%P !%%$%' %@VeL@R* IP)%IX"3%%& ILF%() IL]%0 L@, ! % 0 g% -t% -% p% - ,U% 2% p 0 % 5ˏ% DISCOVERY_STOPPEDDISCOVERY_STARTINGDISCOVERY_FINDINGDISCOVERY_RESOLVINGDISCOVERY_STOPPINGdiscovery_statelast_adv_addrlast_adv_addr_typelast_adv_rssilast_adv_flagslast_adv_datalast_adv_data_lenreport_invalid_rssiresult_filteringlimitedrssiuuid_countuuidsscan_durationname_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_classle_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_intervalamp_statusamp_total_bwamp_max_bwamp_min_latencyamp_max_pduamp_typeamp_pal_capamp_assoc_sizeamp_max_flush_toamp_be_flush_toloc_assocflow_ctl_modeauto_accept_delaycmd_cntacl_cntsco_cntle_cntiso_cntacl_mtusco_mtule_mtuiso_mtuacl_pktssco_pktsle_pktsiso_pktsblock_lenblock_mtublock_cntacl_last_txsco_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_disablele_scan_restartrx_qraw_qcmd_qsent_cmdrecv_eventreq_wait_qreq_statusreq_resultreq_skbreq_rspsmp_datasmp_bredr_datadiscoverydiscovery_old_statediscovery_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_bdaddrcmd_timeoutset_quality_reportget_data_path_idget_codec_config_dataamp_assocrem_lenlen_so_farhci_conn_hashacl_numamp_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_VALID_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_SIZEbtsdio_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@ cP^QRX@@@h@@J@@@@v@@O@pJ@X@% 5pF(0@H]H% %F( @]H%q@]0%NF0kFf@^%[FV@ ^%G``H@8^`%20IU0^@P_%Lo@`8I0I@@``0%O@W$W `B` 'N0@k:lq-0 *H 01 0  `He0  *H 1o0k0F0.1,0*U #Build time autogenerated kernel key"6:>e0  `He0  *H %_%v vxx]-Tf̸];^f=g/EF6 Y{ ;ǤlRC sw,LR(c{ Ҏz;PJ$! {pv_K9amֵ줳ǯ"O nin᳉|~66xr'dfԂwW Ȱ]HįG0} 7¦jVsu^`3گ6:X>JwT|OP+dp r9$L/}LNC!p:8M Bh%k99)Ckiͤ>;,Ɓl.PoGxXЪ]p\}aB63wdn\  i"jiy.>xZ3vgmt@~_a,ezb_m? B`L𚫸݌6m4!ţzjjt=ٛ΂gRh`B[Q> oJ^jґFITl~Module signature appended~