Android-11 CTS test: CtsNetTestCases are failed

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Android-11 CTS test: CtsNetTestCases are failed

2,111 Views
nandan-khant
Contributor II

Hello NXP team,

We are performing Android CTS testing for Android-11-based products.

We are using W8897 WiFi/BT chipset. We have 3 test case failures based on CtsNetTestCases.

(71) CtsNetTestCases.android.net.cts.ConnectivityManagerTest#testSocketKeepaliveLimitWifi
(74) CtsNetTestCases.android.net.cts.ConnectivityManagerTest#testSocketKeepaliveUnprivileged
(76) CtsNetTestCases.android.net.cts.ConnectivityManagerTest#testCreateTcpKeepalive

We are using the below-mentioned driver release package:

SD-WLAN-SD-BT-8897-AO_LINUX_4_9_70-BG4CT-W15.68.19.p59-15.26.19.p59-C4X15698_B0B1-GPL.zip

Please help to answer:

1. Keep-Alive feature used in the above-mentioned test cases (71, 74,76) is supported or not in the driver release package?

Attaching the logs for the test case (74) CtsNetTestCases.android.net.cts.ConnectivityManagerTest#testSocketKeepaliveUnprivileged as your reference.

Thanks and Regards,

Nandan Khant

0 Kudos
16 Replies

2,060 Views
weidong_sun
NXP TechSupport
NXP TechSupport

Hi @nandan-khant 

So far I haven't got internal team's feedback,  I referred to driver source code, see below, please!

1. Keepalive feature in feature list (./mlinux/moal_cfgvendor.h)

/* Feature enums */
#define MLAN_FEATURE_INFRA 0x0001 // Basic infrastructure mode
#define MLAN_FEATURE_INFRA_5G 0x0002 // Support for 5 GHz Band
#define MLAN_FEATURE_HOTSPOT 0x0004 // Support for GAS/ANQP
#define MLAN_FEATURE_P2P 0x0008 // Wifi-Direct
#define MLAN_FEATURE_SOFT_AP 0x0010 // Soft AP
#define MLAN_FEATURE_GSCAN 0x0020 // Google-Scan APIs
#define MLAN_FEATURE_NAN 0x0040 // Neighbor Awareness Networking
#define MLAN_FEATURE_D2D_RTT 0x0080 // Device-to-device RTT
#define MLAN_FEATURE_D2AP_RTT 0x0100 // Device-to-AP RTT
#define MLAN_FEATURE_BATCH_SCAN 0x0200 // Batched Scan (legacy)
#define MLAN_FEATURE_PNO 0x0400 // Preferred network offload
#define MLAN_FEATURE_ADDITIONAL_STA 0x0800 // Support for two STAs
#define MLAN_FEATURE_TDLS 0x1000 // Tunnel directed link setup
#define MLAN_FEATURE_TDLS_OFFCHANNEL 0x2000 // Support for TDLS off channel
#define MLAN_FEATURE_EPR 0x4000 // Enhanced power reporting
#define MLAN_FEATURE_AP_STA 0x8000 // Support for AP STA Concurrency
#define MLAN_FEATURE_LINK_LAYER_STATS 0x10000 // Link layer stats collection
#define MLAN_FEATURE_LOGGER 0x20000 // WiFi Logger
#define MLAN_FEATURE_HAL_EPNO 0x40000 // WiFi PNO enhanced
#define MLAN_FEATURE_RSSI_MONITOR 0x80000 // RSSI Monitor
#define MLAN_FEATURE_MKEEP_ALIVE 0x100000 // WiFi mkeep_alive
#define MLAN_FEATURE_CONFIG_NDO 0x200000 // ND offload configure
#define MLAN_FEATURE_TX_TRANSMIT_POWER 0x400000 // Capture Tx transmit power levels
#define MLAN_FEATURE_CONTROL_ROAMING 0x800000 // Enable/Disable firmware roaming
#define MLAN_FEATURE_IE_WHITELIST 0x1000000 // Support Probe IE white listing
#define MLAN_FEATURE_SCAN_RAND 0x2000000 // Support MAC & Probe Sequence Number randomization

2. Configuring the feature (README_MLAN)

Usage: mlanutl mlanX hostcmd <auto_tx.conf> nat_keep_alive

parameter:

.......

hostcmd nat_keep_alive
               This command is used to configures the Frame Auto Transmission parameters.
                nat_keep_alive: register to firmware for sending NAT Keep Alive packet

Usage:
           mlanutl mlanX hostcmd config/auto_tx.conf nat_keep_alive

......

for auto_tx.conf , after cross compiling driver, the file can be generated.

 

[in addition]

keep_ alive is based on TCP connection, there are also some configurations in Kernel, so you please check it again.

 

Regards,

weidong

 

0 Kudos

2,051 Views
nandan-khant
Contributor II

Hello @weidong_sun,

Thank you for sharing the updates.

1. I cannot see the following macro used inside any function or any API to perform any operations/functionalities.

#define MLAN_FEATURE_MKEEP_ALIVE 0x100000 // WiFi 

This macro is just defined inside the driver source code and it is not used anywhere else.

Please help to CONFIRM the support of the feature.

2. I have referred to README_MLAN:

It is showing steps of using mlanutl command. Please help to answer below queries:

-> How can we enable this feature (if supported) by default?

-> How can we cross-compile mlanutl for Android-11 and 4.9.96 Kernel? Please share the necessary steps.

Thanks and Regards,

Nandan Khant

 

0 Kudos

2,025 Views
weidong_sun
NXP TechSupport
NXP TechSupport

Hello @nandan-khant ,

 

Try mlanutil tool in attachment, please!

I compiled it in android 11 source code.

 

Regards,

weidong

0 Kudos

2,019 Views
nandan-khant
Contributor II

Hello @weidong_sun,

I have tried the mlanutl binary that you shared, but it is not working. I have also given the necessary read, write and execute permissions. Please refer to the pictures below.

1. I tried to execute it through UART console. It didn't work.

nandankhant_0-1669696761778.png

2. I tried to execute the mlanutl using ADB shell, Didn't work again.

nandankhant_1-1669696817034.png

My queries:

-> Can you share the steps that you used to cross-compile the mlanutl?

-> Any updates from the internal team? Can you ask again?

Thanks and Regards,

Nandan Khant

 

0 Kudos

1,993 Views
weidong_sun
NXP TechSupport
NXP TechSupport

Hello @nandan-khant ,

 

Internal team is confirming the keep alive feature in driver.

probably it will take some time to get feedback.

so let us wait, please!

As for cross compilation of mlanutl for android, I am trying to find a way to compile it with standanlone. it is very different from compilation in android or compilation for linux with standalone

 

Regards,

weidong

 

0 Kudos

1,972 Views
nandan-khant
Contributor II

Hello @weidong_sun,

1. Can you please share the tentative ETA when the internal team can share their feedback on the feature support to further plan accordingly?

2. Also please share the steps for cross-compilation of mlanutl for android 11 as soon as possible.

Thanks and Regards,

Nandan Khant

0 Kudos

1,885 Views
weidong_sun
NXP TechSupport
NXP TechSupport

Hello @nandan-khant ,

 

>>Can you please share the tentative ETA when the internal team can share their feedback on the feature support to further plan accordingly?

From internal team:

=======================

Keep alive feature is not supported in 8897 chipset with v15 based firmware.

=======================

>>Also please share the steps for cross-compilation of mlanutl for android 11 as soon as possible.

See attachment, please!

 

Regards,

weidong

0 Kudos

1,878 Views
nandan-khant
Contributor II

Hello @weidong_sun,

-> For keep_alive feature:
Thank you for sharing the confirmation about the feature support.

1. Is NXP planning to add support for this keep_alive feature in the W8897 chipset?
2. Does NXP support the below-mentioned driver actively?
Driver: SD-WLAN-SD-BT-8897-AO_LINUX_4_9_70-BG4CT-W15.68.19.p59-15.26.19.p59-C4X15698_B0B1-GPL.zip

-> For mlanutl cross-compilation:
I will try the steps that you shared and update you with the feedback.

Thanks and Regards,

Nandan Khant

0 Kudos

1,849 Views
nandan-khant
Contributor II

Hello @weidong_sun,

Can you please help to get answers to the below queries or share any updates:

1. Does NXP provides active support to below-mentioned driver release for W8897 chipset?

Driver release:SD-WLAN-SD-BT-8897-AO_LINUX_4_9_70-BG4CT-W15.68.19.p59-15.26.19.p59-C4X15698_B0B1-GPL.zip

2. Is W8897 chipset a legacy chipset or an active chipset?

3. Is NXP planning to add support for this keep_alive feature in the W8897 chipset for the driver release mentioned above?

I am still looking at mlanutl document that you shared and trying at my end. I will share the updates with you when I will have updates.

Please help to answer the above 3 queries as soon as possible.

Thanks and Regards,

Nandan Khant

0 Kudos

1,844 Views
weidong_sun
NXP TechSupport
NXP TechSupport

Hi @nandan-khant ,

 

1. About keep alive feature

Conifrmed with internal team. none of firmware (all versions) supports the feature.

About plan, according to internal feedback, they are discussing it, but no exact timeline for it.

2. For your other 2 questions:

>>1. Does NXP provides active support to below-mentioned driver release for W8897 chipset?

Customer can download the driver from NXP website if she has access right. So we provide customer support, no problem.

>>2. Is W8897 chipset a legacy chipset or an active chipset?

Yes, 8897 chipset is older, customer can select newer chip, like 8987, 8997, 9098, AW690 etc.

 

Regards,

weidong

0 Kudos

1,965 Views
weidong_sun
NXP TechSupport
NXP TechSupport

Hello @nandan-khant ,

 

No.1 . about keep_alive feature

so far I haven't got feedback from internal team yet.

No.2  about mlanutl cross compilation for android 

The compilation for android is different from linux bsp, and we don't have related guidance for customer.

In principle, customers need to compile it in their own android system. In order to provide you more help, I also try to find a way to cross compile for android it with standalone.  But so far I have not got success for it.

 

Regards,

weidong

 

0 Kudos

1,959 Views
nandan-khant
Contributor II

Hello @weidong_sun,

-> About keep_alive feature:

Can you please ask the internal team to provide the estimated timeline for answering the query?

-> For mlanutl cross-compilation:

Can you please share the steps to cross-compile the mlanutl? I will try the steps with my android environment.

Thanks and Regards,

Nandan Khant

0 Kudos

1,902 Views
nandan-khant
Contributor II

Hello @weidong_sun,

-> About keep_alive feature:

Did you get the chance to ask the internal team for providing the estimated timeline to answer the query? Any updates from internal team?

-> For mlanutl cross-compilation:

Can you please share the steps to cross-compile the mlanutl? I will try the steps with my android environment.

Thanks and Regards,

Nandan Khant

0 Kudos

2,044 Views
weidong_sun
NXP TechSupport
NXP TechSupport

Hi @nandan-khant 

 

No.1 question:

#define MLAN_FEATURE_MKEEP_ALIVE 0x100000 // WiFi 

According to README_MALN,  the feature should be supported in firmware, so we can't see related other source code in driver.

 

No.2 question

I will try to compile it for android tomorrow.

 

Regards,

weidong

0 Kudos

2,083 Views
weidong_sun
NXP TechSupport
NXP TechSupport

Hi @nandan-khant ,

 

Could you tell me information below?

1. Does the CTS you mentioned mean "Compatibility Test Suite" ?

If yes, it is for google certification.

probably you can refer to the link and compare it with your system kernel and related source code.

https://android.googlesource.com/platform/cts/+/408719bc937d75d0def7a484efd2956de9121089%5E%21/

--------------------------------------------------------------------

Fix keepalive CTS fail for devices with kernel older than 4.8

If kernel < 4.8 then it doesn't support get socket option
TCP_REPAIR_WINDOW, thus TCP keepalive cannot be supported.
However, it might still support NAT-T keepalive. Test TCP
keepalive only if it is supported by kernel.

Bug: 133652079
Test: atest android.net.cts.ConnectivityManagerTest#testMajorMinorVersionCompare \
    android.net.cts.ConnectivityManagerTest#testSocketKeepaliveLimit \
    android.net.cts.ConnectivityManagerTest#testSocketKeepaliveUnprivileged \
    android.net.cts.ConnectivityManagerTest#testKeepaliveUnsupported \
    android.net.cts.ConnectivityManagerTest#testCreateTcpKeepalive

----------------------------------------------------------------------------

2. CTS  in release note of driver

The CTS is very different from above one, it is IEEE 802.11 RTS/CTS protocol(Request To Send/Clear To Send).

you can see it in driver's release note.

 

Regards,

weidong

0 Kudos

2,078 Views
nandan-khant
Contributor II

Hello @weidong_sun,

We require your CONFIRMATION on the below point:

1. Is the keep_alive feature supported in the driver release: SD-WLAN-SD-BT-8897-AO_LINUX_4_9_70-BG4CT-W15.68.19.p59-15.26.19.p59-C4X15698_B0B1-GPL.zip

Please check and confirm with the INTERNAL TEAM  and share the updates as soon as possible.

Thanks and Regards,

Nandan Khant

0 Kudos