mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-07 19:30:30 +09:00
Merge tag 'iio-fixes-for-3.16d' of git://git.kernel.org/pub/scm/linux/kernel/git/jic23/iio into staging-linus
Jonathan writes: 4th set of fixes for IIO in the 3.16 cycle * Fix incorrect handling of the iio_event_spec mask_shared_by_type bitmap. The point of this was to allow multiple channels to specify elements that lead to the same sysfs attribute. A but in the handling meant that this failed. The handling is modified to be similar to that used for the main IIO info_mask_shared_by_type which works correclty. * The acceleration scale factors reported by the mma8452 driver gave accelerations in g, wherease the IIO ABI is in m/s^2. The fix simply corrects the reported scale factors.
This commit is contained in:
@@ -111,8 +111,14 @@ static const int mma8452_samp_freq[8][2] = {
|
||||
{6, 250000}, {1, 560000}
|
||||
};
|
||||
|
||||
/*
|
||||
* Hardware has fullscale of -2G, -4G, -8G corresponding to raw value -2048
|
||||
* The userspace interface uses m/s^2 and we declare micro units
|
||||
* So scale factor is given by:
|
||||
* g * N * 1000000 / 2048 for N = 2, 4, 8 and g=9.80665
|
||||
*/
|
||||
static const int mma8452_scales[3][2] = {
|
||||
{0, 977}, {0, 1953}, {0, 3906}
|
||||
{0, 9577}, {0, 19154}, {0, 38307}
|
||||
};
|
||||
|
||||
static ssize_t mma8452_show_samp_freq_avail(struct device *dev,
|
||||
|
||||
@@ -345,6 +345,9 @@ static int iio_device_add_event(struct iio_dev *indio_dev,
|
||||
&indio_dev->event_interface->dev_attr_list);
|
||||
kfree(postfix);
|
||||
|
||||
if ((ret == -EBUSY) && (shared_by != IIO_SEPARATE))
|
||||
continue;
|
||||
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user