Re: [PATCH v3 4/6] power: supply: lenovo_yoga_c630_battery: add Lenovo C630 driver
From: Dmitry Baryshkov
Date: Mon May 27 2024 - 19:16:16 EST
On Mon, May 27, 2024 at 02:26:36PM +0200, Oliver Neukum wrote:
> On 27.05.24 12:03, Dmitry Baryshkov wrote:
>
> Hi,
>
> > +struct yoga_c630_psy {
> > + struct yoga_c630_ec *ec;
> > + struct device *dev;
> > + struct device_node *of_node;
> > + struct notifier_block nb;
> > + struct mutex lock;
> > +
> > + struct power_supply *adp_psy;
> > + struct power_supply *bat_psy;
> > +
> > + unsigned long last_status_update;
> > +
> > + bool adapter_online;
> > +
> > + bool unit_mA;
> > +
> > + unsigned int scale;
>
> why do you store unit_mA and scale? This looks redundant and like a source
> of confusion to me.
Here we just followed the AML code in ACPI tables. The unit_mA is a
returned from the_BIX method, the 'scale' is used internally in the DSDT.
If you think that it's better, I can change all '* scale * 1000' to
'if unit_mA then foo = bar * 10000 else foo = bar * 1000'.
--
With best wishes
Dmitry