From patchwork Sat Jul 9 21:16:48 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andy Shevchenko X-Patchwork-Id: 12912319 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 DE112C43334 for ; Sat, 9 Jul 2022 21:16:55 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229555AbiGIVQx (ORCPT ); Sat, 9 Jul 2022 17:16:53 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:57826 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229513AbiGIVQv (ORCPT ); Sat, 9 Jul 2022 17:16:51 -0400 Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id A8ED2E0AB; Sat, 9 Jul 2022 14:16:50 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1657401410; x=1688937410; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=mcUr7Iz5FrBDHo5wxQ9FyfKWElcKrhXuqIyIE9pRGv4=; b=DjPAUafUvera2wo7zgKme5icpc07kp2uXq55ZuLZAG0VgLIblxweCOSK Elxb2fjHSMdiCOBpTPTXFul4mxFpDoBEuiV5n0UGnuCiNqYRZ7vg0ohcM Q6ASGGoajmfshIMjQ8MMcaBE3iQr3FfkOUjjroS0laUdVXtS2pSuhvB5V KzQRPJewBrnbcjuh4sU1XvSkxx3HShnQLzmq8k6jEdDg6Cudho9ViGNoK 1PC1d1P0kalClzrsPGnevOheyOTJauKXS5pr0N5OaW8CCdrYmLrPNPY4z z4dX0gCqC0+vSpjnLUgB2NXkwOtksT6yj/x16gc7+joeUwrEzWC9LEd7U A==; X-IronPort-AV: E=McAfee;i="6400,9594,10403"; a="264872816" X-IronPort-AV: E=Sophos;i="5.92,259,1650956400"; d="scan'208";a="264872816" Received: from orsmga007.jf.intel.com ([10.7.209.58]) by fmsmga107.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 Jul 2022 14:16:49 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.92,259,1650956400"; d="scan'208";a="591884918" Received: from black.fi.intel.com ([10.237.72.28]) by orsmga007.jf.intel.com with ESMTP; 09 Jul 2022 14:16:47 -0700 Received: by black.fi.intel.com (Postfix, from userid 1003) id B9A921A0; Sun, 10 Jul 2022 00:16:54 +0300 (EEST) From: Andy Shevchenko To: Hans de Goede , platform-driver-x86@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Mark Gross , Andy Shevchenko Subject: [PATCH v2 1/6] platform/x86: serial-multi-instantiate: Improve autodetection Date: Sun, 10 Jul 2022 00:16:48 +0300 Message-Id: <20220709211653.18938-1-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.35.1 MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: platform-driver-x86@vger.kernel.org Instead of calling specific resource counter, let just probe each of the type and see what it says. Return -ENOENT if no resources found. Signed-off-by: Andy Shevchenko --- v2: squashed patch 1, restored behaviour, added comment, dropped message (Hans) .../platform/x86/serial-multi-instantiate.c | 23 ++++++++++++------- 1 file changed, 15 insertions(+), 8 deletions(-) diff --git a/drivers/platform/x86/serial-multi-instantiate.c b/drivers/platform/x86/serial-multi-instantiate.c index 1e8063b7c169..366087a9fce2 100644 --- a/drivers/platform/x86/serial-multi-instantiate.c +++ b/drivers/platform/x86/serial-multi-instantiate.c @@ -100,7 +100,7 @@ static int smi_spi_probe(struct platform_device *pdev, struct acpi_device *adev, if (ret < 0) return ret; else if (!ret) - return -ENODEV; + return -ENOENT; count = ret; @@ -184,7 +184,7 @@ static int smi_i2c_probe(struct platform_device *pdev, struct acpi_device *adev, if (ret < 0) return ret; else if (!ret) - return -ENODEV; + return -ENOENT; count = ret; @@ -232,6 +232,7 @@ static int smi_probe(struct platform_device *pdev) const struct smi_node *node; struct acpi_device *adev; struct smi *smi; + int ret; adev = ACPI_COMPANION(dev); if (!adev) @@ -255,15 +256,21 @@ static int smi_probe(struct platform_device *pdev) case SMI_SPI: return smi_spi_probe(pdev, adev, smi, node->instances); case SMI_AUTO_DETECT: - if (i2c_acpi_client_count(adev) > 0) - return smi_i2c_probe(pdev, adev, smi, node->instances); - else - return smi_spi_probe(pdev, adev, smi, node->instances); + /* + * For backwards-compatibility with the existing nodes I2C + * is checked first and if such entries are found ONLY I2C + * devices are created. Since some existing nodes that were + * already handled by this driver could also contain unrelated + * SpiSerialBus nodes that were previously ignored, and this + * preserves that behavior. + */ + ret = smi_i2c_probe(pdev, adev, smi, node->instances); + if (ret != -ENOENT) + return ret; + return smi_spi_probe(pdev, adev, smi, node->instances); default: return -EINVAL; } - - return 0; /* never reached */ } static int smi_remove(struct platform_device *pdev) From patchwork Sat Jul 9 21:16:49 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andy Shevchenko X-Patchwork-Id: 12912316 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 7902FCCA485 for ; Sat, 9 Jul 2022 21:16:53 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229541AbiGIVQw (ORCPT ); Sat, 9 Jul 2022 17:16:52 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:57824 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229536AbiGIVQu (ORCPT ); Sat, 9 Jul 2022 17:16:50 -0400 Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 4C6AEE031; Sat, 9 Jul 2022 14:16:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1657401409; x=1688937409; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=y+ofhCbDZykQwVdyHdm3UxiLC+50EGf6D2NMkpPemDk=; b=Jm/CdRQdkNOvF1k1OdEMYFgp+cZIFKLCZiwU/yygHjCNvnN4O7rFkd31 rkup3x8bhgTWEwupm03GtAhcDgOLaDc6LTgAK1OJWm9VIIzIoAbhAtJ1f 5hCeM8pQoZoGgWEX2D3OWAX5bNYhP4JX+Mq2FMrad/R1oXlmcmS457V1P 2cbyERubnXptnUjoCySQCuuOuj5nQhdYuV2bnZO1WoYi9oxdg3NqRHEws A6Aum2RhDk6X2aDiWLWsHFlPAprIeYq/6aynlN0qXQjvKwAnW93CHqvMB uNxV/XFZsGARjfyZPv4cQ8esT0NKUqqdGSyLPpoI9zFuNHGRz3VNM3qXg w==; X-IronPort-AV: E=McAfee;i="6400,9594,10403"; a="310055314" X-IronPort-AV: E=Sophos;i="5.92,259,1650956400"; d="scan'208";a="310055314" Received: from fmsmga006.fm.intel.com ([10.253.24.20]) by fmsmga101.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 Jul 2022 14:16:48 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.92,259,1650956400"; d="scan'208";a="840620835" Received: from black.fi.intel.com ([10.237.72.28]) by fmsmga006.fm.intel.com with ESMTP; 09 Jul 2022 14:16:47 -0700 Received: by black.fi.intel.com (Postfix, from userid 1003) id C4727F1; Sun, 10 Jul 2022 00:16:54 +0300 (EEST) From: Andy Shevchenko To: Hans de Goede , platform-driver-x86@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Mark Gross , Andy Shevchenko Subject: [PATCH v2 2/6] platform/x86: serial-multi-instantiate: Drop duplicate check Date: Sun, 10 Jul 2022 00:16:49 +0300 Message-Id: <20220709211653.18938-2-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.35.1 In-Reply-To: <20220709211653.18938-1-andriy.shevchenko@linux.intel.com> References: <20220709211653.18938-1-andriy.shevchenko@linux.intel.com> MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: platform-driver-x86@vger.kernel.org The device_get_match_data() checks for firmware node to be present, there is no need to check for ACPI companion. Signed-off-by: Andy Shevchenko --- v2: rebased on changed previous patch(es) .../platform/x86/serial-multi-instantiate.c | 21 +++++++------------ 1 file changed, 8 insertions(+), 13 deletions(-) diff --git a/drivers/platform/x86/serial-multi-instantiate.c b/drivers/platform/x86/serial-multi-instantiate.c index 366087a9fce2..a1e04be858c5 100644 --- a/drivers/platform/x86/serial-multi-instantiate.c +++ b/drivers/platform/x86/serial-multi-instantiate.c @@ -81,16 +81,16 @@ static void smi_devs_unregister(struct smi *smi) /** * smi_spi_probe - Instantiate multiple SPI devices from inst array * @pdev: Platform device - * @adev: ACPI device * @smi: Internal struct for Serial multi instantiate driver * @inst_array: Array of instances to probe * * Returns the number of SPI devices instantiate, Zero if none is found or a negative error code. */ -static int smi_spi_probe(struct platform_device *pdev, struct acpi_device *adev, struct smi *smi, +static int smi_spi_probe(struct platform_device *pdev, struct smi *smi, const struct smi_instance *inst_array) { struct device *dev = &pdev->dev; + struct acpi_device *adev = ACPI_COMPANION(dev); struct spi_controller *ctlr; struct spi_device *spi_dev; char name[50]; @@ -166,17 +166,17 @@ static int smi_spi_probe(struct platform_device *pdev, struct acpi_device *adev, /** * smi_i2c_probe - Instantiate multiple I2C devices from inst array * @pdev: Platform device - * @adev: ACPI device * @smi: Internal struct for Serial multi instantiate driver * @inst_array: Array of instances to probe * * Returns the number of I2C devices instantiate, Zero if none is found or a negative error code. */ -static int smi_i2c_probe(struct platform_device *pdev, struct acpi_device *adev, struct smi *smi, +static int smi_i2c_probe(struct platform_device *pdev, struct smi *smi, const struct smi_instance *inst_array) { struct i2c_board_info board_info = {}; struct device *dev = &pdev->dev; + struct acpi_device *adev = ACPI_COMPANION(dev); char name[32]; int i, ret, count; @@ -230,14 +230,9 @@ static int smi_probe(struct platform_device *pdev) { struct device *dev = &pdev->dev; const struct smi_node *node; - struct acpi_device *adev; struct smi *smi; int ret; - adev = ACPI_COMPANION(dev); - if (!adev) - return -ENODEV; - node = device_get_match_data(dev); if (!node) { dev_dbg(dev, "Error ACPI match data is missing\n"); @@ -252,9 +247,9 @@ static int smi_probe(struct platform_device *pdev) switch (node->bus_type) { case SMI_I2C: - return smi_i2c_probe(pdev, adev, smi, node->instances); + return smi_i2c_probe(pdev, smi, node->instances); case SMI_SPI: - return smi_spi_probe(pdev, adev, smi, node->instances); + return smi_spi_probe(pdev, smi, node->instances); case SMI_AUTO_DETECT: /* * For backwards-compatibility with the existing nodes I2C @@ -264,10 +259,10 @@ static int smi_probe(struct platform_device *pdev) * SpiSerialBus nodes that were previously ignored, and this * preserves that behavior. */ - ret = smi_i2c_probe(pdev, adev, smi, node->instances); + ret = smi_i2c_probe(pdev, smi, node->instances); if (ret != -ENOENT) return ret; - return smi_spi_probe(pdev, adev, smi, node->instances); + return smi_spi_probe(pdev, smi, node->instances); default: return -EINVAL; } From patchwork Sat Jul 9 21:16:50 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andy Shevchenko X-Patchwork-Id: 12912317 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 CCC32C433EF for ; Sat, 9 Jul 2022 21:16:55 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229545AbiGIVQx (ORCPT ); Sat, 9 Jul 2022 17:16:53 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:57826 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229530AbiGIVQu (ORCPT ); Sat, 9 Jul 2022 17:16:50 -0400 Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 6B79AEE00; Sat, 9 Jul 2022 14:16:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1657401409; x=1688937409; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=ODL0ihpJOJMeR1VFcTWoFyzMX5xrZaVdhQBAJthOmEw=; b=NDZsVC747Ujmj0Me2Kh105mz7ammD+Dn6SGS6FOaSrFYcuFl+z1jBjHw 17o6kY4LBce3HbqRpU/ADz10W1P0Fv7xIvMowTbXmwL8lowaiqCa0JADA oHiOD44s4pQ7FfXH2NyxkcCJPfqwSx4UTGMsd7NTkELBwH3ATiEypKlvh 7OF3EPKVUn69fd2lVnCHl7uyO6j4sgsNEtulmly010/4KiBQ8ApUNVKt5 U97aln54nOB0l/sKqGbfpUwiXtdwULLR6RqnVaLNBq8X0TxiL1v+vPYFm 7CsT+W1n2KZy4uZX6FSV85oN1MCG1EMHvGpXpqiMu3Tk1OWxbym9WZ8Y2 Q==; X-IronPort-AV: E=McAfee;i="6400,9594,10403"; a="348445247" X-IronPort-AV: E=Sophos;i="5.92,259,1650956400"; d="scan'208";a="348445247" Received: from orsmga008.jf.intel.com ([10.7.209.65]) by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 Jul 2022 14:16:49 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.92,259,1650956400"; d="scan'208";a="621623591" Received: from black.fi.intel.com ([10.237.72.28]) by orsmga008.jf.intel.com with ESMTP; 09 Jul 2022 14:16:47 -0700 Received: by black.fi.intel.com (Postfix, from userid 1003) id C759E400; Sun, 10 Jul 2022 00:16:54 +0300 (EEST) From: Andy Shevchenko To: Hans de Goede , platform-driver-x86@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Mark Gross , Andy Shevchenko Subject: [PATCH v2 3/6] platform/x86: serial-multi-instantiate: Improve dev_err_probe() messaging Date: Sun, 10 Jul 2022 00:16:50 +0300 Message-Id: <20220709211653.18938-3-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.35.1 In-Reply-To: <20220709211653.18938-1-andriy.shevchenko@linux.intel.com> References: <20220709211653.18938-1-andriy.shevchenko@linux.intel.com> MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: platform-driver-x86@vger.kernel.org Drop duplicate print of returned value in the messages and use pattern return dev_err_probe(...) where it's possible. Signed-off-by: Andy Shevchenko Reviewed-by: Hans de Goede --- v2: added tag (Hans) drivers/platform/x86/serial-multi-instantiate.c | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/drivers/platform/x86/serial-multi-instantiate.c b/drivers/platform/x86/serial-multi-instantiate.c index a1e04be858c5..970ede0ff002 100644 --- a/drivers/platform/x86/serial-multi-instantiate.c +++ b/drivers/platform/x86/serial-multi-instantiate.c @@ -61,10 +61,9 @@ static int smi_get_irq(struct platform_device *pdev, struct acpi_device *adev, default: return 0; } - if (ret < 0) - dev_err_probe(&pdev->dev, ret, "Error requesting irq at index %d: %d\n", - inst->irq_idx, ret); + return dev_err_probe(&pdev->dev, ret, "Error requesting irq at index %d\n", + inst->irq_idx); return ret; } @@ -112,9 +111,8 @@ static int smi_spi_probe(struct platform_device *pdev, struct smi *smi, spi_dev = acpi_spi_device_alloc(NULL, adev, i); if (IS_ERR(spi_dev)) { - ret = PTR_ERR(spi_dev); - dev_err_probe(dev, ret, "failed to allocate SPI device %s from ACPI: %d\n", - dev_name(&adev->dev), ret); + ret = dev_err_probe(dev, PTR_ERR(spi_dev), "failed to allocate SPI device %s from ACPI\n", + dev_name(&adev->dev)); goto error; } @@ -135,9 +133,8 @@ static int smi_spi_probe(struct platform_device *pdev, struct smi *smi, ret = spi_add_device(spi_dev); if (ret) { - dev_err_probe(&ctlr->dev, ret, - "failed to add SPI device %s from ACPI: %d\n", - dev_name(&adev->dev), ret); + dev_err_probe(&ctlr->dev, ret, "failed to add SPI device %s from ACPI\n", + dev_name(&adev->dev)); spi_dev_put(spi_dev); goto error; } From patchwork Sat Jul 9 21:16:51 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andy Shevchenko X-Patchwork-Id: 12912315 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 F07DACCA47C for ; Sat, 9 Jul 2022 21:16:52 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229518AbiGIVQw (ORCPT ); Sat, 9 Jul 2022 17:16:52 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:57828 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229534AbiGIVQu (ORCPT ); Sat, 9 Jul 2022 17:16:50 -0400 Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 96012193FA; Sat, 9 Jul 2022 14:16:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1657401409; x=1688937409; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=Z/0lEMWIV0iL01NyKqCruERgYiLsTG+vyknWoi7Sfd4=; b=QAdZycM+c6GkAiCHSWo2oqTkUvqar0WG9snOb8SLcRYy1ViwGwAbRJ56 AyJgAkzPRbXxG3A3e7Q6LBR7iBEd3ahTGMEjn896kmhyncAAcI/xhkFoW vrPikEZ6EWCvVWD8OBDDe+01SJZB40vm4u4+Su+muMqe4A75+cm91Dht4 Ko9W0kJbPrXeqWKk4vwk8bpKQLevPve6XCZqs4mMEVs7+eMAvs2yhYMvc hpa6di8ccn7pXXQ/elA065CitpGit6jcOZjfZ7Ogs6neTIfsE+/ATWnp0 rzqlHEzKf2Fe7S3F56mSjw26cpun27f8xc2rGJBrtQyMiUEJdXDkFWr6K A==; X-IronPort-AV: E=McAfee;i="6400,9594,10403"; a="264872817" X-IronPort-AV: E=Sophos;i="5.92,259,1650956400"; d="scan'208";a="264872817" Received: from orsmga002.jf.intel.com ([10.7.209.21]) by fmsmga107.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 Jul 2022 14:16:49 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.92,259,1650956400"; d="scan'208";a="594463351" Received: from black.fi.intel.com ([10.237.72.28]) by orsmga002.jf.intel.com with ESMTP; 09 Jul 2022 14:16:47 -0700 Received: by black.fi.intel.com (Postfix, from userid 1003) id D04E95AD; Sun, 10 Jul 2022 00:16:54 +0300 (EEST) From: Andy Shevchenko To: Hans de Goede , platform-driver-x86@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Mark Gross , Andy Shevchenko Subject: [PATCH v2 4/6] platform/x86: serial-multi-instantiate: Use while (i--) pattern to clean up Date: Sun, 10 Jul 2022 00:16:51 +0300 Message-Id: <20220709211653.18938-4-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.35.1 In-Reply-To: <20220709211653.18938-1-andriy.shevchenko@linux.intel.com> References: <20220709211653.18938-1-andriy.shevchenko@linux.intel.com> MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: platform-driver-x86@vger.kernel.org Use more natural while (i--) patter to clean up allocated resources. Signed-off-by: Andy Shevchenko Reviewed-by: Hans de Goede --- v2: added tag (Hans) drivers/platform/x86/serial-multi-instantiate.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/drivers/platform/x86/serial-multi-instantiate.c b/drivers/platform/x86/serial-multi-instantiate.c index 970ede0ff002..0a2335693f4f 100644 --- a/drivers/platform/x86/serial-multi-instantiate.c +++ b/drivers/platform/x86/serial-multi-instantiate.c @@ -70,11 +70,11 @@ static int smi_get_irq(struct platform_device *pdev, struct acpi_device *adev, static void smi_devs_unregister(struct smi *smi) { - while (smi->i2c_num > 0) - i2c_unregister_device(smi->i2c_devs[--smi->i2c_num]); + while (smi->i2c_num--) + i2c_unregister_device(smi->i2c_devs[smi->i2c_num]); - while (smi->spi_num > 0) - spi_unregister_device(smi->spi_devs[--smi->spi_num]); + while (smi->spi_num--) + spi_unregister_device(smi->spi_devs[smi->spi_num]); } /** From patchwork Sat Jul 9 21:16:52 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andy Shevchenko X-Patchwork-Id: 12912318 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 21746CCA482 for ; Sat, 9 Jul 2022 21:16:56 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229564AbiGIVQy (ORCPT ); Sat, 9 Jul 2022 17:16:54 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:57828 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229491AbiGIVQv (ORCPT ); Sat, 9 Jul 2022 17:16:51 -0400 Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id D3950E03C; Sat, 9 Jul 2022 14:16:50 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1657401410; x=1688937410; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=NJDMm0L4h/dOQ6h5gnqt5/SsVOUXEVrkRUats68PgGs=; b=Yh5dsTUffq2fvCaqJq1CbO1+ZpIav6NJN/4bzIhOFqwyZn+lEEli9jwF cISCmWk9Pe9dtUAoPN6ZnlZksVjvyUFCfMLRd3DLJormkC2XJkaGhO70D VJzpBIU4Rdlb1PsQe7UflZ25qD4nyopjVbt/tQaC5Kt0MZ9Cnpcm31zQM nVhQo+6Wwt9GDNH3Mx8NMnV5f/4gpCrZIZZ45sfSpWIIBUwrDzyen4P7m nNIsISZwASkAoz5Ww8qaFKnla7MaD2gGyg7iUhQBh/WFkWBmloziozClR ItiEcIlMBsaMM/8hgGU8e33yRcxTvxDxQY0+XTQxM4t2PyKPLwlYgmg1E Q==; X-IronPort-AV: E=McAfee;i="6400,9594,10403"; a="264872815" X-IronPort-AV: E=Sophos;i="5.92,259,1650956400"; d="scan'208";a="264872815" Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by fmsmga107.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 Jul 2022 14:16:49 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.92,259,1650956400"; d="scan'208";a="683991134" Received: from black.fi.intel.com ([10.237.72.28]) by FMSMGA003.fm.intel.com with ESMTP; 09 Jul 2022 14:16:47 -0700 Received: by black.fi.intel.com (Postfix, from userid 1003) id DB7B65CC; Sun, 10 Jul 2022 00:16:54 +0300 (EEST) From: Andy Shevchenko To: Hans de Goede , platform-driver-x86@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Mark Gross , Andy Shevchenko Subject: [PATCH v2 5/6] platform/x86: serial-multi-instantiate: Get rid of redundant 'else' Date: Sun, 10 Jul 2022 00:16:52 +0300 Message-Id: <20220709211653.18938-5-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.35.1 In-Reply-To: <20220709211653.18938-1-andriy.shevchenko@linux.intel.com> References: <20220709211653.18938-1-andriy.shevchenko@linux.intel.com> MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: platform-driver-x86@vger.kernel.org In the snippets like the following if (...) return / goto / break / continue ...; else ... the 'else' is redundant. Get rid of it. Signed-off-by: Andy Shevchenko Reviewed-by: Hans de Goede --- v2: added tag (Hans) drivers/platform/x86/serial-multi-instantiate.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/platform/x86/serial-multi-instantiate.c b/drivers/platform/x86/serial-multi-instantiate.c index 0a2335693f4f..24f915bbdec1 100644 --- a/drivers/platform/x86/serial-multi-instantiate.c +++ b/drivers/platform/x86/serial-multi-instantiate.c @@ -98,7 +98,7 @@ static int smi_spi_probe(struct platform_device *pdev, struct smi *smi, ret = acpi_spi_count_resources(adev); if (ret < 0) return ret; - else if (!ret) + if (!ret) return -ENOENT; count = ret; @@ -180,7 +180,7 @@ static int smi_i2c_probe(struct platform_device *pdev, struct smi *smi, ret = i2c_acpi_client_count(adev); if (ret < 0) return ret; - else if (!ret) + if (!ret) return -ENOENT; count = ret; From patchwork Sat Jul 9 21:16:53 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andy Shevchenko X-Patchwork-Id: 12912320 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 0BE60CCA480 for ; Sat, 9 Jul 2022 21:16:57 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229573AbiGIVQz (ORCPT ); Sat, 9 Jul 2022 17:16:55 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:57888 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229538AbiGIVQw (ORCPT ); Sat, 9 Jul 2022 17:16:52 -0400 Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id A35B5EE00; Sat, 9 Jul 2022 14:16:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1657401411; x=1688937411; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=pNbMH3+R3AuT6h4yg6R/1iGHeyPPnIt46pxqiB/zgeQ=; b=Sg9nOTvJb3EBbPUlwgXPkEmDeCpb5yUvY8P6PzURwQwg0inpO8GBy9rj o5EnkQKLfrrZj7Rfdj5fVAIO2SFltcl4/U1McXnMhqjhTrWEUR77BRxGo ZtYtBqyK7jUOWGdgHhJq4y2+ThxCIRXT9E8J8AnQpVvQVBlKqsf5TG7ES fPjrz39XwtuQFSbbK4Y+LOz8D2WfvVjiIAZcV3M64U8PFHnU4H/qxlKLO CXPkcP2npSXPd7i/fwBNrLp2rEhiXWhlbwjJbgo+zP1sXMV7+wN5mUBRO Pu4GjuzscfOFkYkRuBVsPaBQwuXdA6qzoFgf22kQYNXhCUMB1OswiI2Rf w==; X-IronPort-AV: E=McAfee;i="6400,9594,10403"; a="264872821" X-IronPort-AV: E=Sophos;i="5.92,259,1650956400"; d="scan'208";a="264872821" Received: from orsmga007.jf.intel.com ([10.7.209.58]) by fmsmga107.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 Jul 2022 14:16:51 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.92,259,1650956400"; d="scan'208";a="591884919" Received: from black.fi.intel.com ([10.237.72.28]) by orsmga007.jf.intel.com with ESMTP; 09 Jul 2022 14:16:49 -0700 Received: by black.fi.intel.com (Postfix, from userid 1003) id E1B8B739; Sun, 10 Jul 2022 00:16:54 +0300 (EEST) From: Andy Shevchenko To: Hans de Goede , platform-driver-x86@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Mark Gross , Andy Shevchenko Subject: [PATCH v2 6/6] platform/x86: serial-multi-instantiate: Sort ACPI IDs by HID Date: Sun, 10 Jul 2022 00:16:53 +0300 Message-Id: <20220709211653.18938-6-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.35.1 In-Reply-To: <20220709211653.18938-1-andriy.shevchenko@linux.intel.com> References: <20220709211653.18938-1-andriy.shevchenko@linux.intel.com> MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: platform-driver-x86@vger.kernel.org It's easier to maintain the sorted table. Keep the sorting order in sync with one in drivers/acpi/scan.c. Signed-off-by: Andy Shevchenko Reviewed-by: Hans de Goede --- v2: added tag (Hans) drivers/platform/x86/serial-multi-instantiate.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/platform/x86/serial-multi-instantiate.c b/drivers/platform/x86/serial-multi-instantiate.c index 24f915bbdec1..67feed25c9db 100644 --- a/drivers/platform/x86/serial-multi-instantiate.c +++ b/drivers/platform/x86/serial-multi-instantiate.c @@ -324,8 +324,8 @@ static const struct smi_node cs35l41_hda = { static const struct acpi_device_id smi_acpi_ids[] = { { "BSG1160", (unsigned long)&bsg1160_data }, { "BSG2150", (unsigned long)&bsg2150_data }, - { "INT3515", (unsigned long)&int3515_data }, { "CSC3551", (unsigned long)&cs35l41_hda }, + { "INT3515", (unsigned long)&int3515_data }, /* Non-conforming _HID for Cirrus Logic already released */ { "CLSA0100", (unsigned long)&cs35l41_hda }, { }