lkml.org 
[lkml]   [2014]   [Jul]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH v6 4/4] iio: hid-sensor-magn-3d: Add support for rotation from north
On 20/07/14 00:27, Srinivas Pandruvada wrote:
>
> On 07/17/2014 11:18 AM, Reyad Attiyat wrote:
>> Add the HID usage attribute ID's and IIO channel info for rotation
>> from north support.
>>
>> Signed-off-by: Reyad Attiyat <reyad.attiyat@gmail.com>
> Acked-by: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
Applied to the togreg branch of iio.git. This will be initially pushed out
as testing for the autobuilders to play with.

Thanks,
>> ---
>> drivers/iio/magnetometer/hid-sensor-magn-3d.c | 53 ++++++++++++++++++++++++++-
>> 1 file changed, 52 insertions(+), 1 deletion(-)
>>
>> diff --git a/drivers/iio/magnetometer/hid-sensor-magn-3d.c b/drivers/iio/magnetometer/hid-sensor-magn-3d.c
>> index d3b9114..3ec777a 100644
>> --- a/drivers/iio/magnetometer/hid-sensor-magn-3d.c
>> +++ b/drivers/iio/magnetometer/hid-sensor-magn-3d.c
>> @@ -35,6 +35,10 @@ enum magn_3d_channel {
>> CHANNEL_SCAN_INDEX_X,
>> CHANNEL_SCAN_INDEX_Y,
>> CHANNEL_SCAN_INDEX_Z,
>> + CHANNEL_SCAN_INDEX_NORTH_MAGN_TILT_COMP,
>> + CHANNEL_SCAN_INDEX_NORTH_TRUE_TILT_COMP,
>> + CHANNEL_SCAN_INDEX_NORTH_MAGN,
>> + CHANNEL_SCAN_INDEX_NORTH_TRUE,
>> MAGN_3D_CHANNEL_MAX,
>> };
>> @@ -57,7 +61,11 @@ struct magn_3d_state {
>> static const u32 magn_3d_addresses[MAGN_3D_CHANNEL_MAX] = {
>> HID_USAGE_SENSOR_ORIENT_MAGN_FLUX_X_AXIS,
>> HID_USAGE_SENSOR_ORIENT_MAGN_FLUX_Y_AXIS,
>> - HID_USAGE_SENSOR_ORIENT_MAGN_FLUX_Z_AXIS
>> + HID_USAGE_SENSOR_ORIENT_MAGN_FLUX_Z_AXIS,
>> + HID_USAGE_SENSOR_ORIENT_COMP_MAGN_NORTH,
>> + HID_USAGE_SENSOR_ORIENT_COMP_TRUE_NORTH,
>> + HID_USAGE_SENSOR_ORIENT_MAGN_NORTH,
>> + HID_USAGE_SENSOR_ORIENT_TRUE_NORTH,
>> };
>> /* Channel definitions */
>> @@ -89,6 +97,42 @@ static const struct iio_chan_spec magn_3d_channels[] = {
>> BIT(IIO_CHAN_INFO_SCALE) |
>> BIT(IIO_CHAN_INFO_SAMP_FREQ) |
>> BIT(IIO_CHAN_INFO_HYSTERESIS),
>> + }, {
>> + .type = IIO_ROT,
>> + .modified = 1,
>> + .channel2 = IIO_MOD_NORTH_MAGN_TILT_COMP,
>> + .info_mask_separate = BIT(IIO_CHAN_INFO_RAW),
>> + .info_mask_shared_by_type = BIT(IIO_CHAN_INFO_OFFSET) |
>> + BIT(IIO_CHAN_INFO_SCALE) |
>> + BIT(IIO_CHAN_INFO_SAMP_FREQ) |
>> + BIT(IIO_CHAN_INFO_HYSTERESIS),
>> + }, {
>> + .type = IIO_ROT,
>> + .modified = 1,
>> + .channel2 = IIO_MOD_NORTH_TRUE_TILT_COMP,
>> + .info_mask_separate = BIT(IIO_CHAN_INFO_RAW),
>> + .info_mask_shared_by_type = BIT(IIO_CHAN_INFO_OFFSET) |
>> + BIT(IIO_CHAN_INFO_SCALE) |
>> + BIT(IIO_CHAN_INFO_SAMP_FREQ) |
>> + BIT(IIO_CHAN_INFO_HYSTERESIS),
>> + }, {
>> + .type = IIO_ROT,
>> + .modified = 1,
>> + .channel2 = IIO_MOD_NORTH_MAGN,
>> + .info_mask_separate = BIT(IIO_CHAN_INFO_RAW),
>> + .info_mask_shared_by_type = BIT(IIO_CHAN_INFO_OFFSET) |
>> + BIT(IIO_CHAN_INFO_SCALE) |
>> + BIT(IIO_CHAN_INFO_SAMP_FREQ) |
>> + BIT(IIO_CHAN_INFO_HYSTERESIS),
>> + }, {
>> + .type = IIO_ROT,
>> + .modified = 1,
>> + .channel2 = IIO_MOD_NORTH_TRUE,
>> + .info_mask_separate = BIT(IIO_CHAN_INFO_RAW),
>> + .info_mask_shared_by_type = BIT(IIO_CHAN_INFO_OFFSET) |
>> + BIT(IIO_CHAN_INFO_SCALE) |
>> + BIT(IIO_CHAN_INFO_SAMP_FREQ) |
>> + BIT(IIO_CHAN_INFO_HYSTERESIS),
>> }
>> };
>> @@ -245,6 +289,13 @@ static int magn_3d_capture_sample(struct hid_sensor_hub_device *hsdev,
>> offset = (usage_id - HID_USAGE_SENSOR_ORIENT_MAGN_FLUX_X_AXIS)
>> + CHANNEL_SCAN_INDEX_X;
>> break;
>> + case HID_USAGE_SENSOR_ORIENT_COMP_MAGN_NORTH:
>> + case HID_USAGE_SENSOR_ORIENT_COMP_TRUE_NORTH:
>> + case HID_USAGE_SENSOR_ORIENT_MAGN_NORTH:
>> + case HID_USAGE_SENSOR_ORIENT_TRUE_NORTH:
>> + offset = (usage_id - HID_USAGE_SENSOR_ORIENT_COMP_MAGN_NORTH)
>> + + CHANNEL_SCAN_INDEX_NORTH_MAGN_TILT_COMP;
>> + break;
>> default:
>> return -EINVAL;
>> }
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-iio" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html



\
 
 \ /
  Last update: 2014-07-20 15:21    [W:0.072 / U:0.588 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site