BeaglePlay is a board by BeagleBoard.org. It contains a main AM62 processor with a CC1352 co-processor. They are connected over UART. Greybus is a hardware protocol that was designed to provide Unipro with a sane application layer. It can be used in IOT and IIOT applications keeping the intelligence on the host. This driver has been tested on BeaglePlay by BeagleBoard.org. It serves as Greybus Host device and 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 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 v4 of this patch v3 -> v4: - Add DT Bindings - Reorder commits - Improve commit messages 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 (3): dt-bindings: Add beaglecc1352 greybus: Add BeaglePlay Linux Driver dts: ti: k3-am625-beagleplay: Add beaglecc1352 .../bindings/serial/beaglecc1352.yaml | 25 + MAINTAINERS | 7 + .../arm64/boot/dts/ti/k3-am625-beagleplay.dts | 4 + drivers/greybus/Kconfig | 10 + drivers/greybus/Makefile | 3 +- drivers/greybus/gb-beagleplay.c | 494 ++++++++++++++++++ 6 files changed, 542 insertions(+), 1 deletion(-) create mode 100644 Documentation/devicetree/bindings/serial/beaglecc1352.yaml create mode 100644 drivers/greybus/gb-beagleplay.c -- 2.41.0