[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <81dfd08b90f841194237e074aaa3d57cada7afad.camel@redhat.com>
Date: Fri, 11 Dec 2020 11:37:34 -0600
From: Dan Williams <dcbw@...hat.com>
To: Greg KH <gregkh@...uxfoundation.org>,
Hemant Kumar <hemantk@...eaurora.org>
Cc: manivannan.sadhasivam@...aro.org, linux-arm-msm@...r.kernel.org,
linux-kernel@...r.kernel.org, jhugo@...eaurora.org,
bbhatt@...eaurora.org, loic.poulain@...aro.org,
netdev@...r.kernel.org
Subject: Re: [PATCH v17 3/3] bus: mhi: Add userspace client interface driver
On Fri, 2020-12-11 at 08:44 +0100, Greg KH wrote:
> On Thu, Dec 10, 2020 at 11:04:11PM -0800, Hemant Kumar wrote:
> > This MHI client driver allows userspace clients to transfer
> > raw data between MHI device and host using standard file
> > operations.
> > Driver instantiates UCI device object which is associated to device
> > file node. UCI device object instantiates UCI channel object when
> > device
> > file node is opened. UCI channel object is used to manage MHI
> > channels
> > by calling MHI core APIs for read and write operations. MHI
> > channels
> > are started as part of device open(). MHI channels remain in start
> > state until last release() is called on UCI device file node.
> > Device
> > file node is created with format
> >
> > /dev/<mhi_device_name>
> >
> > Currently it supports QMI channel. libqmi is userspace MHI client
> > which
> > communicates to a QMI service using QMI channel. libqmi is a glib-
> > based
> > library for talking to WWAN modems and devices which speaks QMI
> > protocol.
> > For more information about libqmi please refer
> > https://www.freedesktop.org/wiki/Software/libqmi/
>
> This says _what_ this is doing, but not _why_.
>
> Why do you want to circumvent the normal user/kernel apis for this
> type
> of device and move the normal network handling logic out to
> userspace?
> What does that help with? What does the current in-kernel api lack
> that
> this userspace interface is going to solve, and why can't the in-
> kernel
> api solve it instead?
>
> You are pushing a common user/kernel api out of the kernel here, to
> become very device-specific, with no apparent justification as to why
> this is happening.
>
> Also, because you are going around the existing network api, I will
> need
> the networking maintainers to ack this type of patch.
Just to re-iterate: QMI ~= AT commands ~= MBIM (not quite, but same
level)
We already do QMI-over-USB, or AT-over-CDC-ACM. This is QMI-over-MHI.
It's not networking data plane. It's WWAN device configuration.
There are no current kernel APIs for this, and I really don't think we
want there to be. The API surface is *huge* and we definitely don't
want that in-kernel.
Dan
Powered by blists - more mailing lists