Received: by 2002:a05:6a10:f347:0:0:0:0 with SMTP id d7csp3113738pxu; Mon, 14 Dec 2020 21:47:29 -0800 (PST) X-Google-Smtp-Source: ABdhPJx5vq8/b4NPhntoJawXK8fnrtB03bBfmg8vPqign3YRo2Is5q7khN4puhR7Mf4RstruGiG7 X-Received: by 2002:a17:907:429d:: with SMTP id ny21mr2839254ejb.290.1608011249389; Mon, 14 Dec 2020 21:47:29 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1608011249; cv=none; d=google.com; s=arc-20160816; b=jFHwgfY+Dyx8c6EGvK2cHN/fhr2PMt5LvwbcVw5Q3/+6rfSEKmKjw03xRfHiL/ZZiU vQ+Z0oNuaEw3HEK/dkUD7g+YkKzHqj1ezhwH5z3udmcdcSAyQMRzXBCuDIQPDcTjqe+i zSjkSPG3rVy55f4OyfW/dGb2IbCNn0S6Xz+8Dn+aaKQr/iU7Wss2b7Iwq0amt1xM6Xm7 QgrjK434A4C7G9GTJY1b01R038MDpTD9nUcC+yVuPJM9C9MjrSiUlZW1/dSKGL079sj6 ewjyImGm2sjt3XFHZM2cBtv+fSB2R0+GBMPaw2PnedDBUOWbzJlhHlAJwR0sypdO12Jz mmvA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:message-id:date:subject:cc:to:from:ironport-sdr :ironport-sdr; bh=TUj1SOboTUA678j0PvLPWYbt3Om+4yPfWh4hZGqo0Zw=; b=s1o51Wer0WV2K0sEww2hv0qughnwGb2OLrFIeia3iNAZjUxIiPcquEG93ivGdGoyPF WMfZr0nXl3M6YZjnVjn7Z24GcGFDSpvaQ1KyRk1OIiJycxaO5gmPfVu11VLepCbajkF4 ZElEY6Q0DsUgNRYkv5Bgk7U1OIOp4cDXlRc/LpbSR4gVe1Cx5QER4sXCf8aZb88nM0cY d5oLtC8V7r0Ttv0YMrazQ5WykVi0zmgsPnqRGWLnkIpHfrt+AYbuRpbRmlu6DwmxK4gn Kho8B0JHZwTIPBf9ZXVS2ajENomDLbikVwQhFmP/3n0fD6eAiRzSZt0GuF+bvckdblLu 4Ffw== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id a10si315158edq.184.2020.12.14.21.47.04; Mon, 14 Dec 2020 21:47:29 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726176AbgLOFok (ORCPT + 99 others); Tue, 15 Dec 2020 00:44:40 -0500 Received: from mga18.intel.com ([134.134.136.126]:57001 "EHLO mga18.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726154AbgLOFoX (ORCPT ); Tue, 15 Dec 2020 00:44:23 -0500 IronPort-SDR: VvwCcBJN0DSjAsgS2uKt6hEj0y9opGndLzo2y4Xf4QK/k976IkPxJUvKN4uYHC1rXLmeAfjTEB KeW2CelJyfGw== X-IronPort-AV: E=McAfee;i="6000,8403,9835"; a="162576864" X-IronPort-AV: E=Sophos;i="5.78,420,1599548400"; d="scan'208";a="162576864" Received: from orsmga002.jf.intel.com ([10.7.209.21]) by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 14 Dec 2020 21:43:37 -0800 IronPort-SDR: jIxZw/brTBRn9cR8X64lGTxIUlvmorASMbO8/fL0W6mSp1oUVD/e/OvIfx4xlmliwANWDZxAsP Bawv0iPbUQ3Q== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.78,420,1599548400"; d="scan'208";a="351719719" Received: from host.sh.intel.com ([10.239.154.115]) by orsmga002.jf.intel.com with ESMTP; 14 Dec 2020 21:43:36 -0800 From: Ye Xiang To: jikos@kernel.org, jic23@kernel.org, srinivas.pandruvada@linux.intel.com Cc: linux-input@vger.kernel.org, linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org, Ye Xiang Subject: [PATCH v4 0/3] add custom hinge sensor support Date: Tue, 15 Dec 2020 13:44:41 +0800 Message-Id: <20201215054444.9324-1-xiang.ye@intel.com> X-Mailer: git-send-email 2.17.1 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Here we register one iio device with three channels which present angle for hinge, keyboard and screen. This driver works on devices with Intel integrated sensor hub, where hinge sensor is presented using a custom sensor usage id. Here the angle is presented in degrees, which is converted to radians. Changes since v3: - hid-sensor-custom: remove sensor_inst::custom_pdev_exposed. - hid-sensor-custom: use static buf, w_buf to avoid using goto in get_known_custom_sensor_index. - hid-sensor-custom-intel-hinge: use devm_ prefix function instead. - sysfs-bus-iio: put in_anglY_raw together with in_angl_raw. Changes since v2: - use 1 iio device instead of 3 for hinge sensor. - use indexed channel instead of modified channel and added channel labels. - remove 2,3 patch in last version, add a document patch to describe the hinge channels. - hid-sensor-custom: use meaningful return value in get_known_custom_sensor_index and checked in call side. - hid-sensor-ids.h: use HID_USAGE_SENSOR_DATA_FIELD_CUSTOM_VALUE(x) to define custom sensor value. Changes since v1: - fixed errors reported by lkp Ye Xiang (3): HID: hid-sensor-custom: Add custom sensor iio support iio: hid-sensors: Add hinge sensor driver iio:Documentation: Add documentation for hinge sensor channels Documentation/ABI/testing/sysfs-bus-iio | 11 + drivers/hid/hid-sensor-custom.c | 143 +++++++ .../hid-sensors/hid-sensor-attributes.c | 2 + drivers/iio/position/Kconfig | 16 + drivers/iio/position/Makefile | 1 + .../position/hid-sensor-custom-intel-hinge.c | 391 ++++++++++++++++++ include/linux/hid-sensor-ids.h | 14 + 7 files changed, 578 insertions(+) create mode 100644 drivers/iio/position/hid-sensor-custom-intel-hinge.c -- 2.17.1