17 Nov, 2014

8 commits


16 Nov, 2014

2 commits

  • The mcb_device_id table is supposed to be zero-terminated.

    Signed-off-by: Axel Lin
    Cc:
    Signed-off-by: Jonathan Cameron

    Axel Lin
     
  • Currently, we get the new GSEL bits by OR-ing the old values
    with the new ones. This only works first time when the old
    values are 0.

    Startup:
    * GSEL0 = 0, GSEL1 = 0

    Set range to 4G: (GSEL0 = 1, GSEL1 = 0)
    * GSEL0 = 0 | 1 = 1
    * GSEL1 = 0 | 0 = 0
    * correct

    Change range to 2G: (GSEL0 = 0, GSEL1 = 0)
    * GSEL0 = 1 | 0 = 1
    * GSEL1 = 0 | 0 = 0
    * wrong, GSEL0 should be 0

    This has the nice effect that we can use the full scale range,
    exported in in_accel_scale_available.

    Fixes: a735e3d7f03 (iio: accel: kxcjk-1013: Set adjustable range)
    Signed-off-by: Daniel Baluta
    Reviewed-by: Srinivas Pandruvada
    Cc:
    Signed-off-by: Jonathan Cameron

    Daniel Baluta
     

06 Nov, 2014

4 commits


22 Sep, 2014

2 commits


15 Sep, 2014

18 commits


14 Sep, 2014

2 commits

  • This patch adds support for KXTJ2-1009 3-axis acceleromenter sensor.
    KXTJ2-1009 uses the same register definitions as KXCJK-1013.

    The specification for KXTJ2-1009 can be downloaded from:
    http://www.kionix.com/sites/default/files/KXTJ2-1009%20Specifications%20Rev%204.pdf

    Reviewed-by: Srinivas Pandruvada
    Signed-off-by: Daniel Baluta
    Signed-off-by: Jonathan Cameron

    Daniel Baluta
     
  • The following chips are either similar or have only the resolution
    different. Hence, change this driver to support these chips too:

    BMI055 - combo chip (accelerometer part is identical to BMC150's)
    BMA255 - identical to BMC150's accelerometer
    BMA222E - 8 bit resolution
    BMA250E - 10 bit resolution
    BMA280 - 14 bit resolution

    Additionally:
    * add bmc150_accel_match_acpi_device() function to check that the device
    has been enumerated through ACPI;
    * rename bmc150_accel_acpi_gpio_probe() to bmc150_accel_gpio_probe()
    since the ACPI matching has been moved to the new function. Also, this
    will allow for the GPIO matching to be done against a device tree too, not only
    ACPI tree;
    * rename bmc150_scale_info struct member 'range' to 'reg_range' to be
    consistent with the naming convention used elsewhere in the driver
    and declare it u8, instead of int;
    * change CONFIG description to list all supported chips;

    Signed-off-by: Laurentiu Palcu
    Acked-by: Srinivas Pandruvada
    Signed-off-by: Jonathan Cameron

    Laurentiu Palcu
     

11 Sep, 2014

1 commit


31 Aug, 2014

1 commit

  • This patch adds support for KXCJ9-1008 3-axis acceleromenter sensor.
    KXCJ9-1008 uses the same register definitions as KXCJK-1013.

    The specification for KXCJ9-1008 can be downloaded from:
    http://www.kionix.com/sites/default/files/KXCJ9-1008%20Specifications%20Rev%205.pdf

    Signed-off-by: Daniel Baluta
    Signed-off-by: Jonathan Cameron

    Daniel Baluta
     

30 Aug, 2014

2 commits

  • When CONFIG_PM_RUNTIME is not set, the following issues are seen:
    * warning message at compilation time:
    warning: 'bmc150_accel_get_startup_times' defined but not used [-Wunused-function]
    * bmc150_accel_set_power_state() will always fail and reading the
    accelerometer data is impossible;
    This occurs because of the call to pm_runtime_put_autosuspend calls
    __pm_runtime_suspend which returns -ENOSYS.

    This commit fixes these.

    Signed-off-by: Laurentiu Palcu
    Signed-off-by: Jonathan Cameron

    Laurentiu Palcu
     
  • According to documentation ([1] - page 27), the range for 16G is
    7.81mg/LSB. Converted to SI, this is:
    7.81 * 10^-3 * 9.80665 m/s^2 / LSB = 0.0765899365 m/s^2 / LSB

    [1] http://ae-bst.resource.bosch.com/media/products/dokumente/bmc150/BST-BMC150-DS000-04.pdf

    Signed-off-by: Laurentiu Palcu
    Signed-off-by: Jonathan Cameron

    Laurentiu Palcu