[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ZWjLMNKJElPI6uSo@lizhi-Precision-Tower-5810>
Date: Thu, 30 Nov 2023 12:49:36 -0500
From: Frank Li <Frank.li@....com>
To: Miquel Raynal <miquel.raynal@...tlin.com>
Cc: alexandre.belloni@...tlin.com, conor.culhane@...vaco.com,
imx@...ts.linux.dev, joe@...ches.com,
linux-i3c@...ts.infradead.org, linux-kernel@...r.kernel.org,
zbigniew.lukwinski@...ux.intel.com
Subject: Re: [PATCH v4 6/6] i3c: add API i3c_dev_gettstatus_format1() to get
target device status
On Thu, Nov 30, 2023 at 11:19:59AM +0100, Miquel Raynal wrote:
> Hi Frank,
>
> Frank.Li@....com wrote on Wed, 29 Nov 2023 17:12:25 -0500:
>
> > I3C standard 5.1.9.3.15 Get Device Status (GETSTATUS):
> > Get request for one I3C Target Device to return its current status.
> >
> > Add API to fetch it with format1.
> >
> > Signed-off-by: Frank Li <Frank.Li@....com>
> > ---
> > drivers/i3c/device.c | 24 ++++++++++++++++++++++++
> > drivers/i3c/internals.h | 1 +
> > drivers/i3c/master.c | 26 ++++++++++++++++++++++++++
> > include/linux/i3c/device.h | 1 +
> > 4 files changed, 52 insertions(+)
> >
> > diff --git a/drivers/i3c/device.c b/drivers/i3c/device.c
> > index 1a6a8703dbc3a..aa26cf50ab9c6 100644
> > --- a/drivers/i3c/device.c
> > +++ b/drivers/i3c/device.c
> > @@ -196,6 +196,30 @@ void i3c_device_free_ibi(struct i3c_device *dev)
> > }
> > EXPORT_SYMBOL_GPL(i3c_device_free_ibi);
> >
> > +/**
> > + * i3c_device_getstatus_format1() - Get device status with format 1.
> > + * @dev: device for which you want to get status.
> > + * @status: I3C status format 1
> > + *
> > + * Return: 0 in case of success, a negative error core otherwise.
> > + */
> > +int i3c_device_getstatus_format1(struct i3c_device *dev, u16 *status)
>
> I'm not a big fan of the opposition between "i3c_device" and "i3c_dev".
> Could we clarify the prefixes?
look likes:
Internal API between device/master/ use i3c_dev
External API for I3C target device use i3c_device
>
> > +{
> > + int ret = -EINVAL;
>
> Init not useful
>
> > +
> > + if (!status)
> > + return -EINVAL;
> > +
> > + i3c_bus_normaluse_lock(dev->bus);
> > + if (dev->desc)
> > + ret = i3c_dev_getstatus_format1_locked(dev->desc, status);
> > +
> > + i3c_bus_normaluse_unlock(dev->bus);
> > +
> > + return ret;
> > +}
> > +EXPORT_SYMBOL_GPL(i3c_device_getstatus_format1);
>
> There is no user yet. Maybe this needs to be done in another series?
> Same below.
See
https://lore.kernel.org/imx/202311070330.5mylauLR-lkp@intel.com/T/#t
>
> ...
>
> > +int i3c_dev_getstatus_format1_locked(struct i3c_dev_desc *dev, u16 *status)
>
> ...
>
> Thanks,
> Miquèl
Powered by blists - more mailing lists