From patchwork Tue Nov 28 10:59:22 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Crt Mori X-Patchwork-Id: 17202 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:ce62:0:b0:403:3b70:6f57 with SMTP id o2csp3829623vqx; Tue, 28 Nov 2023 03:02:53 -0800 (PST) X-Google-Smtp-Source: AGHT+IEG2ZU4eR3yTrNQrR3SMgWPtkxYHkmp1QWnBV67Foju9fZzEYTvsUNA+N+wWlU8Xsm47gxL X-Received: by 2002:a05:6a00:1483:b0:6cb:82bb:5238 with SMTP id v3-20020a056a00148300b006cb82bb5238mr14976204pfu.30.1701169373372; Tue, 28 Nov 2023 03:02:53 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1701169373; cv=none; d=google.com; s=arc-20160816; b=uXM76ue9lFGaQ2Cl3eGxuhQ9VJ+bG45yorCcYAsLaPl8LZDxDB5bchG9VgWuNAAsZA G0CYlFbom1mXgNONK268X2n+r/V5qOw0z7z0x28f+B5rs1Un9uXiW1TKXQ4zkDPLnWc9 OxvtUV5Deaz1CbxYzPAHKJrvpxtm2IcHPdYG5P+tM2GBWpdAhMZqdAGb2okMSpzSsSsp Rys42UQy2hEq3n2C/v+QvlsgtffzQPxj1WRmvDtRMqr8EIM2EFcSdLhLrpaKZVn3K2IL t0rq6nwXtVlMOtsdR49O2DG0L/qiWqE6b8y2fWSOTw2Bs1Feiw3uMHy6SPXA/q5jucwn axMw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:dkim-signature; bh=tlZ7iRVbsbRidcAsAmtD7uKZxC1LTM8QUx5hPAqk8yg=; fh=VKrI1LQoqKs2umEdi9mwIRoBE06qus7J0GOOTxe+uJk=; b=tWB8qZJZ0Pb2CWSTcnNvug54F0k9rOCACqPinA02YVZ6Xxq02VQuZhWlgA0d6Lynlc +DdZltp/w0yq44v90d+6WO2zdqJjt1crb0BzUOkValcmNhGbE2mnff/V6kOQ33f0+54w MfiG2KPwe2TO0+hZO5NxQkEMSAr6V/BHJz5Utx4uCzM3/yAIgRoPZoWLaol8h2un4WEP m2BMub43pMP+pDIude6SoayQDw3xKq7+A0hVSnybtXW8TerXEFEgl5Fjlgq0GR2b/P6G ZdiUySpH3xDvhA07PQn9leekdsBko+SoNAiuq0NAor26dQ9gtVZ78dkLbljp4InG8vkD SB1w== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@melexis.com header.s=google header.b=W2Trhb0J; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:3 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=melexis.com Received: from lipwig.vger.email (lipwig.vger.email. [2620:137:e000::3:3]) by mx.google.com with ESMTPS id e29-20020a631e1d000000b0059f0cebd046si11670932pge.729.2023.11.28.03.02.52 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 28 Nov 2023 03:02:53 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:3 as permitted sender) client-ip=2620:137:e000::3:3; Authentication-Results: mx.google.com; dkim=pass header.i=@melexis.com header.s=google header.b=W2Trhb0J; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:3 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=melexis.com Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by lipwig.vger.email (Postfix) with ESMTP id C6293808D23C; Tue, 28 Nov 2023 03:02:17 -0800 (PST) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.11 at lipwig.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1344416AbjK1LCI (ORCPT + 99 others); Tue, 28 Nov 2023 06:02:08 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:41866 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1343979AbjK1LCH (ORCPT ); Tue, 28 Nov 2023 06:02:07 -0500 Received: from mail-ej1-x62b.google.com (mail-ej1-x62b.google.com [IPv6:2a00:1450:4864:20::62b]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 9FF33D6 for ; Tue, 28 Nov 2023 03:02:12 -0800 (PST) Received: by mail-ej1-x62b.google.com with SMTP id a640c23a62f3a-a0b65cbf096so402135966b.1 for ; Tue, 28 Nov 2023 03:02:12 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=melexis.com; s=google; t=1701169331; x=1701774131; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=tlZ7iRVbsbRidcAsAmtD7uKZxC1LTM8QUx5hPAqk8yg=; b=W2Trhb0JSVRC4Id5dnhE6AaKDRq/+PwC2mTMKfTcKwLmc8/W99ODvGQ4A+JrHZwZxs LSx/d+M/mjiM/QSwDQCeFYOywRW5ODXqeWAXzEqYFhp6iuzas5lUUCzZYM6eIJIb0Uoh 2ssG1fib4MVVtq7S6eXqW1u9IQgLykrMw7LrxreACwxIKT46zdaIeawdqsUajkEPobwB nxq0QSAjef1FONMUKZJecjnXNvCs7kGGgzCmEPVQg69QYmBJFHKz+xg9XStKCGOjnUeG OXBRtjyz08Z8rJUxwKl/NQj7kHJyLXnxMRjIJKRQQstkR+sZSzEsrKFQdomwJmm6wXlt xd2A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1701169331; x=1701774131; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=tlZ7iRVbsbRidcAsAmtD7uKZxC1LTM8QUx5hPAqk8yg=; b=NNv83wunK8RgHWWB5a2jxBGuABletT3L8WwmQcqbbGPm/kmnrL/QSfv+KMtFrwLx20 hdK4fl5wCjcY0Qkq2DI6wLSfSHHWyooSuY9D9ESCwJo/ZWo5YlAzFuZWgOIIMA0AiO8k 8x+TXpah48saWh42aZHKz9KY7ZgXcloleP1AvbsfiIwweSuGsYnMTosl0/QM6GQnRfOn /k+ZuSfQA/6NVc7r9FS9ZhtedWwtrWosDxorTbhBoEFLwlLqbLinUWlXBEsPz6RWAaZ3 RoDcJTQ3hZC4L8nkIfmoYL6+XXD5s09E90+FTAgC2RTzGDq4uQ8Ij5AEMZ/7t1A+0EIo 9sRA== X-Gm-Message-State: AOJu0YzXF8rR+gisZss2hZYs2zmsj4J88USWS5O2rAoAIhTYhaW1jXmx L/gfUQ1Opf0h3rd2eknoJ1Lo4g== X-Received: by 2002:a17:906:209e:b0:a0a:f9af:c159 with SMTP id 30-20020a170906209e00b00a0af9afc159mr8796679ejq.25.1701169331054; Tue, 28 Nov 2023 03:02:11 -0800 (PST) Received: from localhost.localdomain (d54C3956F.access.telenet.be. [84.195.149.111]) by smtp.gmail.com with ESMTPSA id h25-20020a170906111900b00a0435148ed7sm6784897eja.17.2023.11.28.03.02.10 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 28 Nov 2023 03:02:10 -0800 (PST) From: Crt Mori To: Jonathan Cameron Cc: Lars-Peter Clausen , Andrew Hepp , linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org, Crt Mori Subject: [PATCH v2 0/2] iio: temperature: mlx90635 Driver for MLX90635 IR temperature sensor Date: Tue, 28 Nov 2023 11:59:22 +0100 Message-Id: X-Mailer: git-send-email 2.40.1 MIME-Version: 1.0 X-Spam-Status: No, score=-0.9 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lipwig.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (lipwig.vger.email [0.0.0.0]); Tue, 28 Nov 2023 03:02:18 -0800 (PST) X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1783805377141141210 X-GMAIL-MSGID: 1783805377141141210 Hi everybody, There is a new contactless sensor in Melexis portfolio. MLX90635 is just 1.8x1.8mm in size, but with factory calibration offers instant usage in every project. It offers wide refresh rate range that is configurable between 100ms and 4s. Driver currently provides temperature calculations, power management and changes to the refresh rate. Since sensor is aimed towards the consumer market there is really low number of EEPROM write cycles available, so driver changes refresh rate only in run time registers to avoid writing to EEPROM. Reading EEPROM is not available in Sleep Step mode, so I am using caching at the driver initialization to ensure that measurements can still be taken in Sleep Step mode. Changes v1 -> v2: - dt-bindings are now enum according to the comments from Krzysztof Kozlowski - expand the path recipient list for the patches using get_maintainers.pl - driver cache and probe (and some style) adjusted according to comments from Jonathan Cameron - improve DSP version detection (make it clearer) Crt Mori (2): iio: temperature: mlx90635 MLX90635 IR Temperature sensor dt-bindings: iio: temperature: add MLX90635 device .../iio/temperature/melexis,mlx90632.yaml | 19 +- MAINTAINERS | 7 + drivers/iio/temperature/Kconfig | 12 + drivers/iio/temperature/Makefile | 1 + drivers/iio/temperature/mlx90635.c | 1071 +++++++++++++++++ 5 files changed, 1108 insertions(+), 2 deletions(-) create mode 100644 drivers/iio/temperature/mlx90635.c