[v9,0/3] greybus: Add BeaglePlay Greybus Driver

Message ID 20231017101116.178041-1-ayushdevel1325@gmail.com
Headers
Series greybus: Add BeaglePlay Greybus Driver |

Message

Ayush Singh Oct. 17, 2023, 10:11 a.m. UTC
  BeagleConnect is both a technology concept and a line of board designs
that implement the technology. Born from Greybus, a mechanism for
dynamically extending a Linux system with embedded peripherals,
BeagleConnect adds two key elements: a 6LoWPAN transport and mikroBUS
manifests. The 6LoWPAN transport provides for arbitrary connections,
including the IEEE802.15.4g long-range wireless transport supported
between BeaglePlay and BeagleConnect Freedom (the first BeagleConnect
board design). The mikroBUS manifests provide for rapid prototyping
and low-node-count production with sensor boards following the
mikroBUS freely-licensable embedded bus standard such that existing
Linux drivers can be loaded upon Greybus discovery of the nodes.
This patch set provides the Linux-side hooks required for the 6LoWPAN
transport for BeagleConnect on BeaglePlay. Also adds required devicetree
additions.

Tested over `next-20230825`.

Link: https://programmershideaway.xyz/tags/gsoc23/ GSoC23 Blog
Link: https://git.beagleboard.org/gsoc/greybus/cc1352-firmware Zephyr App
Link: https://github.com/Ayush1325/linux/tree/gb-beagleplay GitHub Branch
Link: https://docs.beagleboard.org/latest/boards/beagleconnect/index.html BeagleConnect
Link: https://docs.beagleboard.org/latest/boards/beagleplay/index.html BeaglePlay
Link: https://github.com/Ayush1325/linux/tree/gb-beagleplay Github Repo
Link: https://lists.linaro.org/archives/list/greybus-dev@lists.linaro.org/thread/5RQV7OG5KI4BQWRN5ZCGZIFRMM6ERKPP/ Patch v8

Changes in Patch v9
v8 -> v9:
- Some capitalization in dt-bindings
- add reset-gpios and vdds-supply to beagleplay device tree

v7 -> v8:
- fix clocks
- fix reset-gpios
- depend on serdev

v6 -> v7:
- Drop speed variable
- Fix commit message
- add clock-names and descriptions
- fix power lines

v5 -> v6:
- Rename compatible to `ti,cc1352p7`
- Fix formatting
- Use kerneldoc
- Add clocks, power-gpios, reset-gpios to dt bindings

v4 -> v5:
- Move DT Bindings to net
- Rename compatible to `beagle,play-cc1352`
- Expose CC1352 as MCU
- Remove redundant tracing messages
- Fix memory leaks

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: net: Add ti,cc1352p7
  greybus: Add BeaglePlay Linux Driver
  dts: ti: k3-am625-beagleplay: Add beaglecc1352

 .../devicetree/bindings/net/ti,cc1352p7.yaml  |  51 ++
 MAINTAINERS                                   |   7 +
 .../arm64/boot/dts/ti/k3-am625-beagleplay.dts |   6 +
 drivers/greybus/Kconfig                       |  10 +
 drivers/greybus/Makefile                      |   2 +
 drivers/greybus/gb-beagleplay.c               | 501 ++++++++++++++++++
 6 files changed, 577 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/net/ti,cc1352p7.yaml
 create mode 100644 drivers/greybus/gb-beagleplay.c


base-commit: 6269320850097903b30be8f07a5c61d9f7592393
  

Comments

Greg KH Oct. 27, 2023, 11:21 a.m. UTC | #1
On Tue, Oct 17, 2023 at 03:41:11PM +0530, Ayush Singh wrote:
> BeagleConnect is both a technology concept and a line of board designs
> that implement the technology. Born from Greybus, a mechanism for
> dynamically extending a Linux system with embedded peripherals,
> BeagleConnect adds two key elements: a 6LoWPAN transport and mikroBUS
> manifests. The 6LoWPAN transport provides for arbitrary connections,
> including the IEEE802.15.4g long-range wireless transport supported
> between BeaglePlay and BeagleConnect Freedom (the first BeagleConnect
> board design). The mikroBUS manifests provide for rapid prototyping
> and low-node-count production with sensor boards following the
> mikroBUS freely-licensable embedded bus standard such that existing
> Linux drivers can be loaded upon Greybus discovery of the nodes.
> This patch set provides the Linux-side hooks required for the 6LoWPAN
> transport for BeagleConnect on BeaglePlay. Also adds required devicetree
> additions.
> 
> Tested over `next-20230825`.
> 
> Link: https://programmershideaway.xyz/tags/gsoc23/ GSoC23 Blog
> Link: https://git.beagleboard.org/gsoc/greybus/cc1352-firmware Zephyr App
> Link: https://github.com/Ayush1325/linux/tree/gb-beagleplay GitHub Branch
> Link: https://docs.beagleboard.org/latest/boards/beagleconnect/index.html BeagleConnect
> Link: https://docs.beagleboard.org/latest/boards/beagleplay/index.html BeaglePlay
> Link: https://github.com/Ayush1325/linux/tree/gb-beagleplay Github Repo
> Link: https://lists.linaro.org/archives/list/greybus-dev@lists.linaro.org/thread/5RQV7OG5KI4BQWRN5ZCGZIFRMM6ERKPP/ Patch v8
> 
> Changes in Patch v9
> v8 -> v9:
> - Some capitalization in dt-bindings
> - add reset-gpios and vdds-supply to beagleplay device tree

Given a lack of objections, and nothing I could find wrong with this,
I've now applied this to my tree, thanks for sticking with this.

Now the real work begins!  :)

thanks,

greg k-h