This driver can be used in any Greybus setup where SVC and Linux Host are connected over UART.
This driver has been tested on BeaglePlay by BeagleBoard.org. It communicates with BeaglePlay CC1352 co-processor which serves as Greybus SVC. This replaces the old setup with bcfserial, wpanusb and GBridge. This driver also contains async HDLC code since communication with SVC take place over UART using HDLC.
This patchset also introduces a compatible property for the UART that is connected to CC1352 in BeaglePlay. I am not quite sure if it needs its own DT Schema file under `Documentation/devicetree/bindings/serial`.
This driver has been created as a part of my Google Summer of Code 2023. For more information, take a look at my blog.
This patchset has been tested over `next-20230825`.
My GSoC23 Blog: https://programmershideaway.xyz/tags/gsoc23/ Zephyr App: https://git.beagleboard.org/gsoc/greybus/cc1352-firmware GitHub Branch: https://github.com/Ayush1325/linux/tree/gb-beagleplay Video Demo: https://youtu.be/GVuIB7i5pjk
This the v3 of this patch v2 -> v3: - Move gb-beagleplay out of staging
v1 -> v2: - Combine the driver into a single file - Remove redundant code - Fix Checkpatch complaints - Other suggested changes
Ayush Singh (2): dts: Add beaglecc1352 to devicetree greybus: Add BeaglePlay Linux Driver
MAINTAINERS | 5 + .../arm64/boot/dts/ti/k3-am625-beagleplay.dts | 4 + drivers/greybus/Kconfig | 10 + drivers/greybus/Makefile | 3 +- drivers/greybus/gb-beagleplay.c | 494 ++++++++++++++++++ 5 files changed, 515 insertions(+), 1 deletion(-) create mode 100644 drivers/greybus/gb-beagleplay.c