From: Jason Kridner <jkridner@beagleboard.org>
To: Ayush Singh <ayushdevel1325@gmail.com>
Cc: greybus-dev@lists.linaro.org, devicetree@vger.kernel.org,
linux-kernel@vger.kernel.org, gregkh@linuxfoundation.org,
Vaishnav M A <vaishnav@beagleboard.org>,
Nishanth Menon <nm@ti.com>
Subject: Re: [PATCH v4 0/3] greybus: Add BeaglePlay Greybus Driver
Date: Wed, 13 Sep 2023 08:57:43 -0400 [thread overview]
Message-ID: <CA+T6QP=gWS+7WzzyFmMtuN48cExThSQHXGgjAtQQsy_u-bhYDw@mail.gmail.com> (raw)
In-Reply-To: <20230902182845.1840620-1-ayushdevel1325@gmail.com>
On Sat, Sep 2, 2023 at 2:28 PM Ayush Singh <ayushdevel1325@gmail.com> wrote:
>
> 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.
Ayush,
I think part of the problem you are seeing in getting this patch set
accepted is due to a lack of clarity from me on branding. Yes, this is
a Greybus driver that runs on BeaglePlay and talks to specific
firmware running on a CC1352P7 on BeaglePlay, but none of those
individual things explains what this is on its own, it has to be
comprehended a bit more collectively. Together, I've been calling this
the "BeagleConnect" concept and I need to do a bit more to smooth out
the rough edges in the communications, just as you have smoothed out
the rough edges in the implementation by moving GBridge out of
userspace and made a proper Greybus driver.
I have a draft of the concept at
https://docs.beagleboard.org/latest/boards/beagleconnect/index.html,
but it is really in rough form. Let me try to state it here for
clarity and I think you might paraphrase part of it in your next patch
set as I see you've had some comments that likely need to be addressed
such that a v5 will be on the way.
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. A different patch set,
currently in RFC, provides the mikroBUS manifest support to complete
the BeagleConnect functionality. (Be sure to use imperative mode if
paraphrasing this in the patch submission).
(If wondering, Beagle hasn't done any patent applications and
considers all public record of describing BeagleConnect technology as
evidence of prior art in public that will hopefully prevent anyone
else from trying to patent it. The name BeagleConnect is a trademark
owned by the BeagleBoard.org Foundation, but anyone should naturally
be able to implement Greybus over 6LoWPAN without any sort of
royalty--we just need to call it something so that people can
recognize compatible devices, so don't implement anything that isn't
interoperable and call it BeagleConnect, please.)
With this said, maybe the names can be a bit more clear? If I haven't
defined terms well enough, let me know.
So, when naming the binding, I'd think something like
"beagle,play-cc1352-connecthost". I removed the redundant use of
"beagle" if that seems right. I think it is accurate from a
hierarchical perspective because it runs on BeaglePlay, it talks to
the cc1352 and the cc1352 needs to be running the BeagleConnect host
firmware.
Hope this helps.
--Jason
(Board president at BeagleBoard.org Foundation)
>
> 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
>
--
https://beagleboard.org/about/jkridner - a 501c3 non-profit educating
around open hardware computing
next prev parent reply other threads:[~2023-09-13 12:57 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-09-02 18:28 [PATCH v4 0/3] greybus: Add BeaglePlay Greybus Driver Ayush Singh
2023-09-02 18:28 ` [PATCH v4 1/3] dt-bindings: Add beaglecc1352 Ayush Singh
2023-09-04 7:14 ` Krzysztof Kozlowski
2023-09-06 16:47 ` Ayush Singh
2023-09-11 6:23 ` Krzysztof Kozlowski
2023-09-02 18:28 ` [PATCH v4 2/3] greybus: Add BeaglePlay Linux Driver Ayush Singh
2023-09-04 7:19 ` Krzysztof Kozlowski
2023-09-05 16:27 ` Ayush Singh
2023-09-06 9:59 ` Krzysztof Kozlowski
2023-09-06 10:33 ` Ayush Singh
2023-09-06 21:05 ` kernel test robot
2023-09-02 18:28 ` [PATCH v4 3/3] dts: ti: k3-am625-beagleplay: Add beaglecc1352 Ayush Singh
2023-09-04 7:20 ` Krzysztof Kozlowski
2023-09-13 12:57 ` Jason Kridner [this message]
-- strict thread matches above, loose matches on Subject: below --
2023-09-02 18:22 [PATCH v4 0/3] greybus: Add BeaglePlay Greybus Driver Ayush Singh
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to='CA+T6QP=gWS+7WzzyFmMtuN48cExThSQHXGgjAtQQsy_u-bhYDw@mail.gmail.com' \
--to=jkridner@beagleboard.org \
--cc=ayushdevel1325@gmail.com \
--cc=devicetree@vger.kernel.org \
--cc=gregkh@linuxfoundation.org \
--cc=greybus-dev@lists.linaro.org \
--cc=linux-kernel@vger.kernel.org \
--cc=nm@ti.com \
--cc=vaishnav@beagleboard.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).