RE: [PATCH v5 04/12] platform_data/mlxreg: Add capability bit and mask fields

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




> -----Original Message-----
> From: Ilpo Järvinen <ilpo.jarvinen@xxxxxxxxxxxxxxx>
> Sent: Monday, 3 February 2025 15:50
> To: Vadim Pasternak <vadimp@xxxxxxxxxx>
> Cc: Hans de Goede <hdegoede@xxxxxxxxxx>; Michael Shych
> <michaelsh@xxxxxxxxxx>; Ciju Rajan K <crajank@xxxxxxxxxx>; Felix Radensky
> <fradensky@xxxxxxxxxx>; Oleksandr Shamray <oleksandrs@xxxxxxxxxx>;
> platform-driver-x86@xxxxxxxxxxxxxxx
> Subject: Re: [PATCH v5 04/12] platform_data/mlxreg: Add capability bit and
> mask fields
> 
> On Fri, 24 Jan 2025, Vadim Pasternak wrote:
> 
> > Some 'capability' registers can be shared between different resources.
> > Add new fields 'capability_bit' and 'capability_mask' to structs
> > 'mlxreg_core_data' and 'mlxreg_core_item' for getting only relevant
> > capability bits.
> >
> > Reviewed-by: Felix Radensky <fradensky@xxxxxxxxxx>
> > Signed-off-by: Vadim Pasternak <vadimp@xxxxxxxxxx>
> > ---
> >  include/linux/platform_data/mlxreg.h | 8 ++++++++
> >  1 file changed, 8 insertions(+)
> >
> > diff --git a/include/linux/platform_data/mlxreg.h
> > b/include/linux/platform_data/mlxreg.h
> > index 0b9f81a6f753..d9f679752226 100644
> > --- a/include/linux/platform_data/mlxreg.h
> > +++ b/include/linux/platform_data/mlxreg.h
> > @@ -118,6 +118,8 @@ struct mlxreg_hotplug_device {
> >   * @mask: attribute access mask;
> >   * @bit: attribute effective bit;
> >   * @capability: attribute capability register;
> > + * @capability_bit: started bit in attribute capability register;
> 
> "started bit" sounds a bit clumsy.

Hi Ilpo!

After revising the code, I will drop ' capability_bit' field.
Not used in any configuration.

Thanks,
Vadim.

> 
> > + * @capability_mask: mask in attribute capability register;
> >   * @reg_prsnt: attribute presence register;
> >   * @reg_sync: attribute synch register;
> >   * @reg_pwr: attribute power register; @@ -138,6 +140,8 @@ struct
> > mlxreg_core_data {
> >  	u32 mask;
> >  	u32 bit;
> >  	u32 capability;
> > +	u32 capability_bit;
> > +	u32 capability_mask;
> >  	u32 reg_prsnt;
> >  	u32 reg_sync;
> >  	u32 reg_pwr;
> > @@ -162,6 +166,8 @@ struct mlxreg_core_data {
> >   * @reg: group interrupt status register;
> >   * @mask: group interrupt mask;
> >   * @capability: group capability register;
> > + * @capability_bit: started bit in attribute capability register;
> > + * @capability_mask: mask in attribute capability register;
> 
> This is probably a bit misleading as you masked with it before shifting with
> capability_bit (in patch 5) so the mask seems zeroth-bit based rather than a
> "mask in attribute capability register" ?
> 
> >   * @cache: last status value for elements fro the same group;
> >   * @count: number of available elements in the group;
> >   * @ind: element's index inside the group; @@ -175,6 +181,8 @@ struct
> > mlxreg_core_item {
> >  	u32 reg;
> >  	u32 mask;
> >  	u32 capability;
> > +	u32 capability_bit;
> > +	u32 capability_mask;
> >  	u32 cache;
> >  	u8 count;
> >  	u8 ind;
> >
> 
> --
>  i.





[Index of Archives]     [Linux Kernel Development]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux