Skip to content

Introduce Qualcomm PDS service support

zhuxuanchen请求将release-3.23.1合并到master

The Qualcomm PDS service provides location data on a wide range of Qualcomm platforms. It used QMI encoded messages sent over a shared memory link, implemented in Linux as AF_QIPCRTR.

A special service is available on port -2 on the local node in the network, which provides functionality to the node address and port of registered services by id. As the driver is opened this mechanism is used to search for a registered PDS service in the system.

As the PDS driver is activated two messages are sent to the PDS service, the first one configures which events the service will send to the client (in our case NMEA reports) and the second starts the transmission of these packets. Similarly when the driver is deactivated a stop request is sent to the service.

Between the start and stop request the PDS service will send NMEA messages to the PDS client at a rate of 1 Hz, the NMEA string is extracted from the QMI encoded message and handed to the nmea_parse() function.

The PDS driver is selected by the url pds://, where host is either a numerical identifier of the node in the AF_QIPCRTR network or the string "any".

Signed-off-by: Bjorn Andersson bjorn.andersson@linaro.org Signed-off-by: Aníbal Limón anibal.limon@linaro.org

合并请求报告