ELF(@@'$/Jtþ"a"RuADzR| 8D-DP 0 | PD-D ,TD-D H  `  HD-4D-D0L 0  0LD-D ,D-D H  `  HD-<\D-D@P @ , @PD-L,pD-D\ `    \D-D ,|D-D H    HD-,tD-D H   x  HD-D ,D-D0L   p 0LD-D 4 D-D0L 0  0LD-D 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=*`!C#R*7 @RY@ @w2kTR_Tjh8_qaTj(8aR*8R@Ti*/5!R R!R*8R?cTifs@%qTs@!R@yq@x@9( 4w 6hJA9 .R k R q k + *TL|,ilx k@Tj L\} )T,qJ`@Zi J_Y S3Sf/@9$5hJA9q!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 }_)v } Ȫ5k$|?#{CA8C*95@94*5hB R1)*A8C@ T{A@#_hB }_)v } Ȫ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 }_)v } Ȫ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.99-android14-11-gc151586fe278-ab12919773 SMP preempt mod_unload modversions aarch64name=btbcmintree=Yscmversion=gc151586fe278depends=bluetoothsrcversion=AB4AD4986925484D817AA4E tZaMC&#BDADDRLinuxLinuxbtbcm1J__hci_cmd_sync2{bt_errݤefibt_infodHalt_cb_patch_nopsL#kfree_skb_reason\{baswapғ__stack_chk_failmsleeptof_find_node_opts_by_pathqvof_property_read_string_helper`Ϙstrlenndevm_kmalloc9dstrscpynJnesnprintfkmalloc_cachesCukmalloc_trace)]firmware_request_nowarnrelease_firmware zkfreeumodule_layoutGNUE3n; . di̠GNU<L|P|`|Md|Ml}}  | ||z |z(DP|T|d|h|lxx~~x $4|8|H|?L|?Thl|p||||||?|? hx||||p|p||||P`|d|t|x||||N|N (d||||||||H|L|dl|p| | |0|4|<PXp|||8|8SSSS | | | |X |\ |h |ll |l | |  | | |% |%   $ |( |8 |< |D h x || | | |  | | | |    | | |~$ |~, @ |D |` |d |l x  || || | |  | | | |    |q |q  @ @$ 8 |N< |NT h |l |p  | |  |_ |_  | |   8 X h |l |t x |}| |}  |} |}  |} |}  |} |}  | |  ||$,4|||||||||T`@|||| ||<|@|LT| X| \h|||I|I||,|0|8\|`|hp||t||x|~|~||||{{04{&8{$({,{TX{F\{{ { {7{HL{aP{<@{D{{v{R, RdR$R(||(|8|CH| X|h|x||~|||||j||q|(|g8|H|X|h|tx| |D|||||||&| |(|Android (10087095, +pgo, +bolt, +lto, -mlgo, based on r487747c) clang version 17.0.2 (https://android.googlesource.com/toolchain/llvm-project d9f89f4d16663d5012e5c09495f3b30ece3d2362)RXRR<R,R0RRR0RRdmnopqrstuILMNORSTUVYZ[ #$6=S &00;$$F?TT`v0yv`,{E7  aHH<t<70p?8<(e,1 #p9 ,j09 h_+`d$d3M-Y-;h Bt %  =   fKIvE~tka7 { J2@ #?]E<,\p0tdon~ 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.init.eh_frame.rela.eh_frame.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__UNIQUE_ID_version679$d.49$d.39$d.29$d.19$d.9__UNIQUE_ID_description678$d.48__UNIQUE_ID_srcversion338$x.28$x.18$d.8__UNIQUE_ID_author677__UNIQUE_ID_depends337$d.37$d.27$d.17$d.7__UNIQUE_ID_scmversion336$x.36$x.26$x.16$d.6__UNIQUE_ID_intree335$d.35$d.25$d.15$d.5__UNIQUE_ID_name334$x.34$x.24$x.14$d.4__UNIQUE_ID_vermagic333$d.33$d.23$d.13$d.3$d.42$x.32$x.22$x.12$d.12$d.2$d.41$d.31$d.21$d.11$d.1__UNIQUE_ID_license680$d.40$x.30$x.20_note_10$d.10t1t1#I   Q#b#G @  ]  @  2X@ L    @" h ,!5!?!J!U!_!n 0wN@U IIo0I I0 @    @  *0 20 ]I@ :FP IFX S ` |:; Z @ev   @  FFFF F F(F0F8&I@8IP5I`>IpEyH2 T W Z dwp0|0 ^@    @   @00,  @-0`: EU c! @q% '! 0@0`# 0y' ( @   . @ &{@$5 &D &V!@&`&U4'l!'| '^' '^'' (@(/ ( ( D); EF< F0G0 G(G@G5GPGB `GI[ pGS] pI_^ Jg` @Jna Jvc J^K0K0 K!@Kd Kf Lh @Li Ll N O  O$  O; m O L@O LO LOLP"L@P"LP"LP"LQ r T  @    @    @ $ 1 ? @L [ n } @    @    @ - =  M  @a  r    @    @       " @ 0 ! > # Q % f '@ w ) + - /@ 1 3 5 7@ 9  ;  =) ?@< AQ Ah C E@ G I K M@  O Q S@!U0WEYT[@e]{` L L@ LL"L"L@"L"L    g j@glq!gh f@h!.h    c  ^    G         &        0   ^   #  G    GD      ^  H     O   S     Y Y   L  _  b G   " $ ^& S(  *  , . 0 v S GG 2 v S G 4 v S G 6 ~ S8 S G :  G <  >  G@ ^B  D $UF H J  L N P  R  T  V X Z  \ ^ _a  ^c Icc0e g S F00i 2S S k S S m "o Uq s S S u Uw y 2{ U } S i#{#####] h~ ,!@g!!@##D## #@##D85#^@I#^HZ#^Pb#Xg#G`r#; x# # @#H] ######(#@q!6 ( @lH$!E~)E0#7#B#N#0`Z#E3$h#̦X s# w#H0?c@#EX#E`xEhp#E0#Ep#Ex#E#E#h#EHP#EP#H`#Ep،H#H*#H8#E@#HP#H`#En#{#E#H#H#E #E(#H0#H@#EP #H`#Hp)#H=#HT#Hj#H#H#H#H#H#H#H #H #H0+#H@9#HPH#H`V#Hpe#Hs#H#E#E#H#H#H#H#E#E#E%#E4#E| B#H@\#HPv#E`#Hp#H#H#H#E#H#H#E#H'#H;#HG#H X#H0x#H@#P#XhH`#Hp#HH##H#H#E## #@/#`;#ED#HP#H_#p###E@2#0`2 2#2#02#03#0 3#0@3#0`3#03#03#03#03#04#0 4 #0@4#H`4#Hp4 H4'#H41# 4=# 5I# @5T#E5c#E5U5r#6P@67#<#=#!?#6?#6A#B#D#HE#E#Jl@N#R*#V2#@X Y;#@[K#_[#&c`#&df#&@el#fu#@f)h6f#h#h#h#i#@i#i#i# @n#^`n# n#^n#Xn*#o"o=#^o^oM#DoY#oc#Dpr#@p|#!q#!r#!r#!sr#!s#!t#!t#!u#!u#!v#!v #!w #!w* #!x: #!xG #!y>ty!zT #{\ #@{4{ D{?"@b]d #o #Ș| #И #E # #E # #Ep #! #0 #E !#H0!#@)!#/:!#0@K!#h`O!#[!#g!#@k!#z!#!#!#!@!#^EM@ ~$,@ձ!#g!#@!#!#='!#@"#"# L L@ LLE E ("#H H2"#H :"#H0@E E"#(q!S"#0["#0c"#0k"#0s"#0z"#0 "# ("#"# "#@"#`"#"#"#"#"#"# "#DE E    0 D ^    ^   E "#lEHDH"#E(##E0##(##=##Y##v##########$# )$# K$# l$# $# $#$#$# %#)%#N%#p%#%#%#%#&#&&#0&E0#:&# ɉ EJ&# 0&E#E# #E ، (# 8d&#{&#E.EE׽EiE   &#i q3&#  q0#&#  q&#  q3&#  qet$&#  q&#-'#^'#  q''# >'# M'# b'#   #Fbcm_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_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_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_apple@ L` V0C>  H%@/@\*@H:#r2%@U@#@0XH#Q@xX#2L&0,@@8Y0#.C02050h\4@(]# Lo^$00C0@@g4@]:$(: 7^8^%pmznztvD0 *H 01 0  `He0  *H 1o0k0F0.1,0*U #Build time autogenerated kernel keypuq1%ǑHG5<{0  `He0  *H k" }>6Vl;>=S>PVJ4TaVau'[lOBz!AkOMn'1"y #ţ3d\ocބڡ)RnȂGm%4mbx3'r>Lp6IhNTڝVSTX '".Prf fM̎L1W`HQZS(ّq_#" PAÌ2ck 0Sz"ad .,Nԑc:9c}/Lj %!kuyKT~pjk t- >\9jcۑXHhx-f0]l{> {_Yɂ!,>)@h[zEvD^1%uR9=si{@шy(xf?Š.pV3%hQI͎("XNEvZYM9"?Pl/׮}~Module signature appended~