All of lore.kernel.org
 help / color / mirror / Atom feed
From: Wolfram Sang <wsa@the-dreams.de>
To: Eduardo Valentin <eduval@amazon.com>
Cc: Haiyue Wang <haiyue.wang@linux.intel.com>,
	jarkko.nikula@linux.intel.com, andriy.shevchenko@intel.com,
	brendanhiggins@google.com, Rob Herring <robh+dt@kernel.org>,
	Mark Rutland <mark.rutland@arm.com>,
	linux-i2c@vger.kernel.org, devicetree@vger.kernel.org,
	linux-kernel@vger.kernel.org
Subject: Re: [PATCHv7 2/3] i2c: slave-mqueue: add a slave backend to receive and queue messages
Date: Mon, 1 Jul 2019 14:56:19 +0200	[thread overview]
Message-ID: <20190701125619.GC4399@kunai> (raw)
In-Reply-To: <20190605164651.15991-3-eduval@amazon.com>

[-- Attachment #1: Type: text/plain, Size: 2607 bytes --]

Hi Eduardo,

thanks for stepping up and pushing this further!

On Wed, Jun 05, 2019 at 09:46:50AM -0700, Eduardo Valentin wrote:
> From: Haiyue Wang <haiyue.wang@linux.intel.com>
> 
> Some protocols over I2C are designed for bi-directional transferring
> messages by using I2C Master Write protocol. Like the MCTP (Management
> Component Transport Protocol) and IPMB (Intelligent Platform Management
> Bus), they both require that the userspace can receive messages from
> I2C dirvers under slave mode.
> 
> This new slave mqueue backend is used to receive and queue messages, it
> will exposes these messages to userspace by sysfs bin file.

So, this is a read-only bin file. Sending is done via the standard
i2c-dev driver? Or not needed at all?

Regarding, IPMB, how does this related to the recently merged IPMB slave
driver?

http://patchwork.ozlabs.org/patch/1113278/

> 
> Note: DT interface and a couple of minor fixes here and there
> by Eduardo, so I kept the original authorship here.
> 
> Cc: Rob Herring <robh+dt@kernel.org>
> Cc: Mark Rutland <mark.rutland@arm.com>
> Cc: Wolfram Sang <wsa@the-dreams.de>
> Cc: Andy Shevchenko <andriy.shevchenko@intel.com>
> Cc: linux-i2c@vger.kernel.org
> Cc: devicetree@vger.kernel.org
> Cc: linux-kernel@vger.kernel.org
> Signed-off-by: Haiyue Wang <haiyue.wang@linux.intel.com>
> Signed-off-by: Eduardo Valentin <eduval@amazon.com>

> +I2C SLAVE MQUEUE DRIVER
> +M:	Eduardo Valentin <eduval@amazon.com>

Cool, thanks!

> +config I2C_SLAVE_MQUEUE_MESSAGE_SIZE
> +	int "The message size of I2C mqueue slave"
> +	depends on I2C_SLAVE_MQUEUE
> +	default 120
> +
> +config I2C_SLAVE_MQUEUE_QUEUE_SIZE
> +	int "The queue size of I2C mqueue slave"
> +	depends on I2C_SLAVE_MQUEUE
> +	default 32
> +	help
> +	  This number MUST be power of 2.

I am not happy with this being a Kconfig option. Best would be a
per-instance configuration, so we could have differently sized mqueues
at runtime. I could think of another sysfs-file like
"mqueue-slave-config" which would appear after writing to 'new_device'.
And only after writing to 'mqueue-slave-config', the bin file to read
from would show up. But it is just a quick brainstorming, maybe you have
a better idea?

> +// SPDX-License-Identifier: GPL-2.0
> +// Copyright (c) 2017 - 2018, Intel Corporation.

A short description what this driver does would be nice.

Rest looks decent from a glimpse. I haven't looked into the gory details
yet, though, because I want to get the high level things straight first.

Kind regards,

   Wolfram


[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

  parent reply	other threads:[~2019-07-01 12:56 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20190605164651.15991-1-eduval@amazon.com>
2019-06-05 16:46 ` [PATCHv7 1/3] dt-bindings: i2c: document bindings for i2c-slave-mqueue Eduardo Valentin
2019-06-05 16:46   ` Eduardo Valentin
2019-06-11 23:14   ` Rob Herring
2019-06-12  2:46     ` Wang, Haiyue
2019-07-01 12:42       ` Wolfram Sang
2019-07-01 12:43     ` Wolfram Sang
2019-06-05 16:46 ` [PATCHv7 2/3] i2c: slave-mqueue: add a slave backend to receive and queue messages Eduardo Valentin
2019-06-05 16:46   ` Eduardo Valentin
2019-06-05 17:02   ` Andy Shevchenko
2019-06-05 17:28     ` Eduardo Valentin
2019-07-01 12:56   ` Wolfram Sang [this message]
2019-06-05 16:46 ` [PATCHv7 3/3] Documentation: ABI: Add i2c-slave-mqueue sysfs documentation Eduardo Valentin
2019-06-05 16:46   ` Eduardo Valentin

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=20190701125619.GC4399@kunai \
    --to=wsa@the-dreams.de \
    --cc=andriy.shevchenko@intel.com \
    --cc=brendanhiggins@google.com \
    --cc=devicetree@vger.kernel.org \
    --cc=eduval@amazon.com \
    --cc=haiyue.wang@linux.intel.com \
    --cc=jarkko.nikula@linux.intel.com \
    --cc=linux-i2c@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mark.rutland@arm.com \
    --cc=robh+dt@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.