lkml.org 
[lkml]   [2009]   [Nov]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH v2 07/10] LIS3LV02D: Remove calibaration functionality
    Op 10-11-09 13:41, Samu Onkalo schreef:
    > Chip is calibrated by the manufacturer. There is no need to calibarate
    > it at driver level. If the chip is used as a joystick, calibaration can
    > be done using joystick device calibration mechanism.
    >
    > Signed-off-by: Samu Onkalo <samu.p.onkalo@nokia.com>
    Acked-by: Éric Piel <eric.piel@tremplin-utc.net>
    > ---
    > drivers/hwmon/lis3lv02d.c | 32 +++-----------------------------
    > drivers/hwmon/lis3lv02d.h | 3 ---
    > 2 files changed, 3 insertions(+), 32 deletions(-)
    >
    > diff --git a/drivers/hwmon/lis3lv02d.c b/drivers/hwmon/lis3lv02d.c
    > index 0335b36..5b39257 100644
    > --- a/drivers/hwmon/lis3lv02d.c
    > +++ b/drivers/hwmon/lis3lv02d.c
    > @@ -344,19 +344,12 @@ static void lis3lv02d_joystick_poll(struct input_polled_dev *pidev)
    > int x, y, z;
    >
    > lis3lv02d_get_xyz(&lis3_dev, &x, &y, &z);
    > - input_report_abs(pidev->input, ABS_X, x - lis3_dev.xcalib);
    > - input_report_abs(pidev->input, ABS_Y, y - lis3_dev.ycalib);
    > - input_report_abs(pidev->input, ABS_Z, z - lis3_dev.zcalib);
    > + input_report_abs(pidev->input, ABS_X, x);
    > + input_report_abs(pidev->input, ABS_Y, y);
    > + input_report_abs(pidev->input, ABS_Z, z);
    > input_sync(pidev->input);
    > }
    >
    > -
    > -static inline void lis3lv02d_calibrate_joystick(void)
    > -{
    > - lis3lv02d_get_xyz(&lis3_dev,
    > - &lis3_dev.xcalib, &lis3_dev.ycalib, &lis3_dev.zcalib);
    > -}
    > -
    > int lis3lv02d_joystick_enable(void)
    > {
    > struct input_dev *input_dev;
    > @@ -373,8 +366,6 @@ int lis3lv02d_joystick_enable(void)
    > lis3_dev.idev->poll_interval = MDPS_POLL_INTERVAL;
    > input_dev = lis3_dev.idev->input;
    >
    > - lis3lv02d_calibrate_joystick();
    > -
    > input_dev->name = "ST LIS3LV02DL Accelerometer";
    > input_dev->phys = DRIVER_NAME "/input0";
    > input_dev->id.bustype = BUS_HOST;
    > @@ -430,20 +421,6 @@ static ssize_t lis3lv02d_position_show(struct device *dev,
    > return sprintf(buf, "(%d,%d,%d)\n", x, y, z);
    > }
    >
    > -static ssize_t lis3lv02d_calibrate_show(struct device *dev,
    > - struct device_attribute *attr, char *buf)
    > -{
    > - return sprintf(buf, "(%d,%d,%d)\n", lis3_dev.xcalib, lis3_dev.ycalib, lis3_dev.zcalib);
    > -}
    > -
    > -static ssize_t lis3lv02d_calibrate_store(struct device *dev,
    > - struct device_attribute *attr,
    > - const char *buf, size_t count)
    > -{
    > - lis3lv02d_calibrate_joystick();
    > - return count;
    > -}
    > -
    > static ssize_t lis3lv02d_rate_show(struct device *dev,
    > struct device_attribute *attr, char *buf)
    > {
    > @@ -452,14 +429,11 @@ static ssize_t lis3lv02d_rate_show(struct device *dev,
    >
    > static DEVICE_ATTR(selftest, S_IRUGO, lis3lv02d_selftest_show, NULL);
    > static DEVICE_ATTR(position, S_IRUGO, lis3lv02d_position_show, NULL);
    > -static DEVICE_ATTR(calibrate, S_IRUGO|S_IWUSR, lis3lv02d_calibrate_show,
    > - lis3lv02d_calibrate_store);
    > static DEVICE_ATTR(rate, S_IRUGO, lis3lv02d_rate_show, NULL);
    >
    > static struct attribute *lis3lv02d_attributes[] = {
    > &dev_attr_selftest.attr,
    > &dev_attr_position.attr,
    > - &dev_attr_calibrate.attr,
    > &dev_attr_rate.attr,
    > NULL
    > };
    > diff --git a/drivers/hwmon/lis3lv02d.h b/drivers/hwmon/lis3lv02d.h
    > index 655875e..a692116 100644
    > --- a/drivers/hwmon/lis3lv02d.h
    > +++ b/drivers/hwmon/lis3lv02d.h
    > @@ -216,9 +216,6 @@ struct lis3lv02d {
    > struct input_polled_dev *idev; /* input device */
    > struct platform_device *pdev; /* platform device */
    > atomic_t count; /* interrupt count after last read */
    > - int xcalib; /* calibrated null value for x */
    > - int ycalib; /* calibrated null value for y */
    > - int zcalib; /* calibrated null value for z */
    > struct axis_conversion ac; /* hw -> logical axis */
    >
    > u32 irq; /* IRQ number */

    --
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2009-11-15 16:57    [W:0.036 / U:61.288 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site