From patchwork Thu May 4 07:57:13 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Matti Vaittinen X-Patchwork-Id: 13230851 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 7B7F7C7EE21 for ; Thu, 4 May 2023 07:57:31 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229723AbjEDH5a (ORCPT ); Thu, 4 May 2023 03:57:30 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:40238 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229836AbjEDH52 (ORCPT ); Thu, 4 May 2023 03:57:28 -0400 Received: from mail-lj1-x235.google.com (mail-lj1-x235.google.com [IPv6:2a00:1450:4864:20::235]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id E6D4B3C28; Thu, 4 May 2023 00:57:26 -0700 (PDT) Received: by mail-lj1-x235.google.com with SMTP id 38308e7fff4ca-2ac80ed7f26so1129701fa.1; Thu, 04 May 2023 00:57:26 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1683187045; x=1685779045; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=o9ZN5Kt7PzcLmeQSM4/6ILQKH7duKu8J3KsFC8gjMWY=; b=JPYlVAlb7y9k2cIrdQjpuO+2COC4kNkXF6Hx1ptRVANh/ZvtZFxr23P/He+hDFSkiH SOGXfClMVcDWrriuiucKMoEzuLEnggFDg6bpr9kjXCQe/NCIQzT+H0I926Y/hmju98/I 49jqxUOZjL5qMKXPFLZcbNQ5Czo8JOCXTOnNKG7IMKcpQezGeFzhzCeu3FsetjNDGJl6 MWM6LU+8+Q52j+FjAqpwkCdipVCPayn0shXvUeD8qLS2RV0JIvgAYkF2gFd2cIHrKF0e /IyQ/QQnHn0d3cVtJwyGxT/KU+KVW3Gd3YzjBSMeeod+zLyIs2q81AlqZG86OqrigTGW mMgA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1683187045; x=1685779045; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=o9ZN5Kt7PzcLmeQSM4/6ILQKH7duKu8J3KsFC8gjMWY=; b=gZWqsAPnHRN5OntHaxoEcirI2NLRiRgSeeYnmIMmEgeoulzURXk84HS6Igc97tA6n+ 8wf69H+UhY9fhB0yWtu3t9h4cVek0iIF7BrB5yz5Ye4v6bMe/94EsOIEpREKKMruWwLP +U69/i1hHeXl50I/FpzJNdwv12QUIy14xWTAfaXWSeXvf/uQb0o7U7w2J0qniiXJqFpW xnucdLetHpmhfYSoao1jADnnmGs6xFe5nbXqVnqxfsKf0UwFpWf0e0LNx7MYiJIgKD10 e/VmvOnMoiY93Wpx42rkAQWT6ni68CKOEGwuSbG9P94NJAQCJVAZIHVRvLRnuTIoCm8O 5yYw== X-Gm-Message-State: AC+VfDygrPtSAf0GIbp6BT31sK+IqLgXQ++sKhhLZ5DmXYABys68PBd+ P7hXVqLt+KOwlpGTbtYlX3E= X-Google-Smtp-Source: ACHHUZ4Y+BZSjHFN5VwYPlnpB4sPH1TooqUzdhob7wA1xihalx4cRFlUUnZ/QCJykXjARr6+fJFnjg== X-Received: by 2002:a2e:7011:0:b0:2a8:c32d:1238 with SMTP id l17-20020a2e7011000000b002a8c32d1238mr699739ljc.15.1683187044986; Thu, 04 May 2023 00:57:24 -0700 (PDT) Received: from fedora (62-78-225-252.bb.dnainternet.fi. [62.78.225.252]) by smtp.gmail.com with ESMTPSA id u22-20020a2ea176000000b002ab1216de44sm5062166ljl.71.2023.05.04.00.57.24 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 04 May 2023 00:57:24 -0700 (PDT) Date: Thu, 4 May 2023 10:57:13 +0300 From: Matti Vaittinen To: Matti Vaittinen , Matti Vaittinen Cc: Matti Vaittinen , Jonathan Cameron , Lars-Peter Clausen , linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [RFC PATCH 1/3] iio: bu27034: Probe asynchronously Message-ID: References: MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: Precedence: bulk List-ID: X-Mailing-List: linux-iio@vger.kernel.org Devices which may take a while to initialize during probe and which have no strong reason to probe synchronously can request asynchronous probing as default probe strategy. This can speed-up start times on some platforms. The BU27034 gets probe delayed for at least two reasons. It enables the supply regulator, (which is likely to have ramp-up delay if it was disabled) and additionally it delays while the sensor itself is initializing. Changing to asynchronous probing may cause problems. Some of which are discussed in: https://lore.kernel.org/all/06db017f-e985-4434-8d1d-02ca2100cca0@sirena.org.uk/ Enabling async probing for the ROHM BU27034 should be fairly safe to try though as there is no in-tree users for it yet. If the async probing appears to be an issue we can switch easily back to synchronous (or better yet, fix the actual problem). Enable asynchronous probing for BU27034. Signed-off-by: Matti Vaittinen --- I am unsure if this change is 100% safe - but I don't immediately see the harm. Please let me know if some of you have more experience on problems when using asynchronous probing with IIO devices. --- drivers/iio/light/rohm-bu27034.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/iio/light/rohm-bu27034.c b/drivers/iio/light/rohm-bu27034.c index f85194fda6b0..183cf550af13 100644 --- a/drivers/iio/light/rohm-bu27034.c +++ b/drivers/iio/light/rohm-bu27034.c @@ -1500,6 +1500,7 @@ static struct i2c_driver bu27034_i2c_driver = { .driver = { .name = "bu27034-als", .of_match_table = bu27034_of_match, + .probe_type = PROBE_PREFER_ASYNCHRONOUS, }, .probe_new = bu27034_probe, }; From patchwork Thu May 4 07:58:04 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Matti Vaittinen X-Patchwork-Id: 13230852 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id BA012C77B78 for ; Thu, 4 May 2023 07:58:17 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229728AbjEDH6R (ORCPT ); Thu, 4 May 2023 03:58:17 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:41200 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229697AbjEDH6Q (ORCPT ); Thu, 4 May 2023 03:58:16 -0400 Received: from mail-lf1-x135.google.com (mail-lf1-x135.google.com [IPv6:2a00:1450:4864:20::135]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 3A1489D; Thu, 4 May 2023 00:58:15 -0700 (PDT) Received: by mail-lf1-x135.google.com with SMTP id 2adb3069b0e04-4f13ef4ad91so175615e87.3; Thu, 04 May 2023 00:58:15 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1683187093; x=1685779093; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=0vDKtd+6SUBHcVfjrnZzqsHHwPGA/V8JOv73WPDoiE4=; b=nA4WQdOOsCPmalSFyKz+KFUzbknl9LGS6Eh4MVg/QET5MVLdgvLYiE34BQo1CcK19P OcK6Wfh1f/nmblaxU4LPSuoFk9RUw23nzy+1ILpO5+LKHrlP2okBc0xICCIh1CEoEYFA FcAat/zU8DWZ9WAoLy/YKGthRyKKRVP4dH5+nQPrP04UqlF7AJ8320dDdWjkkDpqxpcZ oFRBrqkSx2getWbylqCy88Ql5nWeq3kO2ULE3tNZ5uhrDcRMmJoQrw5G0QAQ+VSDZMKJ ltF31ZOUe4HSXKi46ii8BppG8cxs+LVXTQ7aYA+8Fv0xmQim1p5mVcuoOf7bGnJBFsxR 5sVg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1683187093; x=1685779093; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=0vDKtd+6SUBHcVfjrnZzqsHHwPGA/V8JOv73WPDoiE4=; b=UZZgrOBNt86mgbZmLxWNOPa1C9woaZCICXosV1L9SUf+4x3yzwhu3nbyRuGtjWHQVL hxR9Kl90Pj+Y4/LYU8LYpOO3i1X8xX1D9eH93rYznRvsOuBEKYxubOgnSuXwJ9+tWvtS bJoIevnd04q/NrLF9KfoNd4t13NrKSt0OJRapqBnrgb/3wfL1Hng5bs6bxGcNHyEStAc 13wsmgv8e1hPO0CSMgDE0SSUSmiSfZXFEEYqtPGamrP9quqspA+Grt6BT8Tt1oeYuVAz mVH/sTLXgQk5gnyrUsDWpA6fRtFbac6lAk+pMmdIOGjxVzp1lkbIw9xhYKl01+7IVaed za6g== X-Gm-Message-State: AC+VfDwTVPada46oCQC6jfsYEFSAMY3S5KQzwri4SrezVmdpIRVANRYo ohYrYdBhh2UZmP5t+fE99yw= X-Google-Smtp-Source: ACHHUZ7gY/3ZiDJPcW+3n3j3tEcpRuOGxE+LoMhfUZ3u5a3xOaUJurgTz5pqCYWQNDsQQZTxvgFW7A== X-Received: by 2002:a05:6512:3906:b0:4eb:2d47:602 with SMTP id a6-20020a056512390600b004eb2d470602mr1383002lfu.59.1683187093308; Thu, 04 May 2023 00:58:13 -0700 (PDT) Received: from fedora (62-78-225-252.bb.dnainternet.fi. [62.78.225.252]) by smtp.gmail.com with ESMTPSA id s5-20020ac25fa5000000b004e83f386878sm6392874lfe.153.2023.05.04.00.58.12 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 04 May 2023 00:58:12 -0700 (PDT) Date: Thu, 4 May 2023 10:58:04 +0300 From: Matti Vaittinen To: Matti Vaittinen , Matti Vaittinen Cc: Matti Vaittinen , Jonathan Cameron , Lars-Peter Clausen , linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [RFC PATCH 2/3] iio: bu27008: Probe asynchronously Message-ID: <7cbc13bb62a0f6919366317991c5f451a0f8aa4e.1683185765.git.mazziesaccount@gmail.com> References: MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: Precedence: bulk List-ID: X-Mailing-List: linux-iio@vger.kernel.org Devices which may take a while to initialize during probe and which have no strong reason to probe synchronously can request asynchronous probing as default probe strategy. This can speed-up start times on some platforms. The BU27008 gets probe delayed for at least two reasons. It enables the supply regulator, (which is likely to have ramp-up delay if it was disabled) and additionally it delays while the sensor itself is initializing. Changing to asynchronous probing may cause problems. Some of which are discussed in: https://lore.kernel.org/all/06db017f-e985-4434-8d1d-02ca2100cca0@sirena.org.uk/ Enabling async probing for the ROHM BU27008 should be fairly safe to try though as there is no in-tree users for it yet. If the async probing appears to be an issue we can switch easily back to synchronous (or better yet, fix the actual problem). Enable asynchronous probing for BU27008. Signed-off-by: Matti Vaittinen --- I am unsure if this change is 100% safe - but I don't immediately see the harm. Please let me know if some of you have more experience on problems when using asynchronous probing with IIO devices. --- drivers/iio/light/rohm-bu27008.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/iio/light/rohm-bu27008.c b/drivers/iio/light/rohm-bu27008.c index c04d845062ba..628d17036bb4 100644 --- a/drivers/iio/light/rohm-bu27008.c +++ b/drivers/iio/light/rohm-bu27008.c @@ -982,6 +982,7 @@ static struct i2c_driver bu27008_i2c_driver = { .driver = { .name = "bu27008", .of_match_table = bu27008_of_match, + .probe_type = PROBE_PREFER_ASYNCHRONOUS, }, .probe_new = bu27008_probe, }; From patchwork Thu May 4 07:58:52 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Matti Vaittinen X-Patchwork-Id: 13230853 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id CDF65C7EE21 for ; Thu, 4 May 2023 07:59:09 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229853AbjEDH7I (ORCPT ); Thu, 4 May 2023 03:59:08 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:41698 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229643AbjEDH7H (ORCPT ); Thu, 4 May 2023 03:59:07 -0400 Received: from mail-lf1-x135.google.com (mail-lf1-x135.google.com [IPv6:2a00:1450:4864:20::135]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id E124C9D; Thu, 4 May 2023 00:59:04 -0700 (PDT) Received: by mail-lf1-x135.google.com with SMTP id 2adb3069b0e04-4ec8eca56cfso184240e87.0; Thu, 04 May 2023 00:59:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1683187143; x=1685779143; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=BIF36cvrfg5bPNVRii+KXkGpKFjEd7XgQtb3zlxbdA8=; b=hx0RcCUdcJj3keFiQ1VmBrnDvoeRvWwOQYzCEHTk6t/7pQ1PC6VitbsB+dNluLDljq UWKNKhlOYILAvzzAEbs5AHJnKxsDEY5nHgsQ9a8KSpXhwNv+Zwcmp/zxgc9wZZ2Vmcun UpLbjyJltCgInvRAl+OEltTGfasLlL93JugGSFOT3zivvBwjMBps9XzApFAnjQKmfSaB GS+Lj/WdM+Rh1NyJqXCQQLRXlfjukBwxNBFI1GYcsaNvadAr4DbpnfmMGXZcQ7slEvEi 3VnoySHwewC615upD1zc/sCWY11+UwPbOSFeeuGR14my5ZrqeTGV3UM5uPxkb2XHRyfm WIRg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1683187143; x=1685779143; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=BIF36cvrfg5bPNVRii+KXkGpKFjEd7XgQtb3zlxbdA8=; b=XDy/vc3XQdXM/ZCPm2p57tSsfLUMA0YKFiiycuVrqW9p5vw75nHMWpKHY3MPMlXeJA G32GOZMnBMQNPdL93i+eqlEtLzdkWccqCFZ4tbqElxBsbNG9OODFJIbJ1tZhnBsgNAbq AnXE73btmXzoq66RrpiiFVrKSflnC9uFoQFO99OZTBCByjSR5NEOnjGDqWuiiPb0LJvm Y9MUYK7tinLKAxWeuE1sEzQCLJmz4g0uLIuWqClD04DR4AOsj6Q5fXXoGwufYwvNX7S5 Pc229zFrmxspsE6FfCRTUlajphxP7auCd2PwQxHdQFkHmUlHSFSEz+JuWLFvcyP9NNSF dITQ== X-Gm-Message-State: AC+VfDwlFtHmbLAKP+gLHfrv8NzVl2LFZjnDRgMGGMIzqQ/S7XUJ2F4n iGwRkr1142v7+/5wl1drH04= X-Google-Smtp-Source: ACHHUZ7vHsckvIiX6G2UgzDWOaS6ak81jjWn6OJakr1hKU4XopSwB5c5fdUnN15BhMsd/9sPj0AQ9A== X-Received: by 2002:ac2:562f:0:b0:4f1:44c0:b08d with SMTP id b15-20020ac2562f000000b004f144c0b08dmr229457lff.29.1683187143097; Thu, 04 May 2023 00:59:03 -0700 (PDT) Received: from fedora (62-78-225-252.bb.dnainternet.fi. [62.78.225.252]) by smtp.gmail.com with ESMTPSA id y24-20020ac24478000000b004f11e965308sm2214506lfl.20.2023.05.04.00.59.02 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 04 May 2023 00:59:02 -0700 (PDT) Date: Thu, 4 May 2023 10:58:52 +0300 From: Matti Vaittinen To: Matti Vaittinen , Matti Vaittinen Cc: Matti Vaittinen , Jonathan Cameron , Lars-Peter Clausen , linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [RFC PATCH 3/3] iio: kx022a: Probe asynchronously Message-ID: <24cea76c282a28b7a4dba297ab627176f8097907.1683185765.git.mazziesaccount@gmail.com> References: MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: Precedence: bulk List-ID: X-Mailing-List: linux-iio@vger.kernel.org Devices which may take a while to initialize during probe and which have no strong reason to probe synchronously can request asynchronous probing as default probe strategy. This can speed-up start times on some platforms. The KX022A gets probe delayed for at least two reasons. It enables the supply regulator, (which is likely to have ramp-up delay if it was disabled) and additionally it delays while the sensor itself is initializing. Changing to asynchronous probing may cause problems. Some of which are discussed in: https://lore.kernel.org/all/06db017f-e985-4434-8d1d-02ca2100cca0@sirena.org.uk/ Enable asynchronous probing for KX022A. Signed-off-by: Matti Vaittinen --- I am unsure if this change is 100% safe - but I don't immediately see the harm. Please let me know if some of you have more experience on problems when using asynchronous probing with IIO devices. --- drivers/iio/accel/kionix-kx022a-i2c.c | 1 + drivers/iio/accel/kionix-kx022a-spi.c | 1 + 2 files changed, 2 insertions(+) diff --git a/drivers/iio/accel/kionix-kx022a-i2c.c b/drivers/iio/accel/kionix-kx022a-i2c.c index e6fd02d931b6..ee982206e5dd 100644 --- a/drivers/iio/accel/kionix-kx022a-i2c.c +++ b/drivers/iio/accel/kionix-kx022a-i2c.c @@ -40,6 +40,7 @@ static struct i2c_driver kx022a_i2c_driver = { .driver = { .name = "kx022a-i2c", .of_match_table = kx022a_of_match, + .probe_type = PROBE_PREFER_ASYNCHRONOUS, }, .probe_new = kx022a_i2c_probe, }; diff --git a/drivers/iio/accel/kionix-kx022a-spi.c b/drivers/iio/accel/kionix-kx022a-spi.c index 9cd047f7b346..f45a46899a5f 100644 --- a/drivers/iio/accel/kionix-kx022a-spi.c +++ b/drivers/iio/accel/kionix-kx022a-spi.c @@ -46,6 +46,7 @@ static struct spi_driver kx022a_spi_driver = { .driver = { .name = "kx022a-spi", .of_match_table = kx022a_of_match, + .probe_type = PROBE_PREFER_ASYNCHRONOUS, }, .probe = kx022a_spi_probe, .id_table = kx022a_id,