This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

WL12xx WiFi+BT on AM335x - BT Initialization fails

Other Parts Discussed in Thread: WL1271, TEST

Hi,

We are using WL1271 Jorjin module on our custom design based on AM335x running Linux. WiFi is up and running. But when tried to run BT_Init.sh script available in
 
/usr/share/wl1271-demos/bluetooth/scripts of rootfs, following error occured,

root@am335x-evm:/usr/share/wl1271-demos/bluetooth/scripts# ./BT_Init.sh

/*
 * #################################################
 *                  In[   88.199829] Gpio value is :48
itialize BT
 * #################################################
 */
 
[   88.222320] WL1271: BT Enable
Found a Texas Instruments' chip!
Firmware file : /lib/firmware/TIInit_7.2.31.bts
Loaded BTS script version 1
texas: changing baud rate to 3000000, flow control to 1
Cannot send hci command to socket: Connection timed out
Can't initialize device: Connection timed out
[   91.672302] (stk) :line disc installation timed out
[   93.792297] (stk) :line disc installation timed out
[   95.912322] (stk) :line disc installation timed out
root@am335x-evm:/usr/share/wl1271-demos/bluetooth/scripts# [   98.032318] (stk) :line disc installation timed out
[  100.152282] (stk) :line disc installation timed out
[  102.272308] (stk) :line disc installation timed out
[  103.272308] Bluetooth: st_register failed -22

Does anyone has idea about what is going wrong?

Regards,

Dilip

  • Dilip,

    Can you share the board-am335xevm.c file from arch/arm/mach-omap2 folder? Also  can you check if you have uim running (check via ps command)?

    How did you build/complie the BT support?

    Regards,

    Naveen

  • Hi Naveen,

    We have Android demo setup using the same kernel. BT works fine there.e For Linux BSP, same kernel source  is used. 

    Yes. uim is running. I have installed ti-sdk-am335x-evm-05.05.01.00-Linux-x86-Install.bin. On, SDK root, executed

    # make wireless

    and

    #make wireless_install

    to build and install WiFi and BT components to rootfs

    Regards,

    Dilip

  • Dilip,

    Do you have btwilink driver (driver/misc/ti-st) built? If so, please try to start BT from command line (and not via script) as below.

    modprobe btwilink
    sleep 1
    hciconfig hci0 up
    sleep 5

    Regards,

    Naveen

  • hi Dilip

    Please try attached file and rename to TIInit_7.2.31.bts.

    4150.WL127x_2.0_BT_Service_Pack_2.42_Linux_3M.txt
    BTSBR#--------------------------------------------------------------------------------># Description : ORCA-Trio  BTIP 2.0 ROM Initialization Script#*# Compatibility: BL6450, WL1271/3 2.0 ROM#)# Last Updated: 30-Aug-2011  15:11:29.43## Version     : TI_P31.120#V# Notes       : Use this script on BL6450, WL1271/3 2.0  ROM device only (FW v2.0.31)R#--------------------------------------------------------------------------------(# Configure the UART Baud Rate to 3Mbps6���-�6���-7��7���� c���ͫ��ͫ�
     K8���
    �c�
    ��	��
    �~	���
    ��	��.�
    ,
    
    �.����_�xAD$a	����=��v������40AI
    ,2x*�	x)�!�!A`H0�F�MM$(�
    x�*��x*�B~*�B�
    *�J���B� p�F�F&��y��i��I)1���B��I	��B�$�"$��!)1\%�F�I�DG�(�/�0!�F�J�DG�I�J2�����`� �F�K�DG�H�I����Ah�H`$�F�H�DG �F�I�DG�' �N>� �U� 0�F�I�DG� �Q� �Q @�I��F�H�DG�%�Y(ЦF�I�DG �Q�]�O(���� �]#!	ACx�!)1"
    T�F�H�DG� 0
    !�F�J�DG �� ��%%�9x�)	�� )0!�U8�F�I�DG0x5#!	��(�F�I�DG�(\#!	ACx�!)1"
    T�����a��F�I�DG5� �]�B���N0x%�B�ӦF�H�DG�(
    ўHh�!"�F�K�DG �I`�H0��0��M
     A�H"$�F�K�DG�F�H�DG�F�H�DG(�)�X �F�J�DG�Hk00��H0�F�!�`�I�L"�2 #�F{K�DG �0���h"�`�J
    `AhAa�I�L"�2 #�FqK�DG �0��Gh$��M(P8
    "&�F�K�DG�Hx(�8
    "+x����~b�z@)p05:����F�I�DG�H
    0�WH0h�H*�"�`0�F�0�Fp�Cih��UJ�H)�:-ै�!��BЗI>�BЍB ��)�B!�\)�)� !�Mx	x)C		�@%�Z3&6B
    �3"�C�R�!)1"
    U�0�0p�0:p���i�(рHx�(� �F~H�DG~J~KxQx�B�x�B�� p� ``yHE0�p�.jwHh)�vH!����xc�$�FuJ�DG(�= sI�!I�FqJ�DGrHpCpJ"�FmJ�DG�9	9halIHl8@p�!A`!��`hHC0�F��#eJ 4$�\�B�3$�\,�@�2;���R��S�whA6+k����.a}�_�<!0H8x*%�	\)"�@h',!
    8$�FJI�DG8�FFI�DG�(p �FCI�DG ����rd��F?I�DG�hp @>I�>H�0��M��)I>1	x7L)�#IHx	x�"JC.I41�\"�F�J�DG 50�;!�` @��m!P	
    uYӖcPF$%N�JCzKN�x=�-b�52.31
    b��o]�E�a %q�_r%U��QFuۮ�-jg� 0�`����le�)���c;�D|]L�I��Ah���h�{�J><'��MN)6�(�(���(,�/Ђ/�P/�  �%�0x(��H	!"�F�J�DG�H�B��H �%�0x(ѺH	!"�F�J�DG�H�B@� @ �(��R(ѐ�)Y�(-�/��H�B� @�B�  �e�0x(ѦH
    !"�F�J�DG�H�B�1x�H�B:�e��  �)dѝH
    !"�F����ff��J�DG��e�P  ���(6�(�(h�/ЩH�B� @ �P/ФH�B�%� @ ��/ѡH ��H!%�F�J�DG(ўH�H`�0x(kсL 	!�F�J�DG 
    !�F�J�DG��/� @�BЂ/ЍH�BыH � `�0x(�qH
    !"�F�J�DG�/ЄH�B�%�P/f�H � `�a� @�B�|H�B�e�� �yH �  �0x(P�_H	!"�FxJ����`g��DGH�/$�/"� @�B�nH�B�kH�B:�iH �kH!%�F�J�DG(�gH�gH �0x((�KH	!�FeJ�DG!�P  �e�0x(
    �DN0	!%�F^J�DG0
    !�FZJ�DGUH!"�F�J�DG(�RH�QH �!hFp��!�"#$�F�L�D G�H�0f0��+I0��I�J72 $�F�K�DG�Hx�M(�(�0200�(�(ѦF�H�DG8H8!"����Zh��F�K�DG(�0p00��I	h�`�H?0�F�i�J`�I�`�H0�F��I�J�22 #�F�K�DG�Hx(� �I`�H�0��$�F�H�DG�Jh C`�F�H�DG�HG0��|��0��i#�Jh�I�B�y-�{&-��%*5-]-	�"� 0U� 0U�00�L2;��Bh2B`�00�T�"����������Hx(�����Ti����M< @��H&$i�		!@@�	 @�B��Hx(�& @�I0"�F�K�DG.ЦF�H�DG�N�Hx'd�0x�(^�8 �](Z� ��H!�F!J�DG(��H@�����(�(x(��x(�� 0�]),��H!�FJ�DG(
    кH@���(x(��x(��H!�F
    J�DG(!��~���Hx(�� !0�]@�� 0�U�Y�!�Upx����Nj�L!AC�H@;#\!CT�F�I�DG7�Hx�B���Ah	xA`�H@���
    %�L& x(	�`9"#�F�K�DG(�46=��0�p�hh�i)�0$�F�I�DG
    .��00�F�I�DG pC�I��!31"
    Thhha�H@p���i9!	\%)��!)1	\")�0!"�F�J�DG8 �a�H0�@��KP�I
    P�Fi��S��
    C�����Hk��J@a�I�a�H0�F0��Hx`h!�F�I�DG�a�H�-�00�00��4	��h=1��+kpU0�%�F�H�DG(ЌHx(�(�(щH)"�F�K�DG7 ``�H�0�00��b���_�5�A6hS�0�Q��_�����i4j9'x](1�sH9"��Bѩ��B� '�x]%(�; @](����Bl��(!�FkI�DG @�z"�FVJ�DG�z($�FdJ�DG(!�FbJ�DG xU;!HU�� p`ZH/0�]Hh]Hx]H*�	�)��	�)�C0�F50�F�F�RUHVI	h`UI��UJh�`����VH�SI�SH�0�F4$U�P�x!P��&MM$�2 @](�7 @]FI@!"�FFJ�DG(К @](�$� ��5>������<m��a�8b;HC0���tp�>Hx$9H��	� �F7I�DG(�<"7Ix(�P\(�41H�-�,�A0p�
    0p�<�F�4uO4��j%2a}�)���{����_PI����&% y�e�����}��IvS�*��_a	�d43���_
    �M�����6n���z(��%4$p��M(h�L(�4�(h�!"#�F�K�DG (`�4�44bp��@iz��,�	,� !"�F�J�DG,��Hx(��J� C��H!"$�F�K�DG� �F�I�DG�p��ihi@x1(ѼL�Hx!�H	�B�# HC 8"\
    *��!$�F�J�DGt� 0��I� �@(bp�������i�Hx�J�����0o��:є�:~��K��:b�:'���(��H!	
    #xx"@
    p01;���� !jF%�F�K�DGhF�F�I�DG(}� N!"kF�F�L�D GI� W�H?"�F#"�V�RR�B��V�RR�B�8;����Hp �F��@(�bF #�F�K�DG�
    ���
    C		bF #�FkK�DG� ���Hx(� �s#c� �I"�F�K����*p��DG�I�1#1�b�� !jF%�F�K�DGhF�F�I�DG!	�F�J�DG�� !%�F�J�DG�F�I�DG!	�F�J�DG������i�H�B
    ܄Bp�j8 g�8Y�8P�F8B�89���H .�8�Y8&�8��8�8���Hx(^��Hx�(Z��Hx(V�8!�F�I�DGD�8!�F�I�DG=�8!�F�I�DG6��z�Ip2�8!�F�I�DG3�8����$q�!�F�I�DG$�8%�F�I�DG8�F�I�DG�8!�F�I�DG�8%�F�I�DG8�F�I�DG�8!�F�I�DG8!"#�F�K�DG�H�00b��I	x)��I	x)��I1b�F�F�_e
    Ӗ�n�RDj
    e�?J!P���0��I	x@i?"�*E�:�H�-:]�$x��%�F�H�DG(�8�8�8�$����r��,�H28!"#�F�K�DG0�x@<�):��Hx�H)	�)
    �!"#�F�K�DG�!"�F�K�DG�H0!"�F�K�DG0�)��I9Jx�H*
    �"QV)	�2)�!"#�F�K�DG0�!"#�F�K�DG0���$��p��Hx�IphHx(��M�=(!$�F�J�DG(�(!�F�J�DG(!�F�J�DGp��ML5(&1����s�$�F�J�DG�I�(!2�F�K�DGp��F��'1��5��Hx(&��O8!$�F�J�DG)C-
    C8!�F�J�DG(C8��M:=8!�F�J�DGA(h�F�J�DG�`�H�00b��F%�U���/Hx(��I�"�C��H!"#�FxK�DG��@iA|)�|(� �F�H�DG��F	`�@iz(� �F�H�D����t�G��F}$��v�9U��_�_0��L!�Hx(ЊM�=(!$�F�J�DG(�(!�F�J�DG(!�F�J�DG��F�R�M�B�lHL0"#�FkK�DG%�sHxqI	x�B� �F�H�DG0�]�_g��R��S��A70%_D0�$�F�H�DG�F�H�DG�F�H�DG�F�H�DG����u��F�H�DG�Mjx*ѦF�H�DG�F�H�DGjxH,8x+��I+��M-x+�-��-	�+
    �#p� pY Hp2 �#p pHp�p*��H!�F�J�DGoH�
    !�F:J�DG��FNP
    !�FkJ�DG$�HhA!T0��F�H1e���L�Hx!x�B
    �!�H"2#\+�R�09��"p�pU�|{���$�F�H�DG�F����v��I�DG(�'	&�M> @]�(�; GU(�F�I�DGL5>���t}Q���H!"�F�J�DG(ЅH40 b��F�_
    Sw��_}��Ѯ`��0� i�i)D�x�*AЊ��"�B<�	zJ���x+
    �*ыB����~Kx��:#\%+�*
    �9#\
    + �*�"*#%�FuM�D(G�"*#%�FqM�D(G��"�2����w�#T�"�2T!�FmI�DGjH�0 b0��jIkHjJ #�FiK�DG�G�-jDj
    �s���p�ni)i(~�>�!8,�8(�8(b�p~(_�& �]([��x� @�py@@qJy� @Hqp�0~(K�x(H�q� @pw�@@�w�� @�wp�$�F;H�DG�F6I�DG(0�BH@I(bp�x((�� q0�$�F<I�DG�!���B�����w��9I���B�: �](�9!�])
    �(
    �9 �](	�!��0�F/J�DGp� ��p�p�ni/Hx(� )I$�F(J�DG0�F'I�DG&H0(bp��R�.q�uY�u�u�[a\ $1Ju8$Y�+�!P��F�4�J�˿Ѿ�9`���+k"M�U����9�������x�M�}��_��hF��������hF��������hF��������hF��������hF�������hF��~�����hF��������hF��������hF��p�����hF��������hF��������hF�������hF��h�����hF��~�����hF��%�����hF��1�����hF��������hF�������hF���������
    t{������������{��`�a�ll�b�b+c�_�lgc�c�d-dMm�h�h�h9kkhwhIi�j�jYk�kb
    b�l�eWb�������d�N�M��N��"��\$���bh��IdL����•t1�_��Ҥ�R6xO(2:�� �L�J6�����*�b�����������!$�F�J�DG�{�I�+�����h7`6:��hFp("��F�L�D G�("�F�K�DG�|��~� mF(r�Hx�}&��
     �F�I�DGhF$�F�I�DG(�0A6(�ѦF�H�DG~����z�!�F�J�DG�}��Hx�N(���i���0x(� ��} hC�I�I�F�J�DG		�H0"�F�K�DG�H������Z0!�F�J�DG�H!�F�J�DG�.�&�O8
    !�F�J�DG(C��(@��Hx(� ��} hC�I�I�F�J�DG�	&82�F�K�DG�H!�F�J�DG�H1�F�J�DG�B��H1�F�J�DG��H!�F�J�DG�H1�F�J�DG>6,�8!"�F�K�DG�H!�F�J�DG�H!�F�J�DG�B��H!�F�J�DG��H!�������F�J�DG�H!�F�J�DG866�Hx(� ��} hC�I�I�F�J�DGp	�H"�F�K�DG��(С�iя�~H~0!�F�J�DGzH�0!�F�J�DG�vH8!�F�J�DG�I(4��(1�0x(� ��} hCgIgI�FgJ�DG�	�H�F�J�DG0x(� ��} hC[I[I�F[J�DGH	�H"�F�K�DG������>�!�F�J�DGSH�0!�F�J�DG0x(� ��} hCGIGI�FGJ�DG		GH�0�F�J�DG0x(� ��} hC;I;I�F;J�DGx0	sH"�FrK�DG/Hx(��(	���(�2H!"�F�K�DG���F�$�)B�A~Q?Jp�E{�{I	x)7�{@�8�80�!�!�!H20"$�F�K�DG�H-�������-�-�!"�F�K�DGp�!"�F�K�DGp�.�!"�F�K�DGp�!"�F�K�DGp��R�c#�S?B@B-j��tѮBt����I	x)`��z�I
    p�I{p@{�Kp*UўM/�?�N$�F�H�DG9�@H�0A6(�ѦF�H�DG9�@H�X �F�I�DG& �H1�F�K�DG ((81�F�K�DG=������(!"�F�K�DG�H0!�F�J�DG �F�I�DG�H!�F?J�DG�Ip(1"�FvK�DG>���FDt`�𵅰lF!	hF"&�F�K�DG x(�(њHx�"�V�BݙV!hF@�V�p9��!x�H)0�9&�9�91�gx=X @9"�F�K�DGh @9"�F�K�DGx @9"�F�K�DG�a"�F�K�DG�a������8"�F�K�DG�a 8"�F�K�DG`��I����Fۮ��Y��t���'{�z�I	x�B?ёH$8�a{�B9Ѡ{��H=(!&�F�J�DG�H!"�F�K�DG(!�FJ�DG�M=��/� (� �F{I�DG�(�����|�|C!}	C`}C(`4:��/���0��z$�FtI�DGsHxsH-
    �-�-�"JCpI�"�F������eK�DG0�"JClI�"�F`K�DG0��F��|e��$�FcI�DG~{/M=hxq0ѹ{(�)
    �_H
    8!"�FJK�DG !�FXJ�DGWHh8
    !�FEJ�DG�(�?H!"�F>K�DG !�FLJ�DGLH!�FAJ�DGhx�{(�)�.�.�.�.��{(
    �@HT8!
    �F@K�DG=H!�F2J�DG��F�_�_�_��������R IIHp4I�8�"2KCb2K�c2Ka2K�g2KSg2KCa2K�g2K�f2I�e2I�b2I�g2IQe2I`2I�`2Ie2I�d2I`2Ib4I	x)�0I�d2Hx)�3!@h
    \
    T�F�F����{����?J�x81< }Q�q�RH1,		P�g}�e��N[yyy�yoyey�y�y�������y�y�yQyyy=yGyy)y3yy!P�R4$�@��
    �@�@�
    @��@��@�
    �
    
    @�
    �
    @
    ��@�
    �
    
    �𵑰�H�hF���H����H����H����H����H�
    ���N 0p#sp�px �p "�O99$�F�M�D(G�x�x 9�F�M�D(G 91�F�J�����	��DG�F�H�DG�I`�H�I��Hp� �Ip%�Hp�F�H�DG�J(h+�#�@C21 )���O9�1`�H`�H@x(��x@A C�I	h���H�r�Hx�H*�F�K�DG�HH0!�F�J�DG�H!�F�J�DG8!�F�J�DG�HL8!�F�J�DG� D0�U� �]�Nd(��H	!�F�J�DG���u
    ��IHp�O>�>�!�U�F�H�DG�F�����
    ��H�DG �H�F�J�DG8*�F�K�DG�H?8!�F�J�DG8!�F�J�DG�O8!*�F�K�DG 8�F�K�DG�Hp�H
    0!*�F�K�DG�H!���H0!"�F�K�DG�O��N�H�x(2�!�H���H@x(�()ѵH!�F�J�DG�H8)
    �F�K�DG !�F�J�DG� �H�F�J�DG�H
    8)"�F�K�DG !�F�������J�DG�I�@8�
    ��c���
    �!�H�0�F�J�DG�H�`�A`�b�Ab�c�Ac��d��d�f	�Af�0!�F}J�DGfH@x�I(]�'N8!:�F�K�DGpx(�(��H
    !*�FoK�DG�H!:�FlK�DG��O8!*�FgK�DG8!"�FdK�DGpx(
    � �W(	�2(��HB8!*�F[K�DG�H0!"�F�K�DG�HD8!*�������F�K�DGy�_�_�_�_�_�_|{�(�h��H�>�F�H�DG1�@H�8A?(�ѦF�H�DG1�@H�X �F�I�DG/�H�09�F�J�DG(�'�H�0)�F�J�DG8C�O5ѧH�0)�F�J�DG(,�8	!"�F(K�DG+��FO�9��_��_���_�_�_��{�_8$\O�R �����
    ���R8!"�FK�DG8!�FJ�DG�I��81�(3ڂH*0!*�FK�DG�H20!
    �FBK�DG ������`�R�a��|Q�^9oj1�����nP�*�H8�I�F�K�DG �O8
    8�F�J�DG8!*�F]K�DG8!"�FYK�DG88!"�FUK�DG�H�8�7!�F�J�DG�������!"�F�K�DG�H!�F~J�DGH0)�FvJ�DG|H�|Hx(�()�oH!"�F?K�DGwH!"�F�K�DG��Fe�S�g�	*aH!�F1K�DGiH!*�FzK�DG-Hx0!�FYJ�DG�FbH�DG(H�28�)*�F#K�DG �)�FK�DGH0!�FKJ�DG� �0��SH�ȃH�"8�!�F[J�DG� �FMI�D������G�!�F=J�DG5�TH@xIN(�H0!�FEJ�DG(���0
    ��}"QCq�F@K�DG0�{�NtEH@x(���0
    ��}"QC8KY�F6K�DG��F�� 4O�p��0
    ��}"QCq�F-K�DG8!�F2J�DG+HpT!�
    R�E��0.I�x*�F&K�DG �"+IPT#!�#J�\0�T"Hp �&I�n!$HAtU �I����w�jt������~�|��`��0K�5�h`pU�|`SQ?JY�	�x,	 �Qg��L�_�_��RS\Oe������[���I9Oh3 �]	�Fx(7��Hx$%"�# PC�I8 �\(�x�!AC�H30@\(�� "0�\(�%�$P�B�� -�,� `E�3!�
    xCp @�I��p�&�M2 @](�7 @]�I@!$�F�J�DG(Ѭ5>��p��H	!�F�J�DGp�𵌰��O8�@��!�A	ӥJx)Вx�B�!C�w� �����\��w��I	�9	�@�~.��0!$�F�J�DG(�%0!�F�J�DGi��@�F�J�DGฌA9���w��� @$�F~I�DGC ��F{I�DG8����tH{� �!�FuN�D0G.oH{(�8�A
    �8���FkJ�DG(��
    ��FgJ�DG(�&
    �XHx)�<!	\)�@�@	��
    �� `I�F`N�D0G
    �('��($�=�(��FVJ�����]��DG6(��FRJ�DG�!�!	��p�)�FKJ�DG1C��	��%�CH{	��p�
    �� DI�FEN�D0G	��xA�-�
    �(�9���B�H	� @�F<J�DG�9�� @�F8J�DG7Hx��-�
    �(
    �9���B	��AAC ��F-J�DG��C ��F)J�DGHx��Ip{!@hFr9�A�y�I���sI	{I!@������^�t�A���I���u� ��FJ�DGI�1]1�b���F4$D|8$!P�
    F������`�`a}o��O�]�Cz��U�+����u{��������S##--------------------------------------------------------------------------------7## Description:   BTIP2.0 PHY FW Initialization Script:## Version:       2.54 - Modified with TPC default valuesS##--------------------------------------------------------------------------------
    �$����@� �-�-�-�-�-�-�-�-�-�-�-�-%'�$�-�-�-�-�-�-�-�-�-�-�-�-�-�-�-� �- -��C�F&{L'{H&s�|x����(���z��xwH�uM �|P@� h�����~ �C8F��'p�P�&p8F�L�&q'rO�0��������@��`��a��,a(� �p@�p(���v��bH�@
    �aHr��@ap(� �(���w@���w����w��Tp ��Pp��L������-��GRL�FRH%%p���(��F(@FLN�j0!p���R ���%s(F���''s��%q%rDF���@��p@�sP$��8F������  �� ��(F���8H��|p���P8F��� �@� � ����������A�І��p8F������P8F�� � �@� ����5p���� $M$$N�p 4p��4q ��4t ��4@����J@ F4s��'��Jp ��(�@��P(���(@ �� �� �p�0�I�@�@p�L spGB�  @ @"@@B�B�B � Bd@�,BJ@-��O��@
    �K��HO�	��2���3����}"L(�������B���5 �H�N�b�1F����3`�@ш`�1р�JHFxQ)� ��HOFŋ����������K�O��МF�� �O�S��00��"�	���F���@4���_��a��;��F �O�����E���	���9��e���DO������x� �����B�x! �"�,� �
    �O�e�
    ��H��wO�����\O���r�����C��H�����`�`�(*���@@�O�e��������HL�P3��
    �x��Jo� �%��v0�H	�
    �)F����������O��0HC����A�z`O��Q�������8��
    �)F������IO�r�M��Q����@1�����dr`���� �&�,wI�`����&�*��(@���� � ��
    �(�xjpe�j�e�j�e8k0fxkpf�k�f
    �������D���v�� B
    ����hqei�e��v�O�?
    O�p��l������t ��z ��x� ���O�p��~O��p��|C�:P���B�	0���A�@��� ���: ���O�p���� ������z ���l �O��p0� p��0�o�	@��p0��� ������ �``@�`����0�0� �@p0����Fh@ @	  <$@� �1 �����v�
    ������E��
    �)HR��k�e9l1fyl�f����O���v!��l���t ��z ��x� ���O�p���� ������� ���������0�o�	@�d0������ �p`@�p����0�0� �p@�pH��Fd�B@@B��j��_�Q�B� �����Z!��l����t ��z ��x� ���O�p���� ������z ���l �O��p0������F�0�o�	@��p0������ �``@�`����0�0� �@p0�� �����~� ��|C�(`���A�0������� ���2 ��� p����b(��� ��� �O�?
    @���A �	�(Ѡ�@(������F��p`������ ��
    �@�'���	h���<�
    ��!)��IBtJ�Bݴ�����C�3Y��p@
    O�r� �O������G�A@�[2�&�XF��Y���{`��P��(������������XF�����AF�
    ��}@��!����x��Cp��v(����
    p�@��@��@�H���hp����H���\���b`x��b`���ba@����b`�� �C��b`������0������2@F��T��n��s���R�B�����3��(@�d������P�����H�����(�  ���4��3� �
    ��PF�	�(M��(�����p�� � �V�F8
    �Ґ�2(ѥ��P���������8�8
    � �?���T�@F���!�����B����2(
    ��@�	�`����
    �(�	�����
     �����	�(��y�	�(*Ѵ�\8���T�@F����������B��f�O��`��� ������I���F����d ��� ���F���8
    ����(�8
    �@F�����@F���( ����(����2���N���N�๔������(��F��
    �(	��X��H����2(����3���������
     ����������
    �(ۖ��(� �)���
    Њ���������F B���5O
     �������J�$��`���T�@F�[�������� �|����(�������
    �(��(��(	ѻ������
    ��0 ��� �3���@���(/� �3 �f�	 �B�a{)����@
    ����20����3�@�`���!�3d �J�	 �1�@�
     �����e�����������,B0�)L% x(G�(HF�:��pq�q��Bɲ��B�����K�!I
    p���1
    ����1
    �� �����H�k���3`�k���3`��A�Kp��@�����B�����C���Al�J`�I��H ��z ��I��~(F���	Hx� I�%p0�IBC��pG$	 L�B�@� $@-��O��|
    ����I�@��I	��I
    ��I���p��� ��HF�
    h��8 Jh��< �J��1��@0�M+x��A0Sx��B0x��C0Rh��D �����L��� ���z ��H ��~ ��I ��x ��z ��| ��~ "�p$rI��� @p�!�aA��a�oO���q� �@P�? ���qp ��Cp< ���qpO���A���cH�U�"���
    
    �*p���@����������������YHO�q	���A����E
    �Q ���0p F%�BL�� ����B�	���8����%�JLH�����������E��P������M�
    ���L��
    ��
    �����@�l�?H���h���(�%�BL�
    ��$���4���8�@F��������$��@����
    �����������(���
    a� (�����	��O���h�������BC���@��HC��@������*�%�N(��a� (�
    ���Kp�y�O�p�� ?B� @�����N� �B@d@	=Z@ 	 ��B@ ��������	�(�ѧ��q�	�"�����q�	�"���!�K�4�t����@1��6���(����0����
    �
    @(���P�쀵�|@���| ��
    �����K�
    ���� xA(�%wHx@�n �G�&7F-�F�FO�p��j�	��O�p�O�p�O�p�O������O��p�iH� 
    �
    ���F��,��PF	�dH������� �	��
    ��
    ��
    ��������$�B����@����>������<� �����������1��$�N��� �a�  ��1����6A��1����4A��
    �xA(/Ф�B@p8F�����@F����^DppPF�������P����pHF�����p������x*�Ў���$A���&A�����*A�����(A�����
    �0F�P���B@p	��J��x(�Ф�$@���&@�����*@���GE��(@�����@F8�E��IFQF�B���iZ�B��iZ�BFܕ����	� B@$@����nZ.���1Ф�6@	����4@���(�@F����B@���8F����x(�������Q���$@�pC����&@�pC�����*@�pC�����(@�FC0������p;��B��+�p�F��AE�����A�QE�������IE�����	����
    �������(Z���2��	��I�������������I��Ӯ	����I�
    �I
    ����xA(
    �8F������U@F�����ppPF�����p�������x
    XL�����R�O���WWHxX� VIp�
    �iF ����� ��W��OHx)�!NJppMI �pG�LJ�S��BؿT�������B��&F
    ��BܣB�����0%Fڢ��PL'�2Έ���L��B���F�F�B���F�F�EܮB��5,F�B�#F������K��B�����B݃B��F��-��A��
    'M"L �� pO��vH�(
    �@B���������S�B�]qAC	F��J#
    �o��Fo��8%2m�L�{B��N�{��O��w
    �C%#[�[,�{��H
    �hF��x�1FhF�?�(�%p���0 � $	 � $@@  �
     ����� ��I p��F$ B-��O��8
    �I��J��I'�px!Q+�9��L�N����1��h�@F$0�@9���^  ��`��:��8��d�����T�	�0�0F�p0����B�x! �"�� ���K�I�����4���IO�b��
    F�1F�����dp�*F����wO�q���d��O��1O��O��FO��O�����F�������
    �N��R�R*JF#�%��
    ����B݉1ɲ�!���0BF��	����B݉1ɲ�!JF���02���0UV������|U����� ��ѫB����,��"`"	���A�R�R*+��A�����O�q	�@�UB��A
    �@�������A��A��"���!O�q�@��#��ApO�!� �,nH��s
    ��8���g�B����f��
    ��|8������B��8
    ��t
    ��A�u�|�F�����
    ���| D��� � �p`@� *�7є�5 1�
    b�����vV�0!�
    ���PHx(�(�PF���[o�1A�Q	��3b�PF���[b�1�S!�BB	  <$@ 
     �@8 (F��
    ���40�c�1�S��2Јa�0Ѐ���$��Hp������O�@���T`�P���(���@@O�L����	����O�`�a�����O�����) ��(�@ R 	�HC�������pW�a�������+ኅHI!������pA�C1�[�#��O�"�B��Sp@�@@��)��F@ � Z ��p����p@��@@�m)�
    �@{`��P��(����Ep���Gp������������q���y��x�
    ���[ �|P@� �S���}��|PF��*�"�C�S����q8F�������8F��5� �����jX�@�%��O�
    ��(� h�5� �p@�p%����@�p���0��M@�00���|�
    ����o/p�@8�/r8F�_��(p�@<��(r�`���є�����-������+��O�.���,�1 PF�����(����
    ����8�9��� 
    �O�zq�h�����XC	�AC����F���������"ኒ�����I������dY�ӆ�3'	���4��)��F��Ѐ+��@��@��#�@�B��BBA�C1�["��B�@�S��37@������� �@�������4�	��(��F ���6�@��`&��؜��|
    �����8�A�Y0�[!�aA�a�S�A�C3�[� ��`�FI��aCHF�S�������(@� ���
    �!�������C�������@�����^Z������ �C����z ��p������@pqp ��*�D| �r�������s� (p`���8F!��
     �~�����C��� (p�MF�����(Q�����N� �o�0�S8F�F��[o�0@�@�S`� �@�`��� p2 ��$p�3�`� �@�`�( �*�`� �@�`�2 �`��(���`� �7�)F�����X[�� � �@��S�(
    �2 �	�4�HC$��!B���s�����F���-��OF�FF�Jo�Op�IZO�+F0ZEo�PpZQZ�����F(F����F F���F�Hx(�a$�$��DD��
    �XF���(�0԰����� � 0p�H�(�,,Դ�����$�$<p���~I}H	h`}Ih
    �}I��/ٳ��/�h�`� �@�����R\��hR`� �@���@��pGlH�)�h@h�I�����dH 8ppG��� G��s�B�O�*SKCU$�1������xO�V+�ZC�#�!�1	ppG-��A����(F�FPO�NF4�`F��@��ц�X��`���h@��E��������@0AF���X�`����!F�h����<HW0x�(�`F@���64r������L]��`F"0�E�-��E�$������$p@1���p~0!F�������v��p��~@����IFg;��x@���� 0���\		�I@�0��`
    0����o�@�pGI	h�������
    �����@pGJ�I���H�Z�F3 0�ZK��Z��pG�FY@�����"BX$@� � l � @-��C�F��F�  �I�M����F^�����	��K!�@����A��(�@�p(�!F�8pq��<"���d"`���H���L����"!F�����@������A`&p�@Ҹ��r� ��Ap�H��xѯHx��A ��� ��F@B��� H����B	�������0��bI�	���B����a���7FO�	���@p������^��HF�M����`����@_��I�� �C���`� �U�/�ۥ�@���A@�p���@���A �p@��HF�'��H��Д��I	�F�F  p���&p���0  �^J�#��� ���0O��r����qJ�S����CC�BO��R�B(� �@0�FlHiMgIh
    (O�T�(�1(� ёB:�(�(�,�$,�(F�B4�@��,�����:`� ,�(F0�B4�@��VJ!pO�zr����SK�
    
    ��AC�e�Q�����		Y�0��F�@p !B-��AIL��� �'F? �@� �8�T< ��`@�p��H �h����P8� ��`8� �_�8�N ���H �V�6H'p8F�P���p@@�@��� A��
    <� ��� ���F� @ ��� ��p �8F�5�'I ��T�p0� �p0���� ����4a�B� H�A�p�H&p0F��HL�<'$�H�zM��P!����A�/�� � �@� �.p0F��� (p��F� p�B@
    ro�� �BB"@� l@��Bl B� @� -��O��4
    �M��H���4�O��!�J)u!p�J!�p�I$��L@��I�N�O	����s!�qA�q�A!���sp���M��N���a���������.b�4("������Hx(�� �8F��@��(�8F"0�@
    ������jF�
    �������� ��uqp��~���upp��vp��z8��r�z�Ip(����a��HO�
    ���<@���!�p���pqO�@PF� p� �p�p� �p�yH	����B4�q��4)v�
    ���uJ(�5��(2�G��po��:�`1o�2����	�������(c�O�"K��A���*#�I�{,�.�<��B�������
    �́�	xO�)
    �7щ�)4��)1�o�1G��s��"O�
    �p�(�&�$	��~@�*���@K�{,�;���@.�;��@)�;<��B����
    ����
    ������H������� ��n�����4�������	�r��L@p���4@�4T-Hp��� �����"d������� �������w��%I���B�p��@r���w����w��wh����vp���F g@$	B	 Hp���w@�����H��@p�p��4� �p�
    �����F����8 @J@	 ��B0 B�B 0 pB@B<BBM$@�H�I`�Ix �px�Ip�h��I p�H0x�ü�H�I`�Ix �px����e��Ip�d�-��O��,
    �O���q �?����� �� �@ ��H��H��H��H��H�L�����H�MO�
    	�HO��N
    ������!xA�
    �	�I��!p!x1p�1x����0����1x)��1x0)�0)Y� )� )k�9r�Is��n�Ij�Ie�o�!9Z��V�IR�IM�f�Q)
    �Q),�194�9
    �I)�9;�Y�p9�I�9�I�P��A(�(x����f� �	��{��(p����B���������B�;��
    �8����5����2�����(p���+���������$�����������������PF�PF�@F����@F����
    �����PF����@F��������1x�����	���4�!x��!xp)�)x9�"x�)x��B�!x�9������������!x)�M�)x)?�I�)x!p!x����g�1p���A�����������I pHx��F���(	 	 @4$@(���L$@L�A�	 � 	 � 	 	 D$@�I
    �*�	hIh�J����ɲHC�B,� @�I" �@
    �H` � �H�(��
    �pG�JF�C���B� � ��pG�zKF�C�� ����� F�����tJ!Qr����P��pGpJ!Qr������
    h�����pG0�lL#xex]�?=-��Ch�[�?�CA�[�?�CB�[�?#p!]H8�0��\KFFh�B'�ZO 8p ����XHF�� �@�� 8p���`� /�(� ��u�,�СLL*hID�+��`/��p���
    FGHjFx�x��� ����
    ɲ)O�0@�������2=�HC�p���7I����i�7I�
    7J�F[����BрI� "���@D�R��P�FB�R���FA�����<���Q�<���a�P<���k1�<�����<��9��@���1FpG����������F� @B��,$@p  	 �@B@�/�.����A4p�jIhHhh�
    (�����i��(	�(�(� (�$(�1(�F`L `M�g��}���(ѕ�V �����B�2�� �����		�THUI�������o@��g�	�PHPI�������o@��gp	�LHLI��������o@��g�		�HHHI��������o@�@�g�
    	�DHDI�������o@�`�gp	�@H@I������?H?I�������o@��g�	�;H;I����������j����}��o@� �gp
    	�5H6I�����a��o@�p�g�
    	�1H2I��������o@�p�g0	�-H.I�����2��o@�`�gp	�)H*I��}�����o@�P�g�Ӡo@�P�g�	�"H#I��k��^��o@�@�g (�p��F � 0 $@`$��%lh#��!nt�8 �L��p�,������k�%��Z\-��O��4���4�O�	������ONX�IIO��0F�(x� ����DM�S0�$COo�1A�A�BI��������R��pC��tC���p2x��[O��_Op���O�"��b�7H�'v��`Cp�����-K��+KpO�@P���G0���% p�� p���p��np���nr ����0��P�<p���2 �@`�����6������l���� �p`@� &�� ��sHF��=���sKp� �@pp���G��H@�����e �p�����<@,p(�L�#L�!L��@���$ B 4@�@@�Bp$@%B� B �.�._�_��B�h�h�*�xp������O���� D��pG_�P�F������������H��B�H�H������-�������m���a_���F����O�
    O�������p�MN$,r��������,p��������,s��������,q�������p�0�	M$ ,q����,s ����,p ����I ,rp0��FB @ ��Ѻ ������L���q 	 �F�	 �F�	 �F�	  	 ��%�!�n����(�e�X���;����}����M�����p6�p��)�sI"
    p"
    ptLuI"x*2�
    xnKR�"x"�"p"x
    p!x�B)�F&�"xhNiM�
    �!x�B#�p )�)� 0pp�"x"�"p"x
    p!x�B�Fp )�)� 0p���p� p xpYHYI`���p��ONWH6���' UH��BO�!O�!%��K�IIL/�F'��
    O�
    pO�
    �0p/� x(�-
    � x!(� Fx1)�x����j7�A(� 0p��/� x(�-%� x%("�%�p���%Es�s x(� x!(� x1(� xA(�5p�n� x(�� x%(���!As�s1p�p��)H88�@2�$H$K���#H�F�v	xٹ!J!x"� *�!i�!��@���t""pp���rp�����w��!���p��wA���w��F4$@	 	 
     	 	 (��I�Ed8@���^ � �  @ABD$@	 ���L����-���L����$��
    ���
    ���
    ��������p�FM���`F��(F0���BЁ�!� �����.%D�(x(�p��F@-��O��0
    ��,���4��M������p)FDx��HF����8��9�Hx	x/��������Ҳ���\۲�\��FFuFfF�� �C��F ��P@� ��p nM�p&���������.p�������p����qO�
     �@�����p������z`���H1F���5FƲ��H�AQF��v�FqC���"�N����?�B�mR��-�<���² ������H9F@��X��ʲٌ!��A�ل���`F`����`�b�0@�P��H9F@��=������H9F��������@��5����,�������,����)	�
    ,��)�
    ,��
    )�@����N�'�@vQF0F���IF	�HS����,����)	�
    ,��)�
    ,��
    )�@����OF�����F.F
    ��XD����F9�v �`.@�xS����,Ų����������
    (�
    ,��
    (
    �
    ,��
    (
    ��� �@�@B� @m��eO�&F��8����IFv�.U���������p���h�/F�����QF�����IJQF�������Bܿ��HF@/DU���MH����LH	�LHNF�� �
    �������YF�����������o���F�F�ϲYFPD��d����F�B����� #ۻF�_E�d��0@D��M��Dz��Xh�3�_E�d��0@D��9��,Dz��	��PD��0����B���� ۭ��F���
    �HD��!��qA�"�		�	��v.!�E����������Ȓ�����z`���������� �C���������P��@��8� @ü��������{tle^��JO�FF��!��p q�q��B0۲��B0�Kp���3����3�����3!����{I�k`�k���3`��A xKp��@ wK���%��B �������Ȅ��$��C ���$Jl`��H0��I~J��~�I��z0��| :�"��| ����hI  ��-��OO�q����O�O�{�������q�"O!TF�;�B��I���<�<�0���q����B������B������FF��F#
    x�B���FFI�{"�Bؿ"[.x��O+B����������+�Ӿ���P
    �ս���-��OO�	KI�F@�F�F���TF���`bFcFeF�/,�@/*��C���<	����x�F�O���FqF�IF_����	Iɲ�IF��O�p�����OFx�F�IF������I�)��d�B��KFO-��BѓE��������	ӔB�*�!aF�F_����O�KFLFJFmP-����@D������FL�B�@� ?B� @$@  -��O���}
    OcHO�p���8����P���P���P���P\Hx(@�� YN5p ����XHF�� �@�� F�0pHO�
    O�{G�PHo��8�FH���� JEp�����������F0 !�2�IB��C�����
    �iF �������&� �����s�H��!S�+I"`��&� �����
    �iF ����(F���2�������� �����U��!H�"hIC�+��&��������������2�������������� ���0	�	C��� R��� �����0��� 
    ������������� ��� ����� J	��H
    җ��(	�(�H	�1�� F�з��@���F�G���|II�  ����� � �@B@@ $@-��O��LF�F4�\$�9x�B��rO�";�J�ZE���F�L�J]�B,DDO�;���d����K�&�F!�!�O���������	���4�5�9@�Eژ�P�a��!ܘ�Q����!	ܘ�R����!Կ�������p�qE���F[��pF����-��O��p
    �L�F���q���+pK%��pI�F��*!	�
    ��%�
    �jK�M�#��iMaF�������F���Rd@�B����������R�[J�x���	��B	����>��3�V��*�
    ����
    �����X�O$���F9�{>�+:@BE���Fd�b���b
    ���B$�"
    �	�����������F�2���3�_�B���+;�� 
    �@�B���_����Iɲ��X����)�к�	�����������_�����X�O�
    ��h��F���s����*1���-�E�aDɲ��X���Bܿ��*@BE�����fE��N*@���E��,Q���ֲ*�)wЍ�`��FKF����
    ���	�����.��d�����2Q��0�BW��
    ��S�$ �38 @ � �x��������Ȓ�P0��#���#�����Q��<���,ȿ"ܒ�R0��#���#̿""��F / �NE��	Ӧ�	RKD��l�R����GE�ڒ�3Q��1!�
    ���RҲ���N���ɲ����,�ҹ�X�!����
    �q�
    N-�Կ�N"d��������
    p��F�F��RO*����,�
    ?�®�
    2�]x��B����&�pm��O#�6�K5�!@�B��
    [��N ������������-��OVM�F��uGUL9�&�F!�A�9����a���`pO�QA��XF'��&p������u(� ��`@�p(�PF����������������@�'�XF&p����(� �@p@�`(�PF����O���@�0F'��&p������ؠ0F�������8� �8�0F���`�������d�����`(���	 ��`(�HF�����J'L��� x��� ����!�"���@��
    �A�p��M(��N ��@@�P(������f�(� ��@@�P(��������������\�,l(� �@@�@P(������Q�(� �@P@�@(������G�)l(�d ��@��t(�`p��F�@�BL�B -��O��P
    �HiL%h������HF1	xF
    0��I�	x��I
    p
    t���PM!	��! �@�����X8xs
    �@��p������K�P������xH���������Ȳ����t�t��|(��΀ �rH
    ���
    ����(�
    ����� ���(���F������o�
    ��@����(�HF���x[ � @�xS ����x[ �@� xS(F����x[ �0qxS	��&8Z����D���	�v�F��O�
    
    ���(���
    D�����������O�A��������I����O�O�@�����HC��� ����� ����� �����	��� QC��� ���� ���� ��
    ��F ��@�	�@�
    ���8�������|�a�������� ���� ���������� ��}���	�����������@(���D���|@�t�|(��6�
    ���t�����xs���p������`@x3@�B�  ,7@J-��AULO� F8���
     ���� F0&F� F$�%F
    0�>'���� ����1�Dq�
    D��(	���@!	��	��������-��O��
    �F�H��������h��H��F���
    y=��%��HO�	$� ������`8�8@�AF�� F&��@B�0D[���+���Ӑ���@Pp����F��T��O��2��
    T�08��B%ڹ�(�БE���uhEB���E�(�� ,�F�,��$*�,����?���������-����!F ����.H�>AF �����������F$@-��O��
    ��đ��ġLF����ȁN4� �FF��0h�ph�jHO�q%A��� ����
     ���eH'p�� pd �p@F�!�aA��a����|�# �@Pp���pp> �0q/ sq�q, �qXHpHF�8��P�!��������������L�"!�$����xq��P
    p��P��P��LF!�����l<O�"	A�!�0!���q������c��b1���A�p������!�aA�@q���)F ��Dp�������P#6H!����B�[����ш�p �@� � � � ��������q�=F��c��bq��� �p@������������5�-̿O�pO�p�O�@p���!��aC���9F�����m-��8F�������q���q��p��p��p��������0`��p`���33� @?B �B@/B�!@B� @|�������Ǎ�~wpiaZ�|g|�|}�}�~�s�N�T���C����ij�����������xiZK<-DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD�����   @@@��������""""""""""DDDDDD������"""""""""""""""DDDDDDDDD�����������������
    
    
    
    
    ��������������Ĝ���Ĝ����\\���\\��������������ܔ��<<���<<��Լ���Լ����||��������������F�����������������������������������������������������������������������������������������������������������������������������������������������������������������pG-��O��
    F.��	O�F��!�H-����������	 ��D�l� �����'p,� ��IG��{	�������H�.��`�����	��� ��p�����p8F��������F(��@B�E������)L�O��08��Ѱ��?�iBM��E���uiMB.
    �,����?�,�(�d	�,�(�,������������?,D
    �d� ,�,H���$-�F��.�����@�����	���p�FiH&iLpcH !"��&ppAp!�p�p)F ��[�")F ��V� ")F p��P�")F0F��K�2F)F ��F�2F)F ��A�p�-��O��
    ; '��1 OI����pD ��N ��( ����������IH��}p�F�x��&�EH���O�
    ��R DM�F�O��b�O��r��R ������� `h�8F����8F�����3(���
    	�	��d��p�����R?� x�h�8F��t��"x��} ���*L �@� � �@� ��p����.�@�����������8F����������T�hh�����`<F F��K�d ,����p
    Hp8F��������}`1F��  ��������� @�,B@B�!@B0 ?B �  : @��HhO�t	
    Fh�B���Bؿd��R�K �p�� ��#�! ����M(x�C(p
     ����$ ��������,s�����H�A��a��Hpt�H@��1F
    >1��I%	�O�@"A�A�`ma��� pr 0r�q�H!tp �����-��O��$
     1!��������;!��!��'!��!�����zIrNp1F9�yKxJ �p@�p�R� ��bp�o�0�H�O��7v �@���������oI�S pp �p��3 ���( �����A�j��$P��%eILF��!F��m����%�B����.���2 ���*6�
     �C&�
    �� ��m�C��0��2��1��2����F�B��'���@�z�6�
     �(C&�
    ��3�����E8��F��C���������������Ȕ�2��3�B�!��B���,��AE��������2@��2��1��	����-��O��(
    )L����"&NoF���!��u����sXRG�;��є�d�'��dp��"	�g����)�(������d�	�`�H���%p8F����
    Hp!t�kF������S�+IrQ���
    ��������Ƚ��@Bd�B@�B& <@ � @�����@B 8@0�}L%(F%p���^����  p(F�����s(F�����s(F����sHx0�0�������#ԲP�(�8@�(�۲����B��BO��@���%�B������C�_H
    Fp�� ��������F����0�-��OZLO����1����1��) UI�UHO�
    O�������PF��%�LM���`x����`x�hx��F���`���%�b����`������(�B� %�@F��c��B�%�<L��� ��X���� (q
     ��Q� (p�����_�(��FVF
    �$'lp����������U�v(����_������DF��(p��D�(�d,������d�&4�/p��5�(�v����������� �QF
    F ��V�(�O�$ �@p"IF C(�x���/�����ap����ap(� �@pCPF,���������@7B� @�   �B�jJhjJ��������h��#C`gH������@B�� ��� F�-��O��
    ����\L_IO����[M&F�A��P��������O��>EC ����@F���������p< � ���D� ��H ������H�)FhF����AF�� �EFDF'��F)��IBJFR�B%�	�IFI(����L�a!D���������`B�� ������,���o��$����p ��n��hF��~�������'F)��IBJFR�B%�	�IFI(����L�i)D
    �hB�� ������-���o��%���5p ��=��hF��M��Ѫ��@���P� � BF����t�� � BF����m���������������Ȇ����`����������F�@� @B  ���U"II@IBC �@@@pG��h�,O�������,�?����<x��o� �@@���A@�RL'h�m��`�x`����=0���@ ����[�@@7@@�������Ȭ@<C#�h
    `F"F���������<N�F0h������'��0A�!��
    �,�@� �F,���  ����0h�"iF������
    ����0h��"iF��{�A
    ��,�������L F����� F�����-��AN% 5p��A�L' � ���������@� �H7px(�(̿!9�)F� �
     ��p� ��
    �`� ��!�	N7p����5p��
    ����@@�@B@d �Bp�QL�2�!�paA� � ����LN% 5p���� 0p ���� � � @� � ���� � �@�  �(F���� � �0 �
     ��L@���� F��������p���8H':M�7I8N���tA��P� ����t�|('�8F����
     �����|�@ F����,
    ܶ�j�B�d� F����,�ۨ|0���@����
     �����|@�t�|(�ۦ��p�t�������KO����@����
    (ۓ��(�!H����T��I p���(�(Կ �������� � Jp���x  �����`@��B1  � � B @-��G6HO�aA�6IO�	���O��0F1I��Ȁp ��v�EF1LO�
    ! FO�	,O����� ������� � �@� �PF>p��
    �����'�y�0F������$)�j� ����d����������ѽ���H@�6!86"�! ����
    H$!Ā����H8Ds�s�rt���� F����O�A ��B�� ��� �  8 �@B@-��A��:���]�"H#Ih�������I����I@���B��O�#�NL��p��F�F�����W�E���b9�������ȇ�@����I�E��b:��!@]�E��(�I���#	R�;�ѽ���F� ��+�?� @B(�	 -��O ����%M���I�A���O�:	��f1���5I��|�/'����I	�����1����)�/�f1ю���������B��pO�		ۉ�����������a�����HD����C�	��I�������ս��� �2 ��
    Hh�Hh�Hh�HxJ��
    ��y!��}�
    	yhD��xz�
    !��z��~��|pG000d  %,3���
    � >��
    �"7!��
    �J��
    ����
    ����
    ����
    ����
    ����
    ��4(��
    ������
    ������
    ������
    ������
    ������
    ������
    ������
    ������
    �����
    ������
    ������
    ������
    ������
    ������
    ������
    ������
    �����
    ������
    ������
    ������
    ������
    ������
    ������
    ������
    �����
    ������
    ������
    ������
    ������
    ������
    ������
    ������
    �����
    �|p��
    �d^��
    �XR��
    �LF��
    �@:��
    �
    4.��
    �("��
    ����
    �dX��
    �RL��
    �F@��
    �:4��
    �.(��
    �" ��
    ���
    ����
    �$'��
    �D��
    �F��
    ���
    �8���
    �( ���
    �, ���
    �0 ���
    �4 ��
    �� ��
    �� ��
    �� ��
    �!��
    �!��
    �!��
    �!��
    �$! ��
    �,!0��
    �4!@��
    �<!P��
    �D!A��
    �L!Q��
    �T!B��
    �\!R��
    �d!3��
    �l!S��
    �t!��
    �|!��
    ��!��
    ��!��
    ��!��
    ��!��
    ��!��
    ��!"��
    ��!2��
    ��!B��
    ��!R��
    ��!3��
    ��!C��
    ��!S��
    ��!S��
    ��!S��
    �6$��	� �	�	� �	�n############################################	END OF SCRIPT ! ! !	############################################m�i2d`	��	��D��m�id2d&`�]*T	
      ���'���7��ququququG��I�������m�i�2d����a1���������x�����B��m�i,3d
    E
    ��������"R�������M�I�3D�@�͜�s���}G������������������������������������
    �������������������
    ������
    
    
    ���
    �$��E## For SMPS/DC2DC with trim 7 (default value) use the command below:3## Send_HCI_VS_Class_1p5_LDO_mode 0xFD6E, 0x1, 0x7d## Wait_HCI_Command_Complete_VS_Class_1p5_LDO_mode_Event 5000, any, HCI_VS_Class_1p5_LDO_mode, 0x00?## For VBAT with trim 7 (default value) use the command below:3## Send_HCI_VS_Class_1p5_LDO_mode 0xFD6E, 0x0, 0x7d## Wait_HCI_Command_Complete_VS_Class_1p5_LDO_mode_Event 5000, any, HCI_VS_Class_1p5_LDO_mode, 0x00�$������
    M4��w����wwq��w�p�sw
    ���0����  ^^4
    
    4�CC@��4�ww@4�wwq�pp�
    wGw����Cp@A444�G0�/�4����$��$����
    
    CM�q�pp4
    4���q�M�M���7p����TT
    @�M��
    
    �CM��wt��
    4p��p�7��}0�@���K�[���0�$��$������
    4
    
    4�wq�p@��M���
    7pp
    7
    7w�wp�܀�KK5���4p7t4
    1�C@��1�������q������,7\t
    À��p/���@�$��$�����p����4@��wwpp@�M����Cq�7p
    1�p
    �}��PUU����C@4
    4��t
    4�M�wwt4wwq�Cw
    ��w0�8pwCA�po��R�^��� +�  �$��$����p�p�@@��M��q�4CM���pp
    7w��wq���p0
    ̀�OOp�M�pCt�@�7q�CM��q�M�M�47\w���=��@��8/�� +��$��$����
    �@4
    
    
    4�7wq�447M��p4
    ��w�@�
    1����܀� @@��CA�
    
    
    
    @
    ��t�7@
    7�4�8t��ww7t�w
    �
    �@���=t��
    ߀��$��$���4
    4@@@4@4
    C@�CM7wwppp4
    
    7M���
    
    7ppM��
    �7p7��HH�
    �wC@47M4M�CwwM7q��p4q��@��@�D�M�p�=o���  ߀�����$��$���@4�@
    �4@���4���CM4�wM�q��CCM�wwpp��w���7p
    �70��88C@����M��
    7M���ppCL���1��C}Lt1��p��O@o��@�$��$�������4@�4
    CCCCCM44�M4�7M���q��4CM7M��p�M�47M�
    �
    �4�7p��::p4@LM�4
    �@C@
    �44��LpwMpM���q7@���\�Կ�8	�A��$��$�����444
    4�M��q�
    4�wwp4�pp
    7p
    1�q�sp�
    ����  CC��44�
    4�44
    CCM����
    
    �wt�p��pq�1�q��w���175[�@�$��$����@
    ��@4
    CCCCM
    4�M�wwwq�CCt��q�pCM��������7p��wp�` 99�@�@�4
    @
    �M44
    p47���t�M�@�tM7q�0��pLD�����# /p�$��$����4@@4@�4444��M7M7M�7www�pppCM��q�@4���w
    7p�p
    �
    ��P22�4
    
    7M
    4Cq�4
    
    �M@��CM�t�@1��wwt0�-1�t�L4p_�  �@�$��$�������@
    M4����4CM4���q�M�p
    �4�
    �1����s` VV4�
    �C@4��
    ��t�7q��q���q��7q��w7��Ct4
    �|�7K�M���$��$������44@�@4
    M4���q�4�4�M7wq����
    
    �7p
    ��77}LL
    CM�Ct
    
    ���44��7t��wpw@7�q
    p ,��=^�T��H
    ������$��$�������
    
    
    �@�
    
    
    
    
    7M���p4�4��7ww��
    
    ���74�p7p�  HH7M
    7@@
    
    1�
    CM7�pp�ppsA��pG�0@|8/�	������  �$��$�������@@��M��p@��M���47w7p�sL�0PQQ44
    �
    @4��44�CM7@CM��o����q��@��P����[���1F�@�$��$�����4
    �@�4�M7wpp
    CM4���p�
    747p��������70��II@CM�@�CCwpw@�wpM
    �wwp��C@����0ǀ�0��4���o�P�$��$����44
    
    �
    
    CM4�t���q�����7w��w
    7pLp���}0
    ����AA4�M44
    �4�@41�@7q�t
    4�wwt7�M4�@��Gq�p4A���D
    ����L�#x
    � 0�$�i�e�3`-Hr�$9Z��j$9Z��j��5v�1!TaW
    
    	
    �v�
    �����
    ��<�_��������8��8�9# clock configuration 5ms wakeup settling time (Crystal)���������T# HCILL enable - moved to avpr.bts. Do not enable here unless avpr.bts is not used!
    �	����d��># To fix the gaps in audio streaming over A2DP during BT Scan
    U�	PPe D���U�



  • Naveen,

    No. btwilink driver is not built. I will build and try that.

    Regards,

    Dilip

  • Hi Austin,

    I tried with the attached BT firmware  file. It still gives the same problem.

    Regards,

    Dilip

  • Was comparing with the EVK-SK behavior. Once BT_Init is executed from shell on AM335X EVK-SK Following kernel modules get automatically loaded

    Module                  Size              Used by
    rfcomm                 46170  8
    bnep                   11673  2
    hci_uart               17857  3
    bluetooth             195305  23 rfcomm,bnep,hci_uart
    gpio_en                  682  0

    When I tried to manually insert those modules on our custom board, following error got printed on terminal and I was not able to load any .ko file except gpio_en.ko

    "hci_uart: disagrees about version of symbol skb_put"

    Regards,

    Dilip

  • Naveen,

    BTWILINK driver is compiled built-in to kernel. so followed the step what you suggested. It gave following error..

    root@am335x-evm:~# hciconfig hci0 up
    [  103.172302] (stk) :line disc installation timed out
    [  105.292327] (stk) :line disc installation timed out
    [  107.412322] (stk) :line disc installation timed out
    [  109.532318] (stk) :line disc installation timed out
    [  111.652313] (stk) :line disc installation timed out
    [  113.772338] (stk) :line disc installation timed out
    [  114.772338] Bluetooth: st_register failed -22
    Can't init device hci0: Input/output error (5)

    Regards,

    Dilip

  • Dilip M said:

    Naveen,

    BTWILINK driver is compiled built-in to kernel. so followed the step what you suggested. It gave following error..

    root@am335x-evm:~# hciconfig hci0 up
    [  103.172302] (stk) :line disc installation timed out
    [  105.292327] (stk) :line disc installation timed out
    [  107.412322] (stk) :line disc installation timed out
    [  109.532318] (stk) :line disc installation timed out
    [  111.652313] (stk) :line disc installation timed out
    [  113.772338] (stk) :line disc installation timed out
    [  114.772338] Bluetooth: st_register failed -22
    Can't init device hci0: Input/output error (5)

    Regards,

    Dilip

    Make sure the userspace UIM service is running and don't forget to download the appropriate firmware. We had similar issues and it turned out to be an issue with UART pin muxing.

  • Dheeraj CVR said:

    Naveen,

    BTWILINK driver is compiled built-in to kernel. so followed the step what you suggested. It gave following error..

    root@am335x-evm:~# hciconfig hci0 up
    [  103.172302] (stk) :line disc installation timed out
    [  105.292327] (stk) :line disc installation timed out
    [  107.412322] (stk) :line disc installation timed out
    [  109.532318] (stk) :line disc installation timed out
    [  111.652313] (stk) :line disc installation timed out
    [  113.772338] (stk) :line disc installation timed out
    [  114.772338] Bluetooth: st_register failed -22
    Can't init device hci0: Input/output error (5)

    Regards,

    Dilip

    Make sure the userspace UIM service is running and don't forget to download the appropriate firmware. We had similar issues and it turned out to be an issue with UART pin muxing.

    [/quote]

    Hi Dheeraj,

    I am using same linux kernel for Android and Bluetooth works fine there. So pinmux seem to be okay. BTW, UIM service is not running. How can I get it running on Linux? I did a search for this executable and found none in rootfs. The firmware directory in rootfs looks like this,

    # ls /lib/firmware/
    LICENCE             TIInit_7.2.31.bts   ti-connectivity
    TIInit_10.6.15.bts  TIInit_7.6.15.bts

    Regards,

    Dilip

  • Hi,

    First you need to have a UIM executable. For this you need to create a Makefile to compile UIM in “uim-sysfs” folder.

    Once you have the uim-sysfs executable.

    1. You need to create a script uim-sysfs.sh. This script should launch uim-sysfs.
    2.  Insert this script into /etc/init.d/
    3. Make a link in /etc/rc2.d/ with “ln –s ../init.d/uim-sysfs.sh S99uim-sysfs”.

    Thanks & Regards,

    Sundeep.

  • Sundeep Mandava said:

    Hi,

    First you need to have a UIM executable. For this you need to create a Makefile to compile UIM in “uim-sysfs” folder.

    Once you have the uim-sysfs executable.

    1. You need to create a script uim-sysfs.sh. This script should launch uim-sysfs.
    2.  Insert this script into /etc/init.d/
    3. Make a link in /etc/rc2.d/ with “ln –s ../init.d/uim-sysfs.sh S99uim-sysfs”.

    Thanks & Regards,

    Sundeep.

    Hi Sundeep,

    I downloaded and compiled uim-sysfs from gitorious and deployed to ti linux rootfs. Following error occurred when tried to run BT_Init.sh

    root@am335x-evm:/usr/share/wl1271-demos/bluetooth/scripts# ./BT_Init.sh

    /*
     * #################################################
     *    [  173.581512] Gpio value is :48
                  Initialize BT
     * #################################################
     */
     
    [  173.602325] WL1271: BT Enable
    Found a Texas Instruments' chip!
    Firmware file : /lib/firmware/TIInit_7.2.31.bts
    Loaded BTS script version 1
    texas: changing baud rate to 3000000, flow control to 1
    uim:poll broke due to event 10(PRI:2/ERR:8)

    uim:read 1 from install

    uim:@ st_uart_config
    uim: signal received, opening /dev/ttyO1
    uim:@ set_baud_rate
    uim:set_baud_rate() done
    uim:Setting speed to 3000000
    uim:@ read_command_complete
    uim: Command complete started
    uim:@ read_hci_event
    uim: read_hci_event
    uim:Invalid response
    uim:begin polling...
    Device setup complete
    [  177.062316] (stk) :line disc installation timed out uim:poll broke due to event 10(PRI:2/ERR:8)

    uim:read 0 from install

    uim:@ st_uart_config
    uim:Un-Installed N_TI_WL Line displine
    uim:begin polling...

    [  178.072296] Bluetooth: hci1 command tx timeout
    uim:poll broke due to event 10(PRI:2/ERR:8)

    uim:read 1 from install

    uim:@ st_uart_config
    uim: signal received, opening /dev/ttyO1
    uim:@ set_baud_rate
    uim:set_baud_rate() done
    uim:Setting speed to 3000000
    uim:@ read_command_complete
    uim: Command complete started
    uim:@ read_hci_event
    uim: read_hci_event
    uim:Invalid response
    uim:begin polling...
    [  179.072296] Bluetooth: hci1 command tx timeout
    [  179.182281] (stk) :line disc installation timed out uim:poll broke due to event 10(PRI:2/ERR:8)

    uim:read 0 from install

    uim:@ st_uart_config
    uim:Un-Installed N_TI_WL Line displine
    uim:begin polling...

    [  180.072296] Bluetooth: hci1 command tx timeout
    uim:poll broke due to event 10(PRI:2/ERR:8)

    uim:read 1 from install

    uim:@ st_uart_config
    uim: signal received, opening /dev/ttyO1
    uim:@ set_baud_rate
    uim:set_baud_rate() done
    uim:Setting speed to 3000000
    uim:@ read_command_complete
    uim: Command complete started
    uim:@ read_hci_event
    uim: read_hci_event
    uim:Invalid response
    uim:begin polling...
    [  181.072296] Bluetooth: hci1 command tx timeout
    [  181.302276] (stk) :line disc installation timed out uim:poll broke due to event 10(PRI:2/ERR:8)

    uim:read 0 from install

    uim:@ st_uart_config
    uim:Un-Installed N_TI_WL Line displine
    uim:begin polling...

    [  182.072296] Bluetooth: hci1 command tx timeout
    uim:poll broke due to event 10(PRI:2/ERR:8)

    uim:read 1 from install

    uim:@ st_uart_config
    uim: signal received, opening /dev/ttyO1
    uim:@ set_baud_rate
    uim:set_baud_rate() done
    uim:Setting speed to 3000000
    uim:@ read_command_complete
    uim: Command complete started
    uim:@ read_hci_event
    uim: read_hci_event
    uim:Invalid response
    uim:begin polling...
    root@am335x-evm:/usr/share/wl1271-demos/bluetooth/scripts# [  183.072296] Bluetooth: hci1 command tx timeout
    [  183.422302] (stk) :line disc installation timed out uim:poll broke due to event 10(PRI:2/ERR:8)

    uim:read 0 from install

    uim:@ st_uart_config
    uim:Un-Installed N_TI_WL Line displine
    uim:begin polling...

    [  184.072296] Bluetooth: hci1 command tx timeout
    uim:poll broke due to event 10(PRI:2/ERR:8)

    uim:read 1 from install

    uim:@ st_uart_config
    uim: signal received, opening /dev/ttyO1
    uim:@ set_baud_rate
    uim:set_baud_rate() done
    uim:Setting speed to 3000000
    uim:@ read_command_complete
    uim: Command complete started
    uim:@ read_hci_event
    uim: read_hci_event
    uim:Invalid response
    uim:begin polling...
    [  185.072265] Bluetooth: hci1 command tx timeout
    [  185.542297] (stk) :line disc installation timed out uim:poll broke due to event 10(PRI:2/ERR:8)

    uim:read 0 from install

    uim:@ st_uart_config
    uim:Un-Installed N_TI_WL Line displine
    uim:begin polling...

    uim:poll broke due to event 10(PRI:2/ERR:8)

    uim:read 1 from install

    uim:@ st_uart_config
    uim: signal received, opening /dev/ttyO1
    uim:@ set_baud_rate
    uim:set_baud_rate() done
    uim:Setting speed to 3000000
    uim:@ read_command_complete
    uim: Command complete started
    uim:@ read_hci_event
    uim: read_hci_event
    uim:Invalid response
    uim:begin polling...
    [  187.662292] (stk) :line disc installation timed out uim:poll broke due to event 10(PRI:2/ERR:8)

    uim:read 0 from install

    uim:@ st_uart_config
    uim:Un-Installed N_TI_WL Line displine
    uim:begin polling...

    [  188.662322] Bluetooth: st_register failed -22

    Regards,

    Dilip

  • Hi,

    Looks like GPIO BT enable(48)is not toggled properly.

    This should be high before there is any communication with the chip. That is why we don’t see line discipline installation.

    Could you please check if the connection with the chip is fine when you face this issue. Also if possible please check if the voltage on GPIO is driven high.

    Regards,

    Sundeep.

  • Hi Sundeep,

    The GPIO prints are printed by the gpio_en.ko module. Infact, on our custom  board it uses a different GPIO than what is hard coded in gpio_en.ko for EVM and EVM_SK. Just checked with H/W team and they told the BT_EN pin is always pulled high. Probing that line shows 1.3v always.

    Regards,

    Dilip

  • Hi Dilip,

    Can you please change the baud rate to 115200 in the board file(I think it is board-am335xevm.c), also enable the UIM debug.

    And provide me the logs. From which we can see if we are getting the response from the chip and confirm if the GPIO is toggled.

    Also please confirm that you and your hardware team are looking at the same GPIO?

    Regards,

    Sundeep.

     

  • Sundeep Mandava said:

    Hi Dilip,

    Can you please change the baud rate to 115200 in the board file(I think it is board-am335xevm.c), also enable the UIM debug.

    And provide me the logs. From which we can see if we are getting the response from the chip and confirm if the GPIO is toggled.

    Also please confirm that you and your hardware team are looking at the same GPIO?

    Regards,

    Sundeep.

     

    Following is the error log with baudrate set to 115200 in board-am335xevm.c file

    /*
     * #################################################
     *                  Initialize BT
     * [  190.694885] Gpio value is :48
    #################################################
     */
     
    [  190.712341] WL1271: BT Enable
    Found a Texas Instruments' chip!
    Firmware file : /lib/firmware/TIInit_7.2.31.bts
    Loaded BTS script version 1
    texas: changing baud rate to 3000000, flow control to 1
    uim:poll broke due to event 10(PRI:2/ERR:8)

    uim:read 1 from install

    uim: Inside st_uart_configuim: signal received, opening /dev/ttyO1
    uim: Inside set_baud_rateuim:set_baud_rate() done
    uim:Installed N_TI_WL Line displine
    uim:begin polling...
    cannot get device id: Invalid argument
    Can't initialize device: Invalid argument

    Regards,

    Dilip

  • Sundeep Mandava said:

    Hi Dilip,

    Can you please change the baud rate to 115200 in the board file(I think it is board-am335xevm.c), also enable the UIM debug.

    And provide me the logs. From which we can see if we are getting the response from the chip and confirm if the GPIO is toggled.

    Also please confirm that you and your hardware team are looking at the same GPIO?

    Regards,

    Sundeep.

     

    Following is the log with default baud rate, 3000000.

      102.342346] WL1271: BT Enable
    Found a Texas Instruments' chip!
    Firmware file : /lib/firmware/TIInit_7.2.31.bts
    Loaded BTS script version 1
    texas: changing baud rate to 3000000, flow control to 1
    uim:poll broke due to event 10(PRI:2/ERR:8)

    uim:read 1 from install

    uim: Inside st_uart_configuim: signal received, opening /dev/ttyO1
    uim: Inside set_baud_rateuim:set_baud_rate() done
    uim:Setting speed to 3000000
    uim: Inside read_command_completeuim: Command complete started
    uim: Inside read_hci_eventuim: read_hci_event
    uim:Invalid response
    uim:begin polling...
    Device setup complete
    [  105.812347] (stk) :line disc installation timed out uim:poll broke due to event 10(PRI:2/ERR:8)

    uim:read 0 from install

    uim: Inside st_uart_configuim:Un-Installed N_TI_WL Line displine
    uim:begin polling...

    uim:poll broke due to event 10(PRI:2/ERR:8)

    uim:read 1 from install

    uim: Inside st_uart_configuim: signal received, opening /dev/ttyO1
    uim: Inside set_baud_rateuim:set_baud_rate() done
    uim:Setting speed to 3000000
    uim: Inside read_command_completeuim: Command complete started
    uim: Inside read_hci_eventuim: read_hci_event
    uim:Invalid response
    uim:begin polling...
    [  107.932312] (stk) :line disc installation timed out uim:poll broke due to event 10(PRI:2/ERR:8)

    uim:read 0 from install

    uim: Inside st_uart_configuim:Un-Installed N_TI_WL Line displine
    uim:begin polling...

    uim:poll broke due to event 10(PRI:2/ERR:8)

    uim:read 1 from install

    uim: Inside st_uart_configuim: signal received, opening /dev/ttyO1
    uim: Inside set_baud_rateuim:set_baud_rate() done
    uim:Setting speed to 3000000
    uim: Inside read_command_completeuim: Command complete started
    uim: Inside read_hci_eventuim: read_hci_event
    uim:Invalid response
    uim:begin polling...
    [  110.052337] (stk) :line disc installation timed out uim:poll broke due to event 10(PRI:2/ERR:8)

    uim:read 0 from install

    uim: Inside st_uart_configuim:Un-Installed N_TI_WL Line displine
    uim:begin polling...

    uim:poll broke due to event 10(PRI:2/ERR:8)

    uim:read 1 from install

    uim: Inside st_uart_configuim: signal received, opening /dev/ttyO1
    uim: Inside set_baud_rateuim:set_baud_rate() done
    uim:Setting speed to 3000000
    uim: Inside read_command_completeuim: Command complete started
    uim: Inside read_hci_eventuim: read_hci_event
    uim:Invalid response
    uim:begin polling...
    root@am335x-evm:/usr/share/wl1271-demos/bluetooth/scripts# [  112.172332] (stk) :line disc installation timed out uim:poll broke due to event 10(PRI:2/ERR:8)

    uim:read 0 from install

    uim: Inside st_uart_configuim:Un-Installed N_TI_WL Line displine
    uim:begin polling...

    [  112.422302] Bluetooth: hci1 command tx timeout
    uim:poll broke due to event 10(PRI:2/ERR:8)

    uim:read 1 from install

    uim: Inside st_uart_configuim: signal received, opening /dev/ttyO1
    uim: Inside set_baud_rateuim:set_baud_rate() done
    uim:Setting speed to 3000000
    uim: Inside read_command_completeuim: Command complete started
    uim: Inside read_hci_eventuim: read_hci_event
    uim:Invalid response
    uim:begin polling...
    [  114.292327] (stk) :line disc installation timed out uim:poll broke due to event 10(PRI:2/ERR:8)

    uim:read 0 from install

    uim: Inside st_uart_configuim:Un-Installed N_TI_WL Line displine
    uim:begin polling...

    uim:poll broke due to event 10(PRI:2/ERR:8)

    uim:read 1 from install

    uim: Inside st_uart_configuim: signal received, opening /dev/ttyO1
    uim: Inside set_baud_rateuim:set_baud_rate() done
    uim:Setting speed to 3000000
    uim: Inside read_command_completeuim: Command complete started
    uim: Inside read_hci_eventuim: read_hci_event
    uim:Invalid response
    uim:begin polling...
    [  116.412322] (stk) :line disc installation timed out uim:poll broke due to event 10(PRI:2/ERR:8)

    uim:read 0 from install

    uim: Inside st_uart_configuim:Un-Installed N_TI_WL Line displine
    uim:begin polling...

    [  117.412322] Bluetooth: st_register failed -22

    Regards,

    Dilip

  • Hi Dilip,

    From the logs you have provided in the previous post, it seems like the driver did not get the chip ID.

    cannot get device id: Invalid argument
    Can't initialize device: Invalid argument

    This happens when we request the chip to give its chip ID. And here we see that the communication with the chip is broken.

    This is clearly because the BT enable GPIO is not toggled.

    The logs with baud rate 3000000 is same as previously provided logs

     

    Thanks & Regards,

    Sundeep.

  • Sundeep Mandava said:

    Hi Dilip,

    From the logs you have provided in the previous post, it seems like the driver did not get the chip ID.

    cannot get device id: Invalid argument
    Can't initialize device: Invalid argument

    This happens when we request the chip to give its chip ID. And here we see that the communication with the chip is broken.

    This is clearly because the BT enable GPIO is not toggled.

    The logs with baud rate 3000000 is same as previously provided logs

     

    Thanks & Regards,

    Sundeep.

    Finally BT works,

    Disabled     am335xevm_init_btwilink(); on board-am335x.c and it started working.I still don't know how commenting out this got BT working. As I stated before, we are using linux kernel from android release where BT works fine. Now checking the difference between the linux kernel for am335x from rowboat and http://arago-project.org/git/projects/?p=linux-am33x.git;a=summary. The main difference is that there is no CONFIG_TI_ST and code under it in kernel from Linux SDK(Arago) but the rowboat kernel has. BTW, there are many different OSS drivers for WL12xx. How are they related? There is compat-xx, TI-ST etc. Android uses something, Linux SDK uses something else.

    Regards,

    Dilip

  • Sundeep Mandava said:

    Hi Dilip,

    From the logs you have provided in the previous post, it seems like the driver did not get the chip ID.

    cannot get device id: Invalid argument
    Can't initialize device: Invalid argument

    This happens when we request the chip to give its chip ID. And here we see that the communication with the chip is broken.

    This is clearly because the BT enable GPIO is not toggled.

    The logs with baud rate 3000000 is same as previously provided logs

     

    Thanks & Regards,

    Sundeep.

    Also, didn't run uim-sysfs daemon

  • Hi Dilip,

    So does it mean that CONFIG_TI_ST is not set in your platform?

    It is recommended that you set CONFIG_TI_ST=y and also CONFIG_BT_WILINK=y (if you are using BlueZ with shared transport).

    Whenever Bluetooth wants to turn on you should see something like “(stc) st_register(4)” in your kernel logs.This will invoke s_kim_start() in st_kim.c and this will toggle the BT_EN GPIO high in all WL12xx connectivity chipsets.

    I have not seen the above string in the logs so far. This may be because CONFIG_TI_ST was not set. Can you please set the above 2 flags and revert the btwilink changes in board-am335x.c and confirm?

    Thanks & Regards,

    Sundeep.

  • Hi Dilip,

    Even I'm facing the same problem. Even I decided to bring it up without CONFIG_TI_ST and CONFIG_BT_WILINK since I'm getting the same ldisc installation error. Could you please help by sharing the steps followed to get BT work?


    I'm using ti-sdk-am335x-evm-06.00.00.00 and wilink8 compat-wireless and BT modules. Did you make any changes to board file and defconfig file? If yes, can you please share the files?

    Thanks and regards

    Vaishnavi

  • Hi,

    Sorry for the delay, I missed this post.

    I hope the post http://e2e.ti.com/support/low_power_rf/f/307/t/326908.aspx?pi267162=2 will help

  • Hi Sundeep,

    Thank you for that post. But that didn't help much for my issue.

    I've to bring up bluez 4.98 on Am335x evm. Is there any configuration needed for bluez from kernel or compat package?

    Device setup is complete but scanning doesn't return any device. What could be the issue?

    root@am335x-evm:/usr/share/wl1271-demos/bluetooth/scripts# ./BT_Demo.sh
    Starting BT Demo .......
    [   58.569122] Bluetooth: Core ver 2.16
    [   58.573028] NET: Registered protocol family 31
    [   58.577636] Bluetooth: HCI device and connection manager initialized
    [   58.584320] Bluetooth: HCI socket layer initialized
    [   58.589385] Bluetooth: L2CAP socket layer initialized
    [   58.594696] Bluetooth: SCO socket layer initialized

    /*
     * #################################################
     *                  Cleaning BT
     * #################################################
     */
     
    [   58.689086] NET: Unregistered protocol family 31


    !!!!!!!!!!! Start from the MAIN MENU !!!!!!!!!!!!!!!!!

    /*
     * #################################################
     *                  Initialize BT
     * #################################################
     */
     
    [   58.736541] Bluetooth: Core ver 2.16
    [   58.740386] NET: Registered protocol family 31
    [   58.745086] Bluetooth: HCI device and connection manager initialized
    [   58.751708] Bluetooth: HCI socket layer initialized
    [   58.756805] Bluetooth: L2CAP socket layer initialized
    [   58.762084] Bluetooth: SCO socket layer initialized
    [   58.774261] Bluetooth: Bluetooth Driver for TI WiLink - Version 1.0
    [   58.783874] (stc): st_register(4)
    [   58.787261] (stc):  chnl_id list empty :4
    [   58.791534] (stk) : st_kim_start
    [   58.917083] (stk) :ldisc_install = 1uim:poll broke due to event 10(PRI:2/ERR:8)

    uim:read 1 from install

    uim:@ st_uart_config
    uim: signal received, opening /dev/ttyO1
    uim:@ set_baud_rate
    uim:set_baud_rate() done
    uim:Setting speed to 3000000
    uim:@ read_command_complete
    uim: Command complete started
    uim:@ read_hci_event
    uim: read_hci_event
    uim:Command comp
    [   58.972656] (stc): st_tty_open lete done
    uim:S
    [   58.977233] (stk) : line discipline installed peed changing to
    [   58.983673] (stk) :TIInit_11.8.32.bts 3000000, 1
    uim:@ set_custom_baud_rate
    uim:Installed N_TI_WL Line displine
    uim:begin polling...

    [   59.016052] (stk) :change remote baud rate command in firmware
    [   59.022216] (stk) :skipping the wait event of change remote baud
    [   59.946533] (stc): add_channel_to_table: id 4
    [   59.951263] (stc): st_register(2)
    [   59.954650] (stc): add_channel_to_table: id 2
    [   59.959381] (stc): st_register(3)
    [   59.962768] (stc): add_channel_to_table: id 3
    [   67.521697] Bluetooth: RFCOMM TTY layer initialized
    [   67.526916] Bluetooth: RFCOMM socket layer initialized
    [   67.532287] Bluetooth: RFCOMM ver 1.11

    +++++++++++++++++++++++++++++++++++++++++++++++++++++
                   MAIN NENU
    +++++++++++++++++++++++++++++++++++++++++++++++++++++
        1 - BT Scan Remote Devices
        2 - BT Get capabilities of Remote Device
        3 - OPP  Test
        4 - FTP  Test
        5 - HID  Test
        6 - HSP  Test
        7 - A2DP Test
        8 - AVRCP Test
        9 - Pair Remote Device
        10 - Unpair Remote Device
        11 - Exit Without BT Shut Down
        12 - Exit With BT Shut Down
    ====> 1

    /*
     * ########### BT-Scan #############
     * Scan for the remote BT devices
     * #################################
     */

    Scanning ...

    +++++++++++++++++++++++++++++++++++++++++++++++++++++
                   MAIN NENU
    +++++++++++++++++++++++++++++++++++++++++++++++++++++
        1 - BT Scan Remote Devices
        2 - BT Get capabilities of Remote Device
        3 - OPP  Test
        4 - FTP  Test
        5 - HID  Test
        6 - HSP  Test
        7 - A2DP Test
        8 - AVRCP Test
        9 - Pair Remote Device
        10 - Unpair Remote Device
        11 - Exit Without BT Shut Down
        12 - Exit With BT Shut Down
    ====> 1

    /*
     * ########### BT-Scan #############
     * Scan for the remote BT devices
     * #################################
     */

    Scanning ...

    +++++++++++++++++++++++++++++++++++++++++++++++++++++
                   MAIN NENU
    +++++++++++++++++++++++++++++++++++++++++++++++++++++
        1 - BT Scan Remote Devices
        2 - BT Get capabilities of Remote Device
        3 - OPP  Test
        4 - FTP  Test
        5 - HID  Test
        6 - HSP  Test
        7 - A2DP Test
        8 - AVRCP Test
        9 - Pair Remote Device
        10 - Unpair Remote Device
        11 - Exit Without BT Shut Down
        12 - Exit With BT Shut Down
    ====>

    root@am335x-evm:/usr/share/wl1271-demos/bluetooth/new_scripts# hciconfig -a
    hci0:   Type: BR/EDR  Bus: UART
            BD Address: 84:DD:20:75:D7:7B  ACL MTU: 1021:6  SCO MTU: 180:4
            UP RUNNING PSCAN ISCAN
            RX bytes:1012 acl:0 sco:0 events:41 errors:0
            TX bytes:715 acl:0 sco:0 commands:39 errors:0
            Features: 0xff 0xfe 0x2d 0xfe 0xdb 0xff 0x7b 0x87
            Packet type: DM1 DM3 DM5 DH1 DH3 DH5 HV1 HV2 HV3
            Link policy: RSWITCH HOLD SNIFF
            Link mode: SLAVE ACCEPT
            Name: ''
            Class: 0x001f00
            Service Classes: Unspecified
            Device Class: Invalid Device Class!
            HCI Version: 4.0 (0x6)  Revision: 0x0
            LMP Version: 4.0 (0x6)  Subversion: 0xac5f
            Manufacturer: Texas Instruments Inc. (13)

    root@am335x-evm:/usr/share/wl1271-demos/bluetooth/new_scripts# hcitool scan
    Scanning ...
    root@am335x-evm:/usr/share/wl1271-demos/bluetooth/new_scripts#


    root@am335x-evm:/usr/share/wl1271-demos/bluetooth/scripts# ./BT_Discovery.sh

    /*
     * ########### BT-Scan #############
     * Scan for the remote BT devices
     * #################################
     */

    Press <Enter> to exit...
    Traceback (most recent call last):
      File "/usr/share/bluetooth/test-discovery", line 91, in <module>
        manager = dbus.Interface(bus.get_object("org.bluez", "/"),
      File "/usr/lib/python2.7/site-packages/dbus/bus.py", line 244, in get_object
        follow_name_owner_changes=follow_name_owner_changes)
      File "/usr/lib/python2.7/site-packages/dbus/proxies.py", line 246, in __init__
        self._named_service = conn.activate_name_owner(bus_name)
      File "/usr/lib/python2.7/site-packages/dbus/bus.py", line 183, in activate_name_owner
        self.start_service_by_name(bus_name)
      File "/usr/lib/python2.7/site-packages/dbus/bus.py", line 281, in start_service_by_name
        'su', (bus_name, flags)))
      File "/usr/lib/python2.7/site-packages/dbus/connection.py", line 630, in call_blocking
        message, timeout)
    dbus.exceptions.DBusException: org.freedesktop.DBus.Error.Spawn.ExecFailed: Failed to execute program /usr/libexec/dbus-daemon-launch-helper: s

    killall: test-discovery: no process killed
    root@am335x-evm:/usr/share/wl1271-demos/bluetooth/scripts#

    Can you please help? I'm stuck in this since long time.

    Thanks and Regards

    Vaishnavi

  • Hi Sundeep,


    There are three firmwares available across, in the same name "TIInit_11.8.32.bts" which has caused this problem. There is no description available anywhere to say which firmware should be used for which stack or etc..

    Now, It started scanning. Now I'm trying to prove bluez test cases. Pairing, unpairing works. Object Push from Remote-Device to WL1271-Host works.

    But, when I try to transfer a file through OPP from host to device, I get the error below.

    ==== Options for OPP test ====
    1 - Object Push from Remote-Device to WL1271-Host
    2 - Object push from WL1271-Host to Remote-Device
    3 - Goto MAIN MENU
    ====> 2

    /*
     * ############################### BT-OPP ###################################
     * Object Push Profile (OPP) is for sending objects such as pictures,
     * virtual business cards etc. It is called push because the transfers
     * are always instigated by the sender (client), not the  receiver (server).
     * ##########################################################################
     */
     
    --- Object push from WL1271-Host to Remote-Device ---
    Enter the BD_ADDR of the remote Device for OPP test
    ====> A8:E0:18:FF:EE:28

    Local File Available ...

    Document.jpg             Pop.wav                  WLAN_Bluetooth_demo.wmv
     Enter the Local file to be transferred
    ====> 1
    Creating Session
    Traceback (most recent call last):
      File "/usr/share/bluetooth/opp-client", line 111, in <module>
        path = client.CreateSession(options.device, { "Target": "OPP" })
      File "/usr/lib/python2.7/site-packages/dbus/proxies.py", line 68, in __call__
        return self._proxy_method(*args, **keywords)
      File "/usr/lib/python2.7/site-packages/dbus/proxies.py", line 143, in __call__
        **keywords)
      File "/usr/lib/python2.7/site-packages/dbus/connection.py", line 630, in call_blocking
        message, timeout)
    dbus.exceptions.DBusException: org.bluez.obex.Error.Failed: Unable to request session


    Have you faced this problem before? Could you please help? Any problem with package?

    Thanks and Regards

    Vaishnavi