Message ID | 20231004184639.462510-1-ayushdevel1325@gmail.com |
---|---|
Headers | show |
Series | greybus: Add BeaglePlay Greybus Driver | expand |
On Thu, Oct 05, 2023 at 12:16:37AM +0530, Ayush Singh wrote: > Add the Greybus host driver for BeaglePlay board by BeagleBoard.org. > > The current greybus setup involves running SVC in a user-space > application (GBridge) and using netlink to communicate with kernel > space. GBridge itself uses wpanusb kernel driver, so the greybus messages > travel from kernel space (gb_netlink) to user-space (GBridge) and then > back to kernel space (wpanusb) before reaching CC1352. > > This driver directly communicates with CC1352 (running SVC Zephyr > application). Thus, it simplifies the complete greybus setup eliminating > user-space GBridge. > > This driver is responsible for the following: > - Start SVC (CC1352) on driver load. > - Send/Receive Greybus messages to/from CC1352 using HDLC over UART. > - Print Logs from CC1352. > - Stop SVC (CC1352) on driver load. > > Signed-off-by: Ayush Singh <ayushdevel1325@gmail.com> > --- > MAINTAINERS | 1 + > drivers/greybus/Kconfig | 10 + > drivers/greybus/Makefile | 2 + > drivers/greybus/gb-beagleplay.c | 501 ++++++++++++++++++++++++++++++++ > 4 files changed, 514 insertions(+) > create mode 100644 drivers/greybus/gb-beagleplay.c > > diff --git a/MAINTAINERS b/MAINTAINERS > index 5467669d7963..d87e30626a6a 100644 > --- a/MAINTAINERS > +++ b/MAINTAINERS > @@ -8974,6 +8974,7 @@ M: Ayush Singh <ayushdevel1325@gmail.com> > L: greybus-dev@lists.linaro.org (moderated for non-subscribers) > S: Maintained > F: Documentation/devicetree/bindings/net/ti,cc1352p7.yaml > +F: drivers/greybus/gb-beagleplay.c > > GREYBUS SUBSYSTEM > M: Johan Hovold <johan@kernel.org> > diff --git a/drivers/greybus/Kconfig b/drivers/greybus/Kconfig > index 78ba3c3083d5..fd4f26d09c53 100644 > --- a/drivers/greybus/Kconfig > +++ b/drivers/greybus/Kconfig > @@ -17,6 +17,16 @@ menuconfig GREYBUS > > if GREYBUS > > +config GREYBUS_BEAGLEPLAY > + tristate "Greybus BeaglePlay driver" > + depends on TTY What you want to depend on here is serdev, not tty, right? Or am I mis-reading the code requirements? thanks, greg k-h
On 10/5/23 14:38, Greg KH wrote: > On Thu, Oct 05, 2023 at 12:16:37AM +0530, Ayush Singh wrote: >> Add the Greybus host driver for BeaglePlay board by BeagleBoard.org. >> >> The current greybus setup involves running SVC in a user-space >> application (GBridge) and using netlink to communicate with kernel >> space. GBridge itself uses wpanusb kernel driver, so the greybus messages >> travel from kernel space (gb_netlink) to user-space (GBridge) and then >> back to kernel space (wpanusb) before reaching CC1352. >> >> This driver directly communicates with CC1352 (running SVC Zephyr >> application). Thus, it simplifies the complete greybus setup eliminating >> user-space GBridge. >> >> This driver is responsible for the following: >> - Start SVC (CC1352) on driver load. >> - Send/Receive Greybus messages to/from CC1352 using HDLC over UART. >> - Print Logs from CC1352. >> - Stop SVC (CC1352) on driver load. >> >> Signed-off-by: Ayush Singh <ayushdevel1325@gmail.com> >> --- >> MAINTAINERS | 1 + >> drivers/greybus/Kconfig | 10 + >> drivers/greybus/Makefile | 2 + >> drivers/greybus/gb-beagleplay.c | 501 ++++++++++++++++++++++++++++++++ >> 4 files changed, 514 insertions(+) >> create mode 100644 drivers/greybus/gb-beagleplay.c >> >> diff --git a/MAINTAINERS b/MAINTAINERS >> index 5467669d7963..d87e30626a6a 100644 >> --- a/MAINTAINERS >> +++ b/MAINTAINERS >> @@ -8974,6 +8974,7 @@ M: Ayush Singh <ayushdevel1325@gmail.com> >> L: greybus-dev@lists.linaro.org (moderated for non-subscribers) >> S: Maintained >> F: Documentation/devicetree/bindings/net/ti,cc1352p7.yaml >> +F: drivers/greybus/gb-beagleplay.c >> >> GREYBUS SUBSYSTEM >> M: Johan Hovold <johan@kernel.org> >> diff --git a/drivers/greybus/Kconfig b/drivers/greybus/Kconfig >> index 78ba3c3083d5..fd4f26d09c53 100644 >> --- a/drivers/greybus/Kconfig >> +++ b/drivers/greybus/Kconfig >> @@ -17,6 +17,16 @@ menuconfig GREYBUS >> >> if GREYBUS >> >> +config GREYBUS_BEAGLEPLAY >> + tristate "Greybus BeaglePlay driver" >> + depends on TTY > What you want to depend on here is serdev, not tty, right? Or am I > mis-reading the code requirements? > > thanks, > > greg k-h Yes, it was dependent on tty in the past, but not anymore. I think it should be changed to `SERIAL_DEV_BUS` now? Sincerely, Ayush Singh
On Thu, Oct 05, 2023 at 03:18:15PM +0530, Ayush Singh wrote: > > On 10/5/23 14:38, Greg KH wrote: > > On Thu, Oct 05, 2023 at 12:16:37AM +0530, Ayush Singh wrote: > > > Add the Greybus host driver for BeaglePlay board by BeagleBoard.org. > > > > > > The current greybus setup involves running SVC in a user-space > > > application (GBridge) and using netlink to communicate with kernel > > > space. GBridge itself uses wpanusb kernel driver, so the greybus messages > > > travel from kernel space (gb_netlink) to user-space (GBridge) and then > > > back to kernel space (wpanusb) before reaching CC1352. > > > > > > This driver directly communicates with CC1352 (running SVC Zephyr > > > application). Thus, it simplifies the complete greybus setup eliminating > > > user-space GBridge. > > > > > > This driver is responsible for the following: > > > - Start SVC (CC1352) on driver load. > > > - Send/Receive Greybus messages to/from CC1352 using HDLC over UART. > > > - Print Logs from CC1352. > > > - Stop SVC (CC1352) on driver load. > > > > > > Signed-off-by: Ayush Singh <ayushdevel1325@gmail.com> > > > --- > > > MAINTAINERS | 1 + > > > drivers/greybus/Kconfig | 10 + > > > drivers/greybus/Makefile | 2 + > > > drivers/greybus/gb-beagleplay.c | 501 ++++++++++++++++++++++++++++++++ > > > 4 files changed, 514 insertions(+) > > > create mode 100644 drivers/greybus/gb-beagleplay.c > > > > > > diff --git a/MAINTAINERS b/MAINTAINERS > > > index 5467669d7963..d87e30626a6a 100644 > > > --- a/MAINTAINERS > > > +++ b/MAINTAINERS > > > @@ -8974,6 +8974,7 @@ M: Ayush Singh <ayushdevel1325@gmail.com> > > > L: greybus-dev@lists.linaro.org (moderated for non-subscribers) > > > S: Maintained > > > F: Documentation/devicetree/bindings/net/ti,cc1352p7.yaml > > > +F: drivers/greybus/gb-beagleplay.c > > > GREYBUS SUBSYSTEM > > > M: Johan Hovold <johan@kernel.org> > > > diff --git a/drivers/greybus/Kconfig b/drivers/greybus/Kconfig > > > index 78ba3c3083d5..fd4f26d09c53 100644 > > > --- a/drivers/greybus/Kconfig > > > +++ b/drivers/greybus/Kconfig > > > @@ -17,6 +17,16 @@ menuconfig GREYBUS > > > if GREYBUS > > > +config GREYBUS_BEAGLEPLAY > > > + tristate "Greybus BeaglePlay driver" > > > + depends on TTY > > What you want to depend on here is serdev, not tty, right? Or am I > > mis-reading the code requirements? > > > > thanks, > > > > greg k-h > > Yes, it was dependent on tty in the past, but not anymore. I think it should > be changed to `SERIAL_DEV_BUS` now? Yes, otherwise you will get build errors. thanks, greg k-h