diff options
author | 2016-04-11 10:41:07 +0300 | |
---|---|---|
committer | 2016-04-13 08:17:18 +0300 | |
commit | e09b41010ba33a20a87472ee821fa407a5b8da36 (patch) | |
tree | d10dc367189862e7ca5c592f033dc3726e1df4e3 /kernel/drivers/staging/iio/accel | |
parent | f93b97fd65072de626c074dbe099a1fff05ce060 (diff) |
These changes are the raw update to linux-4.4.6-rt14. Kernel sources
are taken from kernel.org, and rt patch from the rt wiki download page.
During the rebasing, the following patch collided:
Force tick interrupt and get rid of softirq magic(I70131fb85).
Collisions have been removed because its logic was found on the
source already.
Change-Id: I7f57a4081d9deaa0d9ccfc41a6c8daccdee3b769
Signed-off-by: José Pekkarinen <jose.pekkarinen@nokia.com>
Diffstat (limited to 'kernel/drivers/staging/iio/accel')
-rw-r--r-- | kernel/drivers/staging/iio/accel/Kconfig | 2 | ||||
-rw-r--r-- | kernel/drivers/staging/iio/accel/adis16201_core.c | 1 | ||||
-rw-r--r-- | kernel/drivers/staging/iio/accel/adis16203_core.c | 1 | ||||
-rw-r--r-- | kernel/drivers/staging/iio/accel/adis16204_core.c | 1 | ||||
-rw-r--r-- | kernel/drivers/staging/iio/accel/adis16209_core.c | 1 | ||||
-rw-r--r-- | kernel/drivers/staging/iio/accel/adis16220_core.c | 1 | ||||
-rw-r--r-- | kernel/drivers/staging/iio/accel/adis16240_core.c | 1 | ||||
-rw-r--r-- | kernel/drivers/staging/iio/accel/lis3l02dq_core.c | 11 | ||||
-rw-r--r-- | kernel/drivers/staging/iio/accel/lis3l02dq_ring.c | 30 | ||||
-rw-r--r-- | kernel/drivers/staging/iio/accel/sca3000_core.c | 66 | ||||
-rw-r--r-- | kernel/drivers/staging/iio/accel/sca3000_ring.c | 23 |
11 files changed, 69 insertions, 69 deletions
diff --git a/kernel/drivers/staging/iio/accel/Kconfig b/kernel/drivers/staging/iio/accel/Kconfig index 07b7ffa00..fa67da940 100644 --- a/kernel/drivers/staging/iio/accel/Kconfig +++ b/kernel/drivers/staging/iio/accel/Kconfig @@ -79,7 +79,7 @@ config LIS3L02DQ depends on SPI select IIO_TRIGGER if IIO_BUFFER depends on !IIO_BUFFER || IIO_KFIFO_BUF - depends on GPIOLIB + depends on GPIOLIB || COMPILE_TEST help Say Y here to build SPI support for the ST microelectronics accelerometer. The driver supplies direct access via sysfs files diff --git a/kernel/drivers/staging/iio/accel/adis16201_core.c b/kernel/drivers/staging/iio/accel/adis16201_core.c index 10db68581..06c0b75ed 100644 --- a/kernel/drivers/staging/iio/accel/adis16201_core.c +++ b/kernel/drivers/staging/iio/accel/adis16201_core.c @@ -235,7 +235,6 @@ static int adis16201_remove(struct spi_device *spi) static struct spi_driver adis16201_driver = { .driver = { .name = "adis16201", - .owner = THIS_MODULE, }, .probe = adis16201_probe, .remove = adis16201_remove, diff --git a/kernel/drivers/staging/iio/accel/adis16203_core.c b/kernel/drivers/staging/iio/accel/adis16203_core.c index fb593d23d..de5b84ac8 100644 --- a/kernel/drivers/staging/iio/accel/adis16203_core.c +++ b/kernel/drivers/staging/iio/accel/adis16203_core.c @@ -203,7 +203,6 @@ static int adis16203_remove(struct spi_device *spi) static struct spi_driver adis16203_driver = { .driver = { .name = "adis16203", - .owner = THIS_MODULE, }, .probe = adis16203_probe, .remove = adis16203_remove, diff --git a/kernel/drivers/staging/iio/accel/adis16204_core.c b/kernel/drivers/staging/iio/accel/adis16204_core.c index ea0ac2467..20a9df64f 100644 --- a/kernel/drivers/staging/iio/accel/adis16204_core.c +++ b/kernel/drivers/staging/iio/accel/adis16204_core.c @@ -241,7 +241,6 @@ static int adis16204_remove(struct spi_device *spi) static struct spi_driver adis16204_driver = { .driver = { .name = "adis16204", - .owner = THIS_MODULE, }, .probe = adis16204_probe, .remove = adis16204_remove, diff --git a/kernel/drivers/staging/iio/accel/adis16209_core.c b/kernel/drivers/staging/iio/accel/adis16209_core.c index d1dc1a3cb..8b42bf8c3 100644 --- a/kernel/drivers/staging/iio/accel/adis16209_core.c +++ b/kernel/drivers/staging/iio/accel/adis16209_core.c @@ -235,7 +235,6 @@ static int adis16209_remove(struct spi_device *spi) static struct spi_driver adis16209_driver = { .driver = { .name = "adis16209", - .owner = THIS_MODULE, }, .probe = adis16209_probe, .remove = adis16209_remove, diff --git a/kernel/drivers/staging/iio/accel/adis16220_core.c b/kernel/drivers/staging/iio/accel/adis16220_core.c index e46a91c69..d0165218b 100644 --- a/kernel/drivers/staging/iio/accel/adis16220_core.c +++ b/kernel/drivers/staging/iio/accel/adis16220_core.c @@ -482,7 +482,6 @@ static int adis16220_remove(struct spi_device *spi) static struct spi_driver adis16220_driver = { .driver = { .name = "adis16220", - .owner = THIS_MODULE, }, .probe = adis16220_probe, .remove = adis16220_remove, diff --git a/kernel/drivers/staging/iio/accel/adis16240_core.c b/kernel/drivers/staging/iio/accel/adis16240_core.c index cb074e864..1b5b685a8 100644 --- a/kernel/drivers/staging/iio/accel/adis16240_core.c +++ b/kernel/drivers/staging/iio/accel/adis16240_core.c @@ -288,7 +288,6 @@ static int adis16240_remove(struct spi_device *spi) static struct spi_driver adis16240_driver = { .driver = { .name = "adis16240", - .owner = THIS_MODULE, }, .probe = adis16240_probe, .remove = adis16240_remove, diff --git a/kernel/drivers/staging/iio/accel/lis3l02dq_core.c b/kernel/drivers/staging/iio/accel/lis3l02dq_core.c index ebcab56c8..7939ae637 100644 --- a/kernel/drivers/staging/iio/accel/lis3l02dq_core.c +++ b/kernel/drivers/staging/iio/accel/lis3l02dq_core.c @@ -406,8 +406,10 @@ static int lis3l02dq_initial_setup(struct iio_dev *indio_dev) goto err_ret; } - /* Read back to check this has worked acts as loose test of correct - * chip */ + /* + * Read back to check this has worked acts as loose test of correct + * chip + */ ret = lis3l02dq_spi_read_reg_8(indio_dev, LIS3L02DQ_REG_CTRL_1_ADDR, &valtest); @@ -565,7 +567,7 @@ static int lis3l02dq_read_event_config(struct iio_dev *indio_dev, { u8 val; int ret; - u8 mask = (1 << (chan->channel2*2 + (dir == IIO_EV_DIR_RISING))); + u8 mask = (1 << (chan->channel2 * 2 + (dir == IIO_EV_DIR_RISING))); ret = lis3l02dq_spi_read_reg_8(indio_dev, LIS3L02DQ_REG_WAKE_UP_CFG_ADDR, @@ -620,7 +622,7 @@ static int lis3l02dq_write_event_config(struct iio_dev *indio_dev, u8 val, control; u8 currentlyset; bool changed = false; - u8 mask = (1 << (chan->channel2*2 + (dir == IIO_EV_DIR_RISING))); + u8 mask = (1 << (chan->channel2 * 2 + (dir == IIO_EV_DIR_RISING))); mutex_lock(&indio_dev->mlock); /* read current control */ @@ -800,7 +802,6 @@ static int lis3l02dq_remove(struct spi_device *spi) static struct spi_driver lis3l02dq_driver = { .driver = { .name = "lis3l02dq", - .owner = THIS_MODULE, }, .probe = lis3l02dq_probe, .remove = lis3l02dq_remove, diff --git a/kernel/drivers/staging/iio/accel/lis3l02dq_ring.c b/kernel/drivers/staging/iio/accel/lis3l02dq_ring.c index b892f2cf5..50c162e0c 100644 --- a/kernel/drivers/staging/iio/accel/lis3l02dq_ring.c +++ b/kernel/drivers/staging/iio/accel/lis3l02dq_ring.c @@ -69,25 +69,25 @@ static int lis3l02dq_read_all(struct iio_dev *indio_dev, u8 *rx_array) mutex_lock(&st->buf_lock); - for (i = 0; i < ARRAY_SIZE(read_all_tx_array)/4; i++) + for (i = 0; i < ARRAY_SIZE(read_all_tx_array) / 4; i++) if (test_bit(i, indio_dev->active_scan_mask)) { /* lower byte */ - xfers[j].tx_buf = st->tx + 2*j; - st->tx[2*j] = read_all_tx_array[i*4]; - st->tx[2*j + 1] = 0; + xfers[j].tx_buf = st->tx + (2 * j); + st->tx[2 * j] = read_all_tx_array[i * 4]; + st->tx[2 * j + 1] = 0; if (rx_array) - xfers[j].rx_buf = rx_array + j*2; + xfers[j].rx_buf = rx_array + (j * 2); xfers[j].bits_per_word = 8; xfers[j].len = 2; xfers[j].cs_change = 1; j++; /* upper byte */ - xfers[j].tx_buf = st->tx + 2*j; - st->tx[2*j] = read_all_tx_array[i*4 + 2]; - st->tx[2*j + 1] = 0; + xfers[j].tx_buf = st->tx + (2 * j); + st->tx[2 * j] = read_all_tx_array[i * 4 + 2]; + st->tx[2 * j + 1] = 0; if (rx_array) - xfers[j].rx_buf = rx_array + j*2; + xfers[j].rx_buf = rx_array + (j * 2); xfers[j].bits_per_word = 8; xfers[j].len = 2; xfers[j].cs_change = 1; @@ -127,11 +127,11 @@ static int lis3l02dq_get_buffer_element(struct iio_dev *indio_dev, return ret; } for (i = 0; i < scan_count; i++) - data[i] = combine_8_to_16(rx_array[i*4+1], - rx_array[i*4+3]); + data[i] = combine_8_to_16(rx_array[i * 4 + 1], + rx_array[i * 4 + 3]); kfree(rx_array); - return i*sizeof(data[0]); + return i * sizeof(data[0]); } static irqreturn_t lis3l02dq_trigger_handler(int irq, void *p) @@ -195,7 +195,8 @@ __lis3l02dq_write_data_ready_config(struct iio_dev *indio_dev, bool state) /* Enable requested */ } else if (state && !currentlyset) { /* If not set, enable requested - * first disable all events */ + * first disable all events + */ ret = lis3l02dq_disable_all_events(indio_dev); if (ret < 0) goto error_ret; @@ -255,7 +256,8 @@ static int lis3l02dq_trig_try_reen(struct iio_trigger *trig) int i; /* If gpio still high (or high again) - * In theory possible we will need to do this several times */ + * In theory possible we will need to do this several times + */ for (i = 0; i < 5; i++) if (gpio_get_value(st->gpio)) lis3l02dq_read_all(indio_dev, NULL); diff --git a/kernel/drivers/staging/iio/accel/sca3000_core.c b/kernel/drivers/staging/iio/accel/sca3000_core.c index b614f272b..02e930c55 100644 --- a/kernel/drivers/staging/iio/accel/sca3000_core.c +++ b/kernel/drivers/staging/iio/accel/sca3000_core.c @@ -88,7 +88,7 @@ int sca3000_write_reg(struct sca3000_state *st, u8 address, u8 val) } int sca3000_read_data_short(struct sca3000_state *st, - uint8_t reg_address_high, + u8 reg_address_high, int len) { struct spi_transfer xfer[2] = { @@ -165,10 +165,9 @@ static int __sca3000_unlock_reg_lock(struct sca3000_state *st) * Lock must be held. **/ static int sca3000_write_ctrl_reg(struct sca3000_state *st, - uint8_t sel, + u8 sel, uint8_t val) { - int ret; ret = sca3000_reg_lock_on(st); @@ -374,7 +373,6 @@ error_ret: return ret; } - /* * Not even vaguely standard attributes so defined here rather than * in the relevant IIO core headers @@ -471,12 +469,13 @@ static int sca3000_read_raw(struct iio_dev *indio_dev, return ret; } *val = (be16_to_cpup((__be16 *)st->rx) >> 3) & 0x1FFF; - *val = ((*val) << (sizeof(*val)*8 - 13)) >> - (sizeof(*val)*8 - 13); + *val = ((*val) << (sizeof(*val) * 8 - 13)) >> + (sizeof(*val) * 8 - 13); } else { /* get the temperature when available */ ret = sca3000_read_data_short(st, - SCA3000_REG_ADDR_TEMP_MSB, 2); + SCA3000_REG_ADDR_TEMP_MSB, + 2); if (ret < 0) { mutex_unlock(&st->lock); return ret; @@ -511,8 +510,8 @@ static int sca3000_read_raw(struct iio_dev *indio_dev, * at all. **/ static ssize_t sca3000_read_av_freq(struct device *dev, - struct device_attribute *attr, - char *buf) + struct device_attribute *attr, + char *buf) { struct iio_dev *indio_dev = dev_to_iio_dev(dev); struct sca3000_state *st = iio_priv(indio_dev); @@ -529,26 +528,27 @@ static ssize_t sca3000_read_av_freq(struct device *dev, case SCA3000_MEAS_MODE_NORMAL: len += sprintf(buf + len, "%d %d %d\n", st->info->measurement_mode_freq, - st->info->measurement_mode_freq/2, - st->info->measurement_mode_freq/4); + st->info->measurement_mode_freq / 2, + st->info->measurement_mode_freq / 4); break; case SCA3000_MEAS_MODE_OP_1: len += sprintf(buf + len, "%d %d %d\n", st->info->option_mode_1_freq, - st->info->option_mode_1_freq/2, - st->info->option_mode_1_freq/4); + st->info->option_mode_1_freq / 2, + st->info->option_mode_1_freq / 4); break; case SCA3000_MEAS_MODE_OP_2: len += sprintf(buf + len, "%d %d %d\n", st->info->option_mode_2_freq, - st->info->option_mode_2_freq/2, - st->info->option_mode_2_freq/4); + st->info->option_mode_2_freq / 2, + st->info->option_mode_2_freq / 4); break; } return len; error_ret: return ret; } + /** * __sca3000_get_base_freq() obtain mode specific base frequency * @@ -582,8 +582,8 @@ error_ret: * sca3000_read_frequency() sysfs interface to get the current frequency **/ static ssize_t sca3000_read_frequency(struct device *dev, - struct device_attribute *attr, - char *buf) + struct device_attribute *attr, + char *buf) { struct iio_dev *indio_dev = dev_to_iio_dev(dev); struct sca3000_state *st = iio_priv(indio_dev); @@ -605,10 +605,10 @@ static ssize_t sca3000_read_frequency(struct device *dev, len = sprintf(buf, "%d\n", base_freq); break; case 0x01: - len = sprintf(buf, "%d\n", base_freq/2); + len = sprintf(buf, "%d\n", base_freq / 2); break; case 0x02: - len = sprintf(buf, "%d\n", base_freq/4); + len = sprintf(buf, "%d\n", base_freq / 4); break; } @@ -623,9 +623,9 @@ error_ret: * sca3000_set_frequency() sysfs interface to set the current frequency **/ static ssize_t sca3000_set_frequency(struct device *dev, - struct device_attribute *attr, - const char *buf, - size_t len) + struct device_attribute *attr, + const char *buf, + size_t len) { struct iio_dev *indio_dev = dev_to_iio_dev(dev); struct sca3000_state *st = iio_priv(indio_dev); @@ -650,9 +650,9 @@ static ssize_t sca3000_set_frequency(struct device *dev, /* clear the bits */ ctrlval &= ~0x03; - if (val == base_freq/2) { + if (val == base_freq / 2) { ctrlval |= SCA3000_OUT_CTRL_BUF_DIV_2; - } else if (val == base_freq/4) { + } else if (val == base_freq / 4) { ctrlval |= SCA3000_OUT_CTRL_BUF_DIV_4; } else if (val != base_freq) { ret = -EINVAL; @@ -849,9 +849,9 @@ static int sca3000_read_event_config(struct iio_dev *indio_dev, if (ret) goto error_ret; - if ((st->rx[0] & protect_mask) != SCA3000_MEAS_MODE_MOT_DET) + if ((st->rx[0] & protect_mask) != SCA3000_MEAS_MODE_MOT_DET) { ret = 0; - else { + } else { ret = sca3000_read_ctrl_reg(st, SCA3000_REG_CTRL_SEL_MD_CTRL); if (ret < 0) goto error_ret; @@ -863,6 +863,7 @@ error_ret: return ret; } + /** * sca3000_query_free_fall_mode() is free fall mode enabled **/ @@ -979,14 +980,14 @@ static int sca3000_write_event_config(struct iio_dev *indio_dev, if (ret) goto exit_point; /* if off and should be on */ - if ((st->mo_det_use_count) - && ((st->rx[0] & protect_mask) != SCA3000_MEAS_MODE_MOT_DET)) + if ((st->mo_det_use_count) && + ((st->rx[0] & protect_mask) != SCA3000_MEAS_MODE_MOT_DET)) ret = sca3000_write_reg(st, SCA3000_REG_ADDR_MODE, (st->rx[0] & ~protect_mask) | SCA3000_MEAS_MODE_MOT_DET); /* if on and should be off */ - else if (!(st->mo_det_use_count) - && ((st->rx[0] & protect_mask) == SCA3000_MEAS_MODE_MOT_DET)) + else if (!(st->mo_det_use_count) && + ((st->rx[0] & protect_mask) == SCA3000_MEAS_MODE_MOT_DET)) ret = sca3000_write_reg(st, SCA3000_REG_ADDR_MODE, (st->rx[0] & ~protect_mask)); exit_point: @@ -997,14 +998,14 @@ exit_point: /* Free fall detector related event attribute */ static IIO_DEVICE_ATTR_NAMED(accel_xayaz_mag_falling_en, - in_accel_x&y&z_mag_falling_en, + in_accel_x & y & z_mag_falling_en, S_IRUGO | S_IWUSR, sca3000_query_free_fall_mode, sca3000_set_free_fall_mode, 0); static IIO_CONST_ATTR_NAMED(accel_xayaz_mag_falling_period, - in_accel_x&y&z_mag_falling_period, + in_accel_x & y & z_mag_falling_period, "0.226"); static struct attribute *sca3000_event_attributes[] = { @@ -1196,7 +1197,6 @@ MODULE_DEVICE_TABLE(spi, sca3000_id); static struct spi_driver sca3000_driver = { .driver = { .name = "sca3000", - .owner = THIS_MODULE, }, .probe = sca3000_probe, .remove = sca3000_remove, diff --git a/kernel/drivers/staging/iio/accel/sca3000_ring.c b/kernel/drivers/staging/iio/accel/sca3000_ring.c index 8589eade1..20b878d35 100644 --- a/kernel/drivers/staging/iio/accel/sca3000_ring.c +++ b/kernel/drivers/staging/iio/accel/sca3000_ring.c @@ -34,9 +34,9 @@ */ static int sca3000_read_data(struct sca3000_state *st, - uint8_t reg_address_high, - u8 **rx_p, - int len) + u8 reg_address_high, + u8 **rx_p, + int len) { int ret; struct spi_transfer xfer[2] = { @@ -106,7 +106,7 @@ static int sca3000_read_first_n_hw_rb(struct iio_buffer *r, * i.e. number of time points * number of channels. */ if (count > num_available * bytes_per_sample) - num_read = num_available*bytes_per_sample; + num_read = num_available * bytes_per_sample; else num_read = count; @@ -116,7 +116,7 @@ static int sca3000_read_first_n_hw_rb(struct iio_buffer *r, if (ret) goto error_ret; - for (i = 0; i < num_read; i++) + for (i = 0; i < num_read / sizeof(u16); i++) *(((u16 *)rx) + i) = be16_to_cpup((__be16 *)rx + i); if (copy_to_user(buf, rx, num_read)) @@ -160,9 +160,9 @@ static ssize_t sca3000_query_ring_int(struct device *dev, * sca3000_set_ring_int() set state of ring status interrupt **/ static ssize_t sca3000_set_ring_int(struct device *dev, - struct device_attribute *attr, - const char *buf, - size_t len) + struct device_attribute *attr, + const char *buf, + size_t len) { struct iio_dev *indio_dev = dev_to_iio_dev(dev); struct sca3000_state *st = iio_priv(indio_dev); @@ -208,7 +208,7 @@ static ssize_t sca3000_show_buffer_scale(struct device *dev, struct iio_dev *indio_dev = dev_to_iio_dev(dev); struct sca3000_state *st = iio_priv(indio_dev); - return sprintf(buf, "0.%06d\n", 4*st->info->scale); + return sprintf(buf, "0.%06d\n", 4 * st->info->scale); } static IIO_DEVICE_ATTR(in_accel_scale, @@ -258,6 +258,8 @@ static const struct iio_buffer_access_funcs sca3000_ring_access_funcs = { .read_first_n = &sca3000_read_first_n_hw_rb, .data_available = sca3000_ring_buf_data_available, .release = sca3000_ring_release, + + .modes = INDIO_BUFFER_HARDWARE, }; int sca3000_configure_ring(struct iio_dev *indio_dev) @@ -265,7 +267,7 @@ int sca3000_configure_ring(struct iio_dev *indio_dev) struct iio_buffer *buffer; buffer = sca3000_rb_allocate(indio_dev); - if (buffer == NULL) + if (!buffer) return -ENOMEM; indio_dev->modes |= INDIO_BUFFER_HARDWARE; @@ -305,6 +307,7 @@ error_ret: return ret; } + /** * sca3000_hw_ring_preenable() hw ring buffer preenable function * |