All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Jérôme Pouiller" <jerome.pouiller@silabs.com>
To: greybus-dev@lists.linaro.org, "Johan Hovold" <johan@kernel.org>,
	"Alex Elder" <elder@kernel.org>,
	"Greg Kroah-Hartman" <gregkh@linuxfoundation.org>,
	linux-kernel@vger.kernel.org,
	"Damien Riégel" <damien.riegel@silabs.com>
Cc: "Silicon Labs Kernel Team" <linux-devel@silabs.com>,
	"Damien Riégel" <damien.riegel@silabs.com>
Subject: Re: [PATCH v2 00/14] greybus: introduce CPC as transport layer
Date: Thu, 15 Jan 2026 22:46:43 +0100	[thread overview]
Message-ID: <5295548.NG923GbCHz@nb0018864> (raw)
In-Reply-To: <20260115155808.36102-1-damien.riegel@silabs.com>

On Thursday 15 January 2026 16:57:53 Central European Standard Time Damien Riégel wrote:
> Hi,
> 
> This patchset brings support for Silicon Labs' CPC protocol as transport
> layer for Greybus. This is introduced as a module that sits between
> Greybus and CPC Host Device Drivers implementations, like SDIO or SPI.
> This patchset includes SDIO as physical layer.
> 
>         +----------------------------------------------------+
>         |                      Greybus                       |
>         +----------------------------------------------------+
>                                  /|\
>                                   |
>                                  \|/
>         +----------------------------------------------------+
>         |                        CPC                         |
>         +----------------------------------------------------+
>               /|\                /|\                /|\
>                |                  |                  |
>               \|/                \|/                \|/
>           +----------+       +---------+       +-----------+
>           |   SDIO   |       |   SPI   |       |   Others  |
>           +----------+       +---------+       +-----------+
> 
> CPC implements some of the features of Unipro that Greybus relies upon,
> like reliable transmission. CPC takes care of detecting transmission
> errors and retransmit frames if necessary, but that feature is not part
> of the RFC to keep it concise. There's also a flow-control
> feature, preventing sending messages to already full cports.
> 
> In order to implement these features, a 4-byte header is prepended to
> Greybus messages, making the whole header 12 bytes (Greybus header is 8
> bytes).
> 
> This RFC starts by implementing a shim layer between physical bus
> drivers (like SDIO and SPI) and Greybus, and progressively add more
> elements to it to make it useful in its own right. Finally, an SDIO
> driver is added to enable the communication with a remote device.
> 
> 
> Changes in v2:
>   - addressed review comments and errors reported by kernel bot
>   - for SDIO driver, remove padding between headers and payloads when
>     aggregating packets together
> 

I have to review this PR for a while. Sorry for the delay. I should
have provided my feedback for the v1.

For now, the abstract interface seems a bit over-engineered. However,
I assume will make sense once other buses will be added. Globally,
this work looks good to me.

Until now, I was was a bit frustrated Greybus for Zephyr only addresses
devices with network capabilities. I hope to be able to easily expose the
services of my Zephyr devices to my Linux host with this PR.

Beside my small comments:

Reviewed-by: Jérôme Pouiller <jerome.pouiller@silabs.com>

-- 
Jérôme Pouiller



  parent reply	other threads:[~2026-01-15 21:46 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-01-15 15:57 [PATCH v2 00/14] greybus: introduce CPC as transport layer Damien Riégel
2026-01-15 15:57 ` [PATCH v2 01/14] greybus: cpc: add minimal CPC Host Device infrastructure Damien Riégel
2026-01-16 15:11   ` Greg Kroah-Hartman
2026-01-27 21:11     ` Damien Riégel
2026-01-15 15:57 ` [PATCH v2 02/14] greybus: cpc: introduce CPC cport structure Damien Riégel
2026-01-15 15:57 ` [PATCH v2 03/14] greybus: cpc: use socket buffers instead of gb_message in TX path Damien Riégel
2026-01-15 15:57 ` [PATCH v2 04/14] greybus: cpc: pack cport ID in Greybus header Damien Riégel
2026-01-15 15:57 ` [PATCH v2 05/14] greybus: cpc: switch RX path to socket buffers Damien Riégel
2026-01-15 15:57 ` [PATCH v2 06/14] greybus: cpc: introduce CPC header structure Damien Riégel
2026-01-15 21:46   ` Jérôme Pouiller
2026-01-15 15:58 ` [PATCH v2 07/14] greybus: cpc: account for CPC header size in RX and TX path Damien Riégel
2026-01-15 15:58 ` [PATCH v2 08/14] greybus: cpc: add and validate sequence numbers Damien Riégel
2026-01-15 21:46   ` Jérôme Pouiller
2026-01-15 15:58 ` [PATCH v2 09/14] greybus: cpc: acknowledge all incoming messages Damien Riégel
2026-01-15 15:58 ` [PATCH v2 10/14] greybus: cpc: use holding queue instead of sending out immediately Damien Riégel
2026-01-15 15:58 ` [PATCH v2 11/14] greybus: cpc: honour remote's RX window Damien Riégel
2026-01-15 15:58 ` [PATCH v2 12/14] greybus: cpc: let host device drivers dequeue TX frames Damien Riégel
2026-01-15 15:58 ` [PATCH v2 13/14] greybus: cpc: add private data pointer in CPC Host Device Damien Riégel
2026-01-15 15:58 ` [PATCH v2 14/14] greybus: cpc: add CPC SDIO host driver Damien Riégel
2026-01-15 21:46   ` Jérôme Pouiller
2026-01-15 22:34   ` Jérôme Pouiller
2026-01-15 21:46 ` Jérôme Pouiller [this message]
2026-01-15 22:48   ` [PATCH v2 00/14] greybus: introduce CPC as transport layer Jérôme Pouiller

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=5295548.NG923GbCHz@nb0018864 \
    --to=jerome.pouiller@silabs.com \
    --cc=damien.riegel@silabs.com \
    --cc=elder@kernel.org \
    --cc=gregkh@linuxfoundation.org \
    --cc=greybus-dev@lists.linaro.org \
    --cc=johan@kernel.org \
    --cc=linux-devel@silabs.com \
    --cc=linux-kernel@vger.kernel.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.