| From: |
| Andreas Kemnade <andreas-AT-kemnade.info> |
| To: |
| marcel-AT-holtmann.org, luiz.dentz-AT-gmail.com, johan-AT-kernel.org, gregkh-AT-linuxfoundation.org, jirislaby-AT-kernel.org, andreas-AT-kemnade.info, pmenzel-AT-molgen.mpg.de, linux-kernel-AT-vger.kernel.org, linux-bluetooth-AT-vger.kernel.org, Adam Ford <aford173-AT-gmail.com>, Tony Lindgren <tony-AT-atomide.com>, tomi.valkeinen-AT-ideasonboard.com, Péter Ujfalusi <peter.ujfalusi-AT-gmail.com>, robh-AT-kernel.org, hns-AT-goldelico.com |
| Subject: |
| [PATCH v3 0/4] bluetooth/gnss: GNSS support for TiWi chips |
| Date: |
| Mon, 03 Jun 2024 16:43:56 +0200 |
| Message-ID: |
| <20240603144400.2195564-1-andreas@kemnade.info> |
| Archive-link: |
| Article |
Some of these chips have GNSS support. In some vendor kernels
a driver on top of misc/ti-st can be found providing a /dev/tigps
device which speaks the secretive Air Independent Interface (AI2) protocol.
To be more compatible with userspace send out NMEA by default but
allow a more raw mode by using a module parameter.
This was tested on the Epson Moverio BT-200.
Changes since V2:
- Optimize waits
- Fix some packet analysis / checksum computation issue
- Adding a proposal for removing those waits as RFC
- Minor spell corrections and improved descriptions
Changes since V1:
- Set up things for NMEA output
- Powerup/down at open()/close()
- split out logic between drivers/bluetooth and drivers/gnss
- leave out drivers/misc/ti-st driver removal to avoid
filling up mailboxes during the iterations, this series is
still a proof that it is not needed, will take the brush after
this series is accepted.
Andreas Kemnade (4):
gnss: Add AI2 protocol used by some TI combo chips.
Bluetooth: ti-st: Add GNSS subdevice for TI Wilink chips
gnss: Add driver for AI2 protocol
gnss: ai2: replace long sleeps by wait for acks
drivers/bluetooth/hci_ll.c | 81 +++++
drivers/gnss/Kconfig | 13 +
drivers/gnss/Makefile | 3 +
drivers/gnss/ai2.c | 560 +++++++++++++++++++++++++++++++++++
drivers/gnss/core.c | 1 +
include/linux/gnss.h | 1 +
include/linux/ti_wilink_st.h | 8 +
7 files changed, 667 insertions(+)
create mode 100644 drivers/gnss/ai2.c
--
2.39.2