The patch titled lis3lv02d: remove calibaration functionality has been added to the -mm tree. Its filename is lis3lv02d-remove-calibaration-functionality.patch Before you just go and hit "reply", please: a) Consider who else should be cc'ed b) Prefer to cc a suitable mailing list as well c) Ideally: find the original patch on the mailing list and do a reply-to-all to that, adding suitable additional cc's *** Remember to use Documentation/SubmitChecklist when testing your code *** See http://userweb.kernel.org/~akpm/stuff/added-to-mm.txt to find out what to do about this The current -mm tree may be found at http://userweb.kernel.org/~akpm/mmotm/ ------------------------------------------------------ Subject: lis3lv02d: remove calibaration functionality From: Samu Onkalo <samu.p.onkalo@xxxxxxxxx> 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@xxxxxxxxx> Acked-by: Éric Piel <Eric.Piel@xxxxxxxxxxxxxxxx> Cc: Pavel Machek <pavel@xxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- drivers/hwmon/lis3lv02d.c | 32 +++----------------------------- drivers/hwmon/lis3lv02d.h | 3 --- 2 files changed, 3 insertions(+), 32 deletions(-) diff -puN drivers/hwmon/lis3lv02d.c~lis3lv02d-remove-calibaration-functionality drivers/hwmon/lis3lv02d.c --- a/drivers/hwmon/lis3lv02d.c~lis3lv02d-remove-calibaration-functionality +++ a/drivers/hwmon/lis3lv02d.c @@ -350,19 +350,12 @@ static void lis3lv02d_joystick_poll(stru 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; @@ -379,8 +372,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; @@ -436,20 +427,6 @@ static ssize_t lis3lv02d_position_show(s 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) { @@ -458,14 +435,11 @@ static ssize_t lis3lv02d_rate_show(struc static DEVICE_ATTR(selftest, S_IRUSR, 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 -puN drivers/hwmon/lis3lv02d.h~lis3lv02d-remove-calibaration-functionality drivers/hwmon/lis3lv02d.h --- a/drivers/hwmon/lis3lv02d.h~lis3lv02d-remove-calibaration-functionality +++ a/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 */ _ Patches currently in -mm which might be from samu.p.onkalo@xxxxxxxxx are linux-next.patch lis3lv02d-axis-remap-and-resource-setup-release.patch lis3lv02d-i2c-support.patch lis3lv02d-send-sync-event.patch lis3lv02d-correct-memory-leak-in-module-unload.patch lis3-update-documentation-and-comments.patch lis3-fix-show-rate-for-8-bits-chips.patch lis3lv02d-proper-power-on-sequence.patch lis3-selftest-support.patch lis3lv02d-remove-calibaration-functionality.patch lis3-sysfs-entry-for-setting-chip-measurement-rate.patch lis3-scale-output-values-to-mg.patch lis3-update-documentation-to-match-latest-changes.patch lis3-update-documentation-to-match-latest-changes-fix.patch -- To unsubscribe from this list: send the line "unsubscribe mm-commits" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html