ELF0@@%"l]kFpKi"%$V`mK k$|?#{W O A8!RC*8R?cT*hr@qTur@ RJr R@ @yCx k Kz T@ TR @y R k KzxT@*ϊR @y rR k KzCy@T@ `R @ydR k; Kz{y T@ R @y fR k3 KzkyT@ R @yfR k+ Kz[yT@R @y rhR k Kz#KyT@R @yJrkhR k Kz;y`T@R @y `rfR k Kz+y!T Cx !@x>H@9h 7[B R1)!R* !RA8C_ !T*OJWI{H#_Rc#@_Qr1{rk@TE0?֠@ATѡ!RR8R@T*5!RB }_)y } Ȫ5eH?#{O!RR8R?cT*!R**OA{¨#_ֽV?#{ OR*8R?cT*hr@qThr@ @9i4!R* @OB{è#_ִ @9@9!R* gj?#{ORR8R?cT*!R**OA{¨#_,E?#{_WOR*8R?cTi*7!R@R@T@ @9T6@x*8R*?T!R T@R*i i****OCWB_A{Ĩ#_)0?#C{og_WOA8C*ւR`!C#R*7 @RY@ @w2kTR_Tjh8_qaTj(8aR*8R@Ti*/5!R R!R*8R?cTifs@%qTs@!R@yq@x@9( 4w 6hJC9 .R k R q k + *TL|,ilx k@Tj L\} )T,qJ`@Zi J_Y S3Sf/@9$5hJC9q!T2?#T*i!RR*8R@ITi*5&!R*8R@ITi*5r@ )j!%qTr@@9!RR*8R@Ti*W5h(s@ )j!qT(s@@9!RV:r@ )j!qaTr@!R>p@!R@x1@xBcR**R R@VBcR;R xv^**BcRzV*BcRZ*BcR#@44#`4[ qT#@4qT#@4@95:4S q Tq@T(R9@4*@*A8C_ T*OHWG_FgEoD{CC#_ ?#{OAR*8R?cThr@qT!ROA{¨#_)0?#{ (@94B5 hB @R1)* @{¨#_hB }_)w } Ȫ5k$|?#{CA8C*95@94*5hB @R1)*A8C@ T{A@#_hB }_)w } Ȫ5k$|?#{ OaR*8R@ITh*T5!R R!R*8R?#Thr@iqTr@@9Q@x!RAR*8R?#Thr@iqTr@@x1@x!RR*8R?#Thr@i%qTr@@9!RR*8R?#Thr@iqTr@!R hB @R1)** @OB{è#_hB }_)w } Ȫ5btbcm_check_bdaddrbtbcm_setup_applebtbcm_set_bdaddrbtbcm_finalizebtbcm_write_pcm_int_paramsbtbcm_setup_patchrambtbcm_patchrambtbcm_read_pcm_int_paramsbtbcm_initializebrcm/%s%s.hcdBCM4356A2BCM4354%s: BCM: Verbose config length mismatch %s: BCM: product %4.4x:%4.4x BCM4324B3BCM43341B0%s: BCM: Controller features length mismatch %s: BCM: Patch failed (%d) %s: BCM: firmware Patch file not found, tried: compatibleBCM4314A0BCM4335A0%s: BCM: Read PCM int params length mismatch BCM20702A0brcm/%s%s.%s.hcdbrcm/BCM%s.%s.hcd-%4.4x-%4.4xBCM20702B0BCM20703A1BCM4335B0BCM4373A0%s: BCM: Read verbose config info failed (%ld) nullBCM4335C0%s: BCM: Read USB product info failed (%ld) %s: BCM: Read controller features failed (%ld) BCM4345C0%s: BCM: Download Minidrv command failed (%d) %s: BCM: '%s' BCM43430B0%s: BCM: Patch command %04x failed (%d) BCM4334B0%s: BCM: chip id %u build %4.4u BCM4329B1%s: BCM: Local name length mismatch /%s: BCM: Reset failed (%d) %s: BCM: Reading local version info failed (%ld) BCM4330B1BCM4343A0%s: BCM: Reading local name failed (%ld) %s: BCM: Write PCM int params failed (%d) %s: BCM: Patch is corrupted %s: BCM: features 0x%2.2x BCM43430A1%s: BCM: Device address length mismatch %s: BCM: Change address command failed (%d) BCM%s: BCM: Read PCM int params failed (%d) %s: %s '%s' Patch BCM4349B1BCM20702A1BCM43142A0BCM2076B1%s: BCM: USB product length mismatch %s: %s (%3.3u.%3.3u.%3.3u) build %4.4u %s: BCM: Local version length mismatch %s: BCM: Reading device address failed (%d) %s: BCM: Using default device address (%pMR) brcm/BCM%s.hcdBCM4362A2BCM4324B5%s: BCM: chip id %u BCM4350C5%s: %s %s: BCM: Using EFI device address (%pMR) BCM4345C5BCM4359C0! !!!&!"#AA a afA AABDF a a"! "af#" BBBaA A!author=Marcel Holtmann description=Bluetooth support for Broadcom devices ver 0.1version=0.1license=GPLvermagic=6.1.75-android14-11-g48b922851ac5-ab12157876 SMP preempt mod_unload modversions aarch64name=btbcmintree=Yscmversion=g48b922851ac5depends=bluetoothsrcversion=A59EA948507C7323973AEDF tZaMC&#BDADDRLinuxLinuxbtbcmD__hci_cmd_sync2{bt_errݤefibt_infodHalt_cb_patch_nopsovkfree_skb_reason\{baswapғ__stack_chk_failmsleepwof_find_node_opts_by_path9Wof_property_read_string_helper`Ϙstrlen.devm_kmalloc9dstrscpynJnesnprintfUCkmalloc_cachesAkmalloc_tracen firmware_request_nowarnrelease_firmware zkfreeEnmodule_layoutGNUL6^UafGNU<LzPz`zMdzMl{{  z zzz zz(DPzTzdzhzlxx||x $4z8zHz?Lz?Thlzpzzzzzz?z? hxz|zzpzpzzzzP`zdztzxzzzzNzN (dzzzzzzzzXz\zhpztz z$z4z8z@T\tzzz8z8QQQQ z z z z\ z` zl zlp zl z z  z z z% z%   ( z, z< z@ zH l | z z z z  z z z z    z z$ z~( z~0 D zH zd zh zp |  z| z| z z  z z z z    zq zq  @$ @( < zN@ zNX l zp zt  z z  z_ z_  z z   < \ l zp zx | z} z}  z} z}  z} z}  z} z}  z z z z(08zzzzzzzzXd~~Dzzzzzz@zDzPXz \z `lzzzIzIzz0z4z<`zdzltz|xz||z~z~zzzz~yy04y&8y$(y,yTXyF\yy y y7yHLyaPy<@yDyyvyP, PhP$P(zz(z8zCHz Xzhzxzz~zzzzzjzzqz(zg8zHzXzhztxz zDzzzzzzz&z z(zAndroid (10087095, +pgo, +bolt, +lto, -mlgo, based on r487747c) clang version 17.0.2 (https://android.googlesource.com/toolchain/llvm-project d9f89f4d16663d5012e5c09495f3b30ece3d2362)nopqrstuvILMNORSTUVYZ[ #$6NS1&00;$$F?TmT`v0y%`,{7  aHH<n<H %  0g   8 < (_ ,B    #p9  a 0 4  l Y <  d h[$ M-Sr-;*h t 6 N1  fKmI%~neaH + A2@ #]  E < , \ t 4t  hon~ wpub_TN.note.gnu.property.note.Linux.hyp.text.rela.text.comment.init.plt.hyp.bss.rela.altinstructions__versions__ksymtab_strings.rela___ksymtab_gpl+btbcm_check_bdaddr.modinfo.rela___ksymtab+btbcm_patchram__ksymtab_gpl__kcrctab_gpl.note.GNU-stack.llvm_addrsig.text.ftrace_trampoline.gnu.linkonce.this_module.note.gnu.build-id.shstrtab.strtab__ksymtab.symtab__kcrctab.hyp.rodata.rela.rodata.hyp.data.BTF.rodata.cst16.rodata.str2.2.rodata.str1.1strscpybtbcm_read_usb_productalt_cb_patch_nops____versions__kstrtabns_btbcm_write_pcm_int_params__crc_btbcm_write_pcm_int_params__kstrtab_btbcm_write_pcm_int_params__ksymtab_btbcm_write_pcm_int_params__kstrtabns_btbcm_read_pcm_int_params__crc_btbcm_read_pcm_int_params__kstrtab_btbcm_read_pcm_int_params__ksymtab_btbcm_read_pcm_int_paramskmalloc_cachesbt_errof_property_read_string_helper__kstrtabns_btbcm_set_bdaddr__crc_btbcm_set_bdaddr__kstrtab_btbcm_set_bdaddr__ksymtab_btbcm_set_bdaddr__kstrtabns_btbcm_check_bdaddr__crc_btbcm_check_bdaddr__kstrtab_btbcm_check_bdaddr__ksymtab_btbcm_check_bdaddrmsleepbaswapbt_infofirmware_request_nowarnkfree_skb_reasonstrlen__kstrtabns_btbcm_setup_patchram__crc_btbcm_setup_patchram__kstrtab_btbcm_setup_patchram__ksymtab_btbcm_setup_patchram__kstrtabns_btbcm_patchram__crc_btbcm_patchram__kstrtab_btbcm_patchram__ksymtab_btbcm_patchram__stack_chk_failefiof_find_node_opts_by_pathsnprintf__kstrtabns_btbcm_finalize__crc_btbcm_finalize__kstrtab_btbcm_finalize__ksymtab_btbcm_finalize__kstrtabns_btbcm_initialize__crc_btbcm_initialize__kstrtab_btbcm_initialize__ksymtab_btbcm_initializerelease_firmware__this_module__kstrtabns_btbcm_setup_apple__crc_btbcm_setup_apple__kstrtab_btbcm_setup_apple__ksymtab_btbcm_setup_applebcm_uart_subver_tablebcm_usb_subver_tablekfreekmalloc_tracedevm_kmalloc__hci_cmd_sync_note_9$d.39$d.29$d.19$d.9$d.48$x.28$x.18$d.8__UNIQUE_ID_srcversion337$d.37$d.27$d.17$d.7__UNIQUE_ID_license676__UNIQUE_ID_depends336$x.36$x.26$x.16$d.6__UNIQUE_ID_version675__UNIQUE_ID_scmversion335$d.35$d.25$d.15$d.5__UNIQUE_ID_description674__UNIQUE_ID_intree334$x.34$x.24$x.14$d.4__UNIQUE_ID_author673__UNIQUE_ID_name333$d.33$d.23$d.13$d.3$d.42__UNIQUE_ID_vermagic332$x.32$x.22$x.12$d.12$d.2$d.41$d.31$d.21$d.11$d.1$d.40$x.30$x.20_note_10$d.1011I   T"e"G @ V ] Q @   !Y ^H R Z b @l  v!!!!!! 0_@"-W IIp0I I0 @ # 3 A @Q _ t0 |0 ]I@ FP FX T ` ;T  @   @   FF(F0F4 >F OF(XF0dF8pI@+:IPI`Ip3    !@00nF @ %  & ( @#) 2;* ?0@M0``>i { 0 3 @9 : $@> ' : 0@  0` , < 2 0 ? !N @ @#X A #a 9 $n $@$~ G $ (  + + !, ,vWF, !,  @- nH-  P- n`- (-%  -, .4 H @. .Q W.A T YN Zc U @Zq 0Z~ 0Z GZ GZ  Z t Z v \ w ] y ] z ^ K@^ n^ 0^0^ !^ | @_ ~ _3  _B  `L  a\  br  b  b  b]b ]c"]@c9]c#]c#]d $]@d#$]d# $ T % (@ % % * 8@, := <Q (a >@u % @ @ @@ B D F H@ J L N P@4 RJ TX Vl V@ X Z \ ^@ ^ ` b d@fh.j >l@ N^ fn sp r@ t v x z@ | ~  @  ) : G@ S f y@@ .@D<X`m@@] ]@"]9]#]#]@ $]#$]& '!) '+ 'Q 'i j@,-i|q!i&iei i Uh@0i!i 3 ' 5 v 7 n 9 ' ; G''= ' ? 'A ' C ' E ' : G ' I ' K ' M '0O '4 Q n S U < 'W 'GY ' [ ' GD] ' _ ' na ' a c ' e ' h g ' l i ' k ' r r m ' ] o 'x q '{ Gs '' u ''w ''ny ''e{ ' } '  '  '  l 'GG  l 'G  l 'G   ''g l 'G  ' G  '  ' G 'n '  '$e '' ' '   ' '  '  ''  ' ' '  ''  ' n 'Ivv0  'l F00 D'l l  'l l  '" e  ''l l  e  D e  g l"~""""ʾ"]  /!@w!C!@Lھ""D" " "D@&"D88"n@L"nH]"nPe"Xj"G`u"c {" " @"I7v T""ȿ""""+"#q!6 < @ Hk"EIE3":"E"Q"0l`]"Ez%k"8Xv"z"H0Pu@"EX"E`Ehp"0"Ep"Ex"E""{"EHOP "EP"H`"EpH""H-"H;"EC"HS"Hc"Eq"~"E"H"H"E "E("H0"H@"EP "H`"Hp,"H@"HW"Hm"H"H"H"H"H"H"H"H "H0."H@<"HPK"H`Y"Hph"Hv"H"E"E"H"H"H"H"E "E"E("E7"E E"H@_"HPy"E`"Hp"H"H"H"E"H"H"E"H*"H>"HJ"H ["H0{"H@"P"XcjH`"Hp"HH""H"H"E " " ""@ 2"` >"E G"H S"H b" s" "!"E@6"0`6 6"6"06"07"0 7"0@7"0`7"07"07"07"07"08"0 8 "0@8"H`8 "Hp8= H8*"H84" 8@" 9L" @9W"E9f"E9d9u":@:@="D"G"!J"6K"6P"V"Y"H\ "@\"cj""r-"@y5"@| @>"@N"^"8c"8i"8o"x"06@""""""@"" "n " @ "n`"j-"@`@"nSenP"D\"f"Dȩu""!@"!"!@"!u"!@"!"!@"!"!@"!"!@"!"!@-"!="!@J"!u@ _!W"_"A@Q WrT"0smg"@r"H"P"E("0"E""E"!"0"E"H","A="0N"{ R"^"j" n"@ }"""!"nbNg@%@"""@"u(""@"] ]"]@9]E E +"H<"H5"H ="H0@E H"(q!V"0^"0f"0n"0v"0}"0 " ("" "@"`"""""" "DE E    0 D n    n   E ؅" E H H"E( "E0"+"@"\"y""""" " -" N" l" " """ "0"R"|"""""h'E3"" E," h'E "E" "E  ("" 8F"]"EOEEE+lE    e"{ ;fq"  ;3""  ;"  ;f"  ;6,x#"  ;"@"n"  ; "  " /" D"   Hbcm_subver_tablesubverDISCOVERY_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_WAKEINTERLEAVE_SCAN_NONEINTERLEAVE_SCAN_NO_FILTERINTERLEAVE_SCAN_ALLOWLISThci_devbdaddrsetup_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_skbsmp_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_codecshw_infofw_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_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_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_rp_read_bd_addrhci_command_hdrhci_rp_read_local_versionbcm_set_pcm_int_paramsroutingbcm_fw_namebtbcm_read_pcm_int_paramsbtbcm_set_bdaddrbtbcm_check_bdaddrbtbcm_write_pcm_int_paramsbtbcm_patchramfw_load_doneuse_autobaud_modebtbcm_initializebtbcm_read_usb_productbtbcm_finalizebtbcm_setup_patchrambtbcm_setup_appled@ L`v V0C>  H/`*@8! r2`#@0T@!@pVH!Q@V!2$0@*@@xW0!,C-2-50ZLoa[-0%@.@g3@?@8$h8 [n[#~R j\kthsD0 *H 01 0  `He0  *H 1o0k0F0.1,0*U #Build time autogenerated kernel keynO0l=oiy0  `He0  *H &Zv 9%tBӲjƺ,YEӬ3,,xtFqh0% NIwE1Wa?k |bojb!.p͟y0A[1s2ی`Reo)N]4'*( ϧ5\_s5A,ިD/E4S0Hfp,A"hro[]c(MM|pB)_#19S;y]qv.ArM`{?^j$8u:|#Gb7 ?}mXEZ3z{ٰ5 QIb'-HN5\$!opQr s]T5?TbSez%bvHڏ5lC:Ů ޳y&No]X*Ya""K{m,Xaǣbn-+t|Va[~Module signature appended~