auto-pts icon indicating copy to clipboard operation
auto-pts copied to clipboard

GATT/CL/GPM/BV-11-C has not supported

Open justin-nxp opened this issue 3 years ago • 8 comments

Hello developers,this was an new caes added GATT/CL/GPM/BV-11-C,This is a new case added recently, the script is not yet supported and involves hdl_wid_165 hdl_wid_153. Will these hdl be supported subsequently?

justin-nxp avatar Dec 15 '22 14:12 justin-nxp

since those are using concurrent gatt read we first need to move both autopts and zephyr tester app to new BTP GATT client service

see: https://github.com/intel/auto-pts/issues/582 https://github.com/intel/auto-pts/blob/master/doc/btp_gatt_client.txt

sjanc avatar Dec 15 '22 14:12 sjanc

@sjanc Would it require much work to add bare minimum support for new BTP GATT Client API in Zephyr just to pass this 1 particular test case?

MariuszSkamra avatar Jan 03 '23 07:01 MariuszSkamra

@sjanc It might be possible to just implement whatever command is needed to pass this test (e.g. GATT Read from the new BTP service).

michal-narajowski avatar Jan 03 '23 08:01 michal-narajowski

yes, in short term, although in general IUT should support only new services or only old service and in long term all tests should use new services, and only fallback to old if IUT doesn't support it (as long as maintaining this isn't huge burden)

sjanc avatar Jan 03 '23 10:01 sjanc

since those are using concurrent gatt read we first need to move both autopts and zephyr tester app to new BTP GATT client service

see: #582 https://github.com/intel/auto-pts/blob/master/doc/btp_gatt_client.txt

hi @sjanc what is the difference in this new btp_gatt_client.txt? I could not find the channel option for gatt api/command, or bearer params.

how to use the concurrent gatt read with zephyr bluetooth api?
I have tried to understand this pr, https://github.com/zephyrproject-rtos/zephyr/pull/45332 the zephyr bluetooth api, seem only to set channel as any or UNENHANCED_ONLY or ENHANCED_ONLY, other than set one special channel/bearer id?

JingsaiLu avatar Jan 04 '23 11:01 JingsaiLu

since those are using concurrent gatt read we first need to move both autopts and zephyr tester app to new BTP GATT client service see: #582 https://github.com/intel/auto-pts/blob/master/doc/btp_gatt_client.txt

hi @sjanc what is the difference in this new btp_gatt_client.txt? I could not find the channel option for gatt api/command, or bearer params.

how to use the concurrent gatt read with zephyr bluetooth api? I have tried to understand this pr, zephyrproject-rtos/zephyr#45332 the zephyr bluetooth api, seem only to set channel as any or UNENHANCED_ONLY or ENHANCED_ONLY, other than set one special channel/bearer id?

There is no api for choosing a specific channel. We did not see the use case for that and the enhanced/unenhanced switch is sufficient for both the audio use cases and for the PTS tests.

The BTP protocol does not currently have any way to specify the bearer to use, but that could be added. See this comment and responses.


GATT/CL/GPM/BV-11-C requires GATT caching on the client side. This is not implemented in the Zephyr host stack and will have to be done in the application. I am not sure it makes sense to run this qualification test for something the host does not support.

See enhancement issues in zephyr relating to client side GATT caching: https://github.com/zephyrproject-rtos/zephyr/issues/31306, https://github.com/zephyrproject-rtos/zephyr/issues/46695, https://github.com/zephyrproject-rtos/zephyr/issues/44587

hermabe avatar Jan 04 '23 12:01 hermabe

Hi @hermabe, thanks a lot for your info, agreed that the enhanced/unenhanced switch is sufficient and it is really a good idea from @sjanc , select and cache the preferred bearer in app for testing.

for this case GATT/CL/GPM/BV-11-C, it has been enabled in "autopts\workspaces\zephyr\zephyr-master\zephyr-master.pqw6" for a long time, and for the "Support for multiple simultaneous active ATT bearers from the same device – ATT over LE and EATT over LE" feature test, which maybe significant to verify eatt feature.

@sjanc do you think we could remove this case in the next stack qualifiation test? or you will add support fo the GATT caching on the client side in test app, as @hermabe mentioned?

JingsaiLu avatar Jan 04 '23 12:01 JingsaiLu

if I recall correctly ICS table defines only single option for supporting "database hash" and both GATT client and server scenarios depend on it. So disabling client side would require disabling also server side (which is already supported and we want to validate it)

we don't plan to add support for GATT client caching in tester app as this feature is no supported by zephyr host yet

but TBH I think we should create test set errata so that client and server support are independent

sjanc avatar Jan 18 '23 08:01 sjanc