RE: [PATCH v2] iio: adc: ti-adc081c: Partial revert of removal of ACPI IDs

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

 



Hi Jonathan, 

Add one line " Tested-by: Kunyang Fan <kunyng_fan@xxxxxxxxxxxx>" in the previous commit. 

Thanks, 

Kunyang

-----Original Message-----
From: Jonathan Cameron <jic23@xxxxxxxxxx> 
Sent: Thursday, December 16, 2021 7:56 PM
To: "Kunyang =?UTF-8?B?RmFu?=(=?UTF-8?B?6IyD5Z2k5o+a?=)\" <Kunyang_Fan@xxxxxxxx>"@TP-DDEI-01.corpnet.asus
Cc: linux-iio@xxxxxxxxxxxxxxx; Jonathan Cameron <Jonathan.Cameron@xxxxxxxxxx>; Kunyang Fan <Kunyang_Fan@xxxxxxxxxxxx>; Andy Shevchenko <andy.shevchenko@xxxxxxxxx>
Subject: Re: [PATCH v2] iio: adc: ti-adc081c: Partial revert of removal of ACPI IDs

On Sun, 12 Dec 2021 16:22:21 +0000
Jonathan Cameron <jic23@xxxxxxxxxxxxxxxxxxxxx> wrote:

> On Wed, 8 Dec 2021 07:36:16 +0000
> Kunyang Fan(范坤揚) <Kunyang_Fan@xxxxxxxx> wrote:
> 
> > Hi Jonathan,
> > 
> > This patch is looked good to me, and I used our product UP-extremei11 to verify ADC ADC081C function.  
> 
> Hi Kunayang,
> 
> If you could give a formal Tested-by tag that would be great.
Above is close enough I think that I'll add one.

As I don't have any other fixes queued up and we are near the end of the cycle I may well add this to a pull request targetting the merge window.

For now, applied to the fixes-togreg branch of iio.git and marked for stable.

Thanks,

Jonathan

> 
> I'm running a bit slow this this weekend so will try to pick up 
> outstanding patches mid week.
> 
> Thanks,
> 
> Jonathan
> 
> > 
> > Thanks,
> > 
> > Kunyang
> > 
> > -----Original Message-----
> > From: Jonathan Cameron <jic23@xxxxxxxxxx>
> > Sent: Monday, December 6, 2021 1:27 AM
> > To: linux-iio@xxxxxxxxxxxxxxx
> > Cc: Jonathan Cameron <Jonathan.Cameron@xxxxxxxxxx>; Kunyang Fan 
> > <Kunyang_Fan@xxxxxxxxxxxx>; Andy Shevchenko 
> > <andy.shevchenko@xxxxxxxxx>
> > Subject: [PATCH v2] iio: adc: ti-adc081c: Partial revert of removal 
> > of ACPI IDs
> > 
> > From: Jonathan Cameron <Jonathan.Cameron@xxxxxxxxxx>
> > 
> > Unfortuanately a non standards compliant ACPI ID is known to be in the wild on some AAEON boards.
> > 
> > Partly revert the removal of these IDs so that ADC081C will again work + add a comment to that affect for future reference.
> > 
> > Whilst here use generic firmware properties rather than the ACPI specific handling previously found in this driver.
> > 
> > Reported-by: Kunyang Fan <Kunyang_Fan@xxxxxxxxxxxx>
> > Fixes: c458b7ca3fd0 ("iio:adc:ti-adc081c: Drop ACPI ids that seem 
> > very unlikely to be official.")
> > Tested-by: Kunyang Fan <Kunyang_Fan@xxxxxxxxxxxx>
> > Signed-off-by: Jonathan Cameron <Jonathan.Cameron@xxxxxxxxxx>
> > Cc: Andy Shevchenko <andy.shevchenko@xxxxxxxxx>
> > ---
> > 
> > Looking ideally for a tested-by for this from Kunyang Fan.
> > 
> > v2: Use generic firmware properties as Andy Shevchenko rightly suggested.
> > I took it a bit further than strictly necessary as I don't like putting enums in the driver_data only to use them to index a table when we could just use the pointers directly.
> > 
> > Note this driver does have device tree binding documentation but 
> > that's a job for another day.  Or maybe later today if I get really 
> > bored this evening :)
> > 
> >  drivers/iio/adc/ti-adc081c.c | 22 +++++++++++++++++-----
> >  1 file changed, 17 insertions(+), 5 deletions(-)
> > 
> > diff --git a/drivers/iio/adc/ti-adc081c.c 
> > b/drivers/iio/adc/ti-adc081c.c index 16fc608db36a..bd48b073e720 
> > 100644
> > --- a/drivers/iio/adc/ti-adc081c.c
> > +++ b/drivers/iio/adc/ti-adc081c.c
> > @@ -19,6 +19,7 @@
> >  #include <linux/i2c.h>
> >  #include <linux/module.h>
> >  #include <linux/mod_devicetable.h>
> > +#include <linux/property.h>
> > 
> >  #include <linux/iio/iio.h>
> >  #include <linux/iio/buffer.h>
> > @@ -156,13 +157,16 @@ static int adc081c_probe(struct i2c_client *client,  {
> >         struct iio_dev *iio;
> >         struct adc081c *adc;
> > -       struct adcxx1c_model *model;
> > +       const struct adcxx1c_model *model;
> >         int err;
> > 
> >         if (!i2c_check_functionality(client->adapter, I2C_FUNC_SMBUS_WORD_DATA))
> >                 return -EOPNOTSUPP;
> > 
> > -       model = &adcxx1c_models[id->driver_data];
> > +       if (dev_fwnode(&client->dev))
> > +               model = device_get_match_data(&client->dev);
> > +       else
> > +               model = &adcxx1c_models[id->driver_data];
> > 
> >         iio = devm_iio_device_alloc(&client->dev, sizeof(*adc));
> >         if (!iio)
> > @@ -210,10 +214,17 @@ static const struct i2c_device_id adc081c_id[] 
> > = {  };  MODULE_DEVICE_TABLE(i2c, adc081c_id);
> > 
> > +static const struct acpi_device_id adc081c_acpi_match[] = {
> > +       /* Used on some AAEON boards */
> > +       { "ADC081C", (kernel_ulong_t)&adcxx1c_models[ADC081C] },
> > +       { }
> > +};
> > +MODULE_DEVICE_TABLE(acpi, adc081c_acpi_match);
> > +
> >  static const struct of_device_id adc081c_of_match[] = {
> > -       { .compatible = "ti,adc081c" },
> > -       { .compatible = "ti,adc101c" },
> > -       { .compatible = "ti,adc121c" },
> > +       { .compatible = "ti,adc081c", .data = &adcxx1c_models[ADC081C] },
> > +       { .compatible = "ti,adc101c", .data = &adcxx1c_models[ADC101C] },
> > +       { .compatible = "ti,adc121c", .data = 
> > + &adcxx1c_models[ADC121C] },
> >         { }
> >  };
> >  MODULE_DEVICE_TABLE(of, adc081c_of_match); @@ -222,6 +233,7 @@ static struct i2c_driver adc081c_driver = {
> >         .driver = {
> >                 .name = "adc081c",
> >                 .of_match_table = adc081c_of_match,
> > +               .acpi_match_table = adc081c_acpi_match,
> >         },
> >         .probe = adc081c_probe,
> >         .id_table = adc081c_id,
> > --
> > 2.34.1
> > 
> > <p></p>
> > 
> > ====================================================================
> > ===============================================================
> > This email and any attachments to it contain confidential information and are intended solely for the use of the individual to whom it is addressed.If you are not the intended recipient or receive it accidentally, please immediately notify the sender by e-mail and delete the message and any attachments from your computer system, and destroy all hard copies. If any, please be advised that any unauthorized disclosure, copying, distribution or any action taken or omitted in reliance on this, is illegal and prohibited. Furthermore, any views or opinions expressed are solely those of the author and do not represent those of ASUSTeK. Thank you for your cooperation.
> > ====================================================================
> > ===============================================================
> 

<p></p>





[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Input]     [Linux Kernel]     [Linux SCSI]     [X.org]

  Powered by Linux