Received: by 10.192.165.156 with SMTP id m28csp1536167imm; Tue, 17 Apr 2018 00:34:59 -0700 (PDT) X-Google-Smtp-Source: AIpwx49wd0faKs0Dmmq0zjS27ADRD/1cYKBBS04hYYRAtQoHLzV6xkKa8ccqhpV8XhZ++iz0deCl X-Received: by 2002:a17:902:b7c7:: with SMTP id v7-v6mr1087558plz.190.1523950499421; Tue, 17 Apr 2018 00:34:59 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1523950499; cv=none; d=google.com; s=arc-20160816; b=HIHyosnHbwg0vlWZXc8YsYXXchnuJRjQGqmaMMWAWq50UREcgLvZHJSJPOGZZrJy1A tFq9Zh2wUIroh/1wNkHrPxHKFDSqJ/BUNzWpyLVBOscn7tuk7cDwozwQ5e/hiDN3ZcDA +LzaE8J6QLcJUjMOAvViXbFAsvll2nZ8oTngPXAu2h3ZIl/JGiQakNNWl8aAscatyz8c PIgaVq1oX1jxjZuROGxW7dtXi4T99RdBH06mpc331F2+p6efLQfbIAkW9t23n/0wAhWN yG/EJfLzTdjC1yVLZwckkC2Ycy1C4jfIZuwFyXIiLpRzdvkubu+r6IX9y6iVSahV4CV0 5DgA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding :content-language:in-reply-to:mime-version:user-agent:date :message-id:from:references:cc:to:subject:arc-authentication-results; bh=QSFje9j98eKYh0dtpGu6DsaGrgI7phkGcSBoMF/6Q/Q=; b=HsxMueHc7i+qzDPaP+jLFbc38yWC7NAaACUixKVyWu33y/ArIb1u1sPHhDBvEZU2X7 3WpDjn1PjYjyPDVW0tM9+fU7FMvhucZRwn7XkFMxyKycvENa7gdc3sqiBxXS2Y7I62AR oD86Xx97dQ3B5rNKe6crHEfXQap/KiXqZCuI5Qpb+lj6aGeKT821YOLrWr8sLro9p1Ak sPB76JhINYzHnCmBHJj2BxFRFFgXqcnMxNy2KD8FiFaq5vHPHFh8/ILzOqMnR+f1IDsW bPkEKsBordY1dzbTdgcIgWRM/edgo1qjY3JsDyv3H5lRpQ8cy7PPTvqDs+kyYZ1Qu9oL PkKA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id l1si244501pgl.485.2018.04.17.00.34.45; Tue, 17 Apr 2018 00:34:59 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752259AbeDQHdY (ORCPT + 99 others); Tue, 17 Apr 2018 03:33:24 -0400 Received: from esa2.microchip.iphmx.com ([68.232.149.84]:20637 "EHLO esa2.microchip.iphmx.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751085AbeDQHdW (ORCPT ); Tue, 17 Apr 2018 03:33:22 -0400 X-IronPort-AV: E=Sophos;i="5.48,462,1517900400"; d="scan'208";a="13208851" Received: from smtpout.microchip.com (HELO email.microchip.com) ([198.175.253.82]) by esa2.microchip.iphmx.com with ESMTP/TLS/DHE-RSA-AES256-SHA; 17 Apr 2018 00:33:21 -0700 Received: from [10.145.6.126] (10.10.76.4) by chn-sv-exch04.mchp-main.com (10.10.76.105) with Microsoft SMTP Server id 14.3.352.0; Tue, 17 Apr 2018 00:33:20 -0700 Subject: Re: [PATCH v3 03/11] iio: Add channel for Position Relative To: Jonathan Cameron CC: , , , , , , , , , References: <1523350677-27106-1-git-send-email-eugen.hristev@microchip.com> <1523350677-27106-4-git-send-email-eugen.hristev@microchip.com> <20180415202942.5c7d50a8@archlinux> From: Eugen Hristev Message-ID: <02533699-a2bc-7c0c-4d8a-c10bb0102667@microchip.com> Date: Tue, 17 Apr 2018 10:30:46 +0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.7.0 MIME-Version: 1.0 In-Reply-To: <20180415202942.5c7d50a8@archlinux> Content-Type: text/plain; charset="utf-8"; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 15.04.2018 22:29, Jonathan Cameron wrote: > On Tue, 10 Apr 2018 11:57:49 +0300 > Eugen Hristev wrote: > >> Add new channel type for relative position on a pad. >> >> These type of analog sensor offers the position of a pen >> on a touchpad, and is represented as a voltage, which can be >> converted to a position on X and Y axis on the pad. >> The channel will hand the relative position on the pad in both directions. >> >> The channel can then be consumed by a touchscreen driver or >> read as-is for a raw indication of the touchpen on a touchpad. >> >> Signed-off-by: Eugen Hristev >> --- >> Changes in v2: >> - modified channel name to relative position as suggested. >> - modified kernel version to 4.18 (presumable) >> >> Documentation/ABI/testing/sysfs-bus-iio | 12 ++++++++++++ >> drivers/iio/industrialio-core.c | 1 + >> include/uapi/linux/iio/types.h | 1 + >> tools/iio/iio_event_monitor.c | 2 ++ >> 4 files changed, 16 insertions(+) >> >> diff --git a/Documentation/ABI/testing/sysfs-bus-iio b/Documentation/ABI/testing/sysfs-bus-iio >> index 6a5f34b..42a9287 100644 >> --- a/Documentation/ABI/testing/sysfs-bus-iio >> +++ b/Documentation/ABI/testing/sysfs-bus-iio >> @@ -190,6 +190,18 @@ Description: >> but should match other such assignments on device). >> Units after application of scale and offset are m/s^2. >> >> +What: /sys/bus/iio/devices/iio:deviceX/in_positionrelative_x_raw >> +What: /sys/bus/iio/devices/iio:deviceX/in_positionrelative_y_raw >> +KernelVersion: 4.18 >> +Contact: linux-iio@vger.kernel.org >> +Description: >> + Relative position in direction x or y on a pad (may be >> + arbitrarily assigned but should match other such assignments on >> + device). >> + Units after application of scale and offset are milli percents >> + from the pad's size in both directions. Should be calibrated by >> + the consumer. > I know the milli percent comes form the humidity equivalent, but I wonder > if we are right to follow that. 10^-5 is a pretty random base unit (though > I got argued into it being a standard choice for humidity sensors IIRC... > > What do people think? We could go with 1 for full range or just percent perhaps? > > I'm not that fussed about staying consistent with humidity - we are unlikely > to end up with sensors doing both anytime soon so there shouldn't be > any confusion... > > Jonathan Hello Jonathan, For my specific use case, percents are not enough, as this would mean the resolution will be pretty low. If we have a touchpanel of a higher resolution, having the position only ranged 0 to 100 is pretty bad. Having millipercents means we can have a resolution up to 100,000 points in range, which is fine for the hardware as of this moment. Of course, specific drivers reporting these channels can define a specific range if they desire (report just in the first percent if you wish (0-1000) or so, which would mean a lower resolution. Centi-percent would work fine as well I believe (0-10,000 range), but to keep consistent with your suggestion regarding relative humidity, I picked this larger scale. In my specific case, since we have a 12 bit ADC, range is 0-4096 for this value. Calibrating these values to the actual size of the touchpanel is left for the consumer to do (map 4096x4096 to the actual resolution) If you have a better idea than milli-percents I can change it, no problem. Eugen >> + >> [...]