From patchwork Fri Aug 16 02:06:32 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jacobe Zang X-Patchwork-Id: 820157 Received: from APC01-PSA-obe.outbound.protection.outlook.com (mail-psaapc01on2123.outbound.protection.outlook.com [40.107.255.123]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 4DC6857CA7; Fri, 16 Aug 2024 02:06:53 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.255.123 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1723774017; cv=fail; b=KGqxEWfvIgAr6tZnvcPFH5vYpybUrncH3FvrS+3T32pXZBPcTUjXthH8Xn01dsEuSZ3gbA6cBMpRPDAjnejkc5nW0c4RrMDHgYAIBQIijUwZ1U/2ZJYFJ7ZqKpSCoiaRwCCxhF4Xf7+0RKUYXFdRkOJIIh8GGEWFKzrM0VLukYg= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1723774017; c=relaxed/simple; bh=2VnM3Xke/V+FBPoCBZ6dXFpkeLfGCL5kEesF20cliAc=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=fL+0YI7vG6eMK1u8d9WuI7uLopjye22mHvUB876csx27HG0XAIhJpGNdDPGTrja/VT8ULOoINLd3E4IXXJ2J4agBKd1nO2jqaDlUiPk9c3ywSCn+OZ5XMIlivRKdppuUGw6hOHI9xNMtb9OJGJrPlBj5cvi6eLx5W/Nz+s+MBPk= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=wesion.com; spf=pass smtp.mailfrom=wesion.com; arc=fail smtp.client-ip=40.107.255.123 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=wesion.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=wesion.com ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=DSkOHUiloqkShABu8iCn/ex5WpoRtNtWgJQfNR8y9JPf+a6je7lFaXYPo4anBz1nzl/bJ707jXGA7iM8+DZAPRAXuL3lavTfu7bqsiJo6LoVwb4f3kl73OA9ZjQVOGUkzCsjCqMdsOEjOILv5M+zv5B5EewrbTnA3Ma+eaKlgaNfKIZ15o6uaiMRQn+etTqDDxrATxbNcMfSECl1ITRhYvF+ruOSgyKHoIi64QyNI6EEeCs6taIVQEiXg9YLOUcO5ejqNglynn1WJGjYV3LR6JihyM00pUmTwROxL3jgvQn5uibxPL3x5ko1FTD0FO70qf34vgOOL+aFZeVPZD+Jzg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=n3ZCKui3FOaZbR8MmUilWzOmfwqy4Ji7tdvVIJh0aaI=; b=nmMsNScGIv7/dtBvlly5dVmIRyJu6EWKwggmyTzZzvS6LjJgM9cTj6bW/jXbQ0mP/w1zsnKZPMhEOMMAkUdoAByT3aPcYo73996dotJ8DWLaQdupvHt8eSlOxNCJaH08tfHyq2Krr6GJG9y2u8MDJ6lkxJHTmQLRNSIwsoREqycjC3ZcTyF2TQyOmm2HyuAUXitHze+Hgqqyeq1gqLNTQO8KfP5UMOh6pubZb/LyWX1HgjFs7eDwDbDeiosyLoHDfCVL8/n70O5yv2iQjNlGCnRg/KCHc7MWxk8mBg2fTefTk6Fy9XXZLmt4A1ujMahRgY6Hh3Re/sje098Xu2hUpA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=wesion.com; dmarc=pass action=none header.from=wesion.com; dkim=pass header.d=wesion.com; arc=none Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=wesion.com; Received: from TYZPR03MB7001.apcprd03.prod.outlook.com (2603:1096:400:26a::14) by KL1PR03MB8239.apcprd03.prod.outlook.com (2603:1096:820:114::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7875.18; Fri, 16 Aug 2024 02:06:50 +0000 Received: from TYZPR03MB7001.apcprd03.prod.outlook.com ([fe80::78dd:5e68:1a9c:36c0]) by TYZPR03MB7001.apcprd03.prod.outlook.com ([fe80::78dd:5e68:1a9c:36c0%4]) with mapi id 15.20.7875.016; Fri, 16 Aug 2024 02:06:49 +0000 From: Jacobe Zang To: arend.vanspriel@broadcom.com, kvalo@kernel.org Cc: davem@davemloft.net, edumazet@google.com, kuba@kernel.org, pabeni@redhat.com, robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org, saikrishnag@marvell.com, megi@xff.cz, bhelgaas@google.com, duoming@zju.edu.cn, minipli@grsecurity.net, yajun.deng@linux.dev, stern@rowland.harvard.edu, gregkh@linuxfoundation.org, christophe.jaillet@wanadoo.fr, linux-wireless@vger.kernel.org, netdev@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, brcm80211@lists.linux.dev, brcm80211-dev-list.pdl@broadcom.com, Jacobe Zang , Krzysztof Kozlowski Subject: [PATCH v11 1/4] dt-bindings: net: wireless: brcm4329-fmac: add pci14e4,449d Date: Fri, 16 Aug 2024 10:06:32 +0800 Message-Id: <20240816020635.1273911-2-jacobe.zang@wesion.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20240816020635.1273911-1-jacobe.zang@wesion.com> References: <20240816020635.1273911-1-jacobe.zang@wesion.com> X-ClientProxiedBy: SI2PR02CA0050.apcprd02.prod.outlook.com (2603:1096:4:196::11) To TYZPR03MB7001.apcprd03.prod.outlook.com (2603:1096:400:26a::14) Precedence: bulk X-Mailing-List: linux-wireless@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: TYZPR03MB7001:EE_|KL1PR03MB8239:EE_ X-MS-Office365-Filtering-Correlation-Id: 3a25da71-fb1e-4142-8416-08dcbd9816cd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|366016|7416014|376014|52116014|1800799024|38350700014; X-Microsoft-Antispam-Message-Info: HECzgaT8whrsrya7bZvXGFIINPXyLtEW3IsX6d6KEChBF0r/N9yEiOuj9ZqbjAXziJy0Vo8YWnTBHXP4HWMYW+f+LChg7U5JfS2qR151RhXeHYFWjrOq9Svkbjp9d5GGzrhIeRKH2KwKI/h4tgRUyY3xobjN9PdGo/DfcRV50yQe4oQTnU6P9OIZSQFjCWmWQ2wKuwr7HZdXy0frc0jJxTK0Ca6J7ecaVTxPT61dfNUMi0L8n3oYh4Neo8hilUQ/mhpwor3bd9IWKgaRWIKSibO9ZoBqQ1r5Sx2aAJZkITE+MaWUIozYrGxj5RZuepNQcsfk/HtujZtcTfyHIgIQlAmQMmcI4/aWCjOuE0uL7V2vCyZB47B4hyqaNYEkAcxwaJIf9Jry/veKTkJ6Hnv2aXXutlaV1qwRGn6vO3f2OtD3GifdCqydM4ZyyuwYjBfZ7CfhI3JDSy+CU+KroPvCGmwriFZxP89L9T8SauDeQn+X1KR69EwQwRLd+p89i5zPmNG7x33kr0Hng6w4x6fTp/mnG1CskvjdcJmzAs5ox6tZQNFmr3nzMf1oarPSadB6CTtKLqJjZthAm9HOQGGXIajZRbETvfILEmMyzhotQd5NuPQaOt/DpIGib9OSPAuWVbEQgl/Qhgkr9L2q7gnzzr+MXSumYLtqEAifzRfrzDqGs/3w41nJ+TZxfp85biEU1pQWG6R5/w55uwO8bate/0QsxiDVMNh22xaVJeB0JdEiDxruDu4JzbeZ7QQ4w1Oa2YUhWLrUT6ZMavT4n2df7gYeyIDETVqOrk+q0GMnHDRmEFLvrk52JujPtaOTWOBRBqp/g/lE7UWE9Q1IVV/Isr88OcRqZhu75RWPDe+MlXaqCj7FjHC0KKTLl/l2jLdPhvwfqK7CitQ80FJy14t2GZEsOoCcCac07OLaw2Exis059rXJYlOfGDAlIkLOkCwwwE9B1+KhRQrSAEmgP10DVPSXuD/jV4EpxI8TEXogMFoB1MKWnT/OphLY85yDzYOvLfDeCtvHWU1p37a5IHIm7+lxg5ag2Xpj3mTSNNZkCGG84YOjpt3KOQAZumV2BuuHup3jmfB4jEtInB8tKYH+JEQREEgTK9PKwIwPLOR1mBo1Ckb/zdOCcu+lVC0P8/0X2Qwne9uYlk1M4I8e9LQzq0ae9Q3lFCQ0lShU7IxtlJcb9YU5Q2mfTS7tfgyoAV+Oe7jJJSl1ECkKC893t00h3hk0br5ZiUZf46oJ3c/euuQvfga9IiLWbKna8F+0g2lmqZO6Cw6+19kqh+a2WZy6Ip7VlBRbuBt89oZBvTr69hSb3yKStC38b0Ijuw4Z1qgJ3LFKmOzch9S5z3LlKEI08k57dUBsV/7r0KVaEfBefTZ0iat+D9ezQ1UmGZ7nch7tRG9QLBBXiQFPG/Vq/Ir/oQ== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:TYZPR03MB7001.apcprd03.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(366016)(7416014)(376014)(52116014)(1800799024)(38350700014); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: q1HhcEKIh8YBQMldJ1+iDRSR904n9b36KXDPQmBkv2EUUTcoPhxr05u5Gzy3672TiZJ+4ig2RNjHJlZ0LUUKG9bqYfkEJKmXybbwSJ5jV8wKBzaEJgcIG1/Nn2gR4wmzMCdNNw7b05gcdW8H3/U3DkAV+8p4aRtKgzNM69dOQ51MfDGRR0k5k9LkhMIoLs9WnzAodWOP65gmkF6HYOJaGTyxgpEz9EzSKH/zTDGR4a6i45Fg23AE01J5rH2Zo3MxuJcbyYcZmebiDLm5zX9eTupjEYdtbVzpKn1SmEiSpAHA4YddcgoOieRj7RVH975KzYdvcOdZxM1aUZTVaCbBrVdT8oLsE4k0AZgx8BdWa9zD9wYQtI2BiuQOlCol0y3WaI2WgDR5QYF0vv56Em5LUmxeRBf22zYqHVQ5kriojPknoK+ksCwaw4TQW0f4EndJJx+Y7JzRiAsRkks6U+KDkS5v6tWOyfR1jCXlvhCE0SFmVly73dfwn9VQHHmJhFkw2CaB3zN03J77s7sgeTjOdPrLF1NsT8iCj2yfYAYaTLIuPR2Qc6S10j3mTeKkpFlWr2cl43dtfQJ70WpSQqHkww2ZavGm+Y/HY927+aW1MMV9y1vpVOIXJxsv1L6c4Oi8jIOIWVJxcwXGBDAWLyWO561XIvcPIIVYZgrUy9OkZx4u9YH1X3GzG8cXCOcDRTp4qGobbgHVigtRyosNCu6hinyyASrfb3M4R2kuIu5rQHod+2qxxp5rGup+awSjGiCioqjpl0c2/gMUYN/znh2JIRiHmsrcR0DX5CwUhhrqEa9NB6q7TOOuF7rdQzQqLt1ZQQ2go0JBB8zkfQIEuQQMNYn7pnQOf0G124+Cr7muipYDF8IKsy26no5n4JG7S9Wb7VDS5DNpSnE4XBcCb8v2THOXZrkw76kgfLQq5iC1eZn7UfvgF4e/fZS5PBLNRm0eGqmRuwXhnrC/RL5NuCSVdh7h9JiGd0N8DLes1P+6RXDNaC0T1NSTStxs7olm0F6hM1xE76YMbHq4YxHhfpjKUwJcAZ6kEvAWOswSzHAKLXUaM6G/VAf4Dt6DMFmWw3KjE6hmpvkNt950fJzowqmd9n2cjKyNFzvUm9bHt31GKdijpQZGsc1ZDAeb41kKOhIBYwIsbkIddZ8fEXvt5/5mtyTGCvlbXK8CKZnfgmAnIkl+bAEc5qKgOqmTQ+i2Bf19d6/wFTCqYfPBtyuYLZOSijrRcJ7hGTXygjrlVwB9hg39rm0H3g91anWhCbz8RX5JZr5exT1kEDlm1lDrjfkM/J/ObSD94B/XgR4XNPpgzHUESbOGFegdYm6LRklUNhlPrKmG8RsCOFOlQPXU2rSdsEtjiqTPGtrbpNvxx8C8SZzIMO3m4nWAMTOhudSI1o72ST25yqRfeaX8XhZy+ZLctCAV5xaMD8eGeM8InwJWQEwrU9x9yDAqplZ3sFhgB1GMNOeU9DWEarNysiVDET6MZGBxzUIrm/XZLz2WzPciXoBse2+Q4o+/vpXF/NrwHj1M5tz1xpjo9Nxw7BQcOxNVq5YiXAuKbLWePKby+iwmpj/f1KteuFFDgPRNEYDR8r125Ljrz6WVAqY7KiofVbTmig== X-OriginatorOrg: wesion.com X-MS-Exchange-CrossTenant-Network-Message-Id: 3a25da71-fb1e-4142-8416-08dcbd9816cd X-MS-Exchange-CrossTenant-AuthSource: TYZPR03MB7001.apcprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Aug 2024 02:06:49.7529 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 2dc3bd76-7ac2-4780-a5b7-6c6cc6b5af9b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: ejFoM+imkaJRBecknFEQhvydkA0svAfwl7v1l1AJrDwOunectCYFXSIt5E6/YrcvenPun2T1UAPux39zM/GJfA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: KL1PR03MB8239 It's the device id used by AP6275P which is the Wi-Fi module used by Rockchip's RK3588 evaluation board and also used in some other RK3588 boards. Acked-by: Arend van Spriel Acked-by: Krzysztof Kozlowski Signed-off-by: Jacobe Zang --- .../devicetree/bindings/net/wireless/brcm,bcm4329-fmac.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/Documentation/devicetree/bindings/net/wireless/brcm,bcm4329-fmac.yaml b/Documentation/devicetree/bindings/net/wireless/brcm,bcm4329-fmac.yaml index e564f20d8f415..2c2093c77ec9a 100644 --- a/Documentation/devicetree/bindings/net/wireless/brcm,bcm4329-fmac.yaml +++ b/Documentation/devicetree/bindings/net/wireless/brcm,bcm4329-fmac.yaml @@ -53,6 +53,7 @@ properties: - pci14e4,4488 # BCM4377 - pci14e4,4425 # BCM4378 - pci14e4,4433 # BCM4387 + - pci14e4,449d # BCM43752 reg: description: SDIO function number for the device (for most cases From patchwork Fri Aug 16 02:06:33 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jacobe Zang X-Patchwork-Id: 820079 Received: from APC01-SG2-obe.outbound.protection.outlook.com (mail-sgaapc01on2108.outbound.protection.outlook.com [40.107.215.108]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 263316F076; Fri, 16 Aug 2024 02:06:55 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.215.108 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1723774017; cv=fail; b=dF7WIOCPzktzvkqjU89eNVYlJf5pLhdG9WGH1+TLlIZ4yAgsGDJtmMjmV5Q75364NEQjV/5NSO/Wmvv2hQWaEUfwWYi38QXn5OnvCg34zyWlmDOW51KhaiV1hSDHfw1HyCviDVjYirU5gBqpcgx4rJU6qZc+EIrrMWz7RiXouuo= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1723774017; c=relaxed/simple; bh=uyVPq0vuS+FMU0odfnlfw0F2eZnLPgwjnpAdPSqAp68=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=WeK3imb8jPyH7k24Uu0HQWKHO6DO+qH9cJGlsS8Z9qgmtxjmIsv6zfI9Upb0NNyUwJn/mFikVUFmS+1IRaVdqHxaPtilRgvJuKXdMWebvHLrrIz5EF/K3rGWEVLffPQhJmlbHgGE565suB2JBC5KdNlvTFJFHx/v+vIPnGkleHY= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=wesion.com; spf=pass smtp.mailfrom=wesion.com; arc=fail smtp.client-ip=40.107.215.108 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=wesion.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=wesion.com ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=vn3Smv2hncmlzyvKY90vWZoUcrx1ucsTppUpii0p/9v7JC9FBNOjzs43DHrUoldAGtTzoEYvvHHJeCkeJhu3J1t91eHRPReOqH+tXmcLev3NXnKYCR914Q1H9MAGfO5+qDU5OwPt+u+ZbiDg1xq36DKN/NdZVpSbC5zFwB8LpwUd2kUncslQ6qEbxDQd6/96gK/R9diiOcEVz/cG9ZbSGHiZuWQRihVDNUvN0Gfk37qogbno2efgexJHAWKcmgscjdpgDBxYcmVw774sJxNwF43y0U4zrZWO/SPBEHcjmWdbgvXYzdB+WXX+2B3YUWUfmAzpmZDO3FfrwrpDWMP3+A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=1iPX8WFIoQ4QXgUD/qR3fD/Finzms7t/FKq4XAi292c=; b=qjjeKEw+iXH5xwnioOCVYNqR9XTupaOvq4CaepXCcTMpUloyFnNJ3aFXOrEVsbJEjoELZocWhdWscBvhfFej5nXSYfxOnAyF6jTPm/Yyxq8R4a5uocVxmF1BEyY8PjBY7sZR8HVQyj5Z/U5dT3x/nE85fqFBiE538DHPVU4vl60jzngUi+bkZoopYL/HJ+a11WxnPQ7vxZ/pQ1B8shul4K4T+icr/AbUmpiZURuFINXEophxI4/4oxcFbzf1VhH7yZ0jl+bA38zO/AFPDSMCFAMY+OKhrNSbsaVVv7e4RqZBJRQvYhb1cU1AnLzWLzjP8Nv4Bavc5N/qEpAb+GCfSw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=wesion.com; dmarc=pass action=none header.from=wesion.com; dkim=pass header.d=wesion.com; arc=none Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=wesion.com; Received: from TYZPR03MB7001.apcprd03.prod.outlook.com (2603:1096:400:26a::14) by SEZPR03MB7444.apcprd03.prod.outlook.com (2603:1096:101:129::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7875.19; Fri, 16 Aug 2024 02:06:53 +0000 Received: from TYZPR03MB7001.apcprd03.prod.outlook.com ([fe80::78dd:5e68:1a9c:36c0]) by TYZPR03MB7001.apcprd03.prod.outlook.com ([fe80::78dd:5e68:1a9c:36c0%4]) with mapi id 15.20.7875.016; Fri, 16 Aug 2024 02:06:53 +0000 From: Jacobe Zang To: arend.vanspriel@broadcom.com, kvalo@kernel.org Cc: davem@davemloft.net, edumazet@google.com, kuba@kernel.org, pabeni@redhat.com, robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org, saikrishnag@marvell.com, megi@xff.cz, bhelgaas@google.com, duoming@zju.edu.cn, minipli@grsecurity.net, yajun.deng@linux.dev, stern@rowland.harvard.edu, gregkh@linuxfoundation.org, christophe.jaillet@wanadoo.fr, linux-wireless@vger.kernel.org, netdev@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, brcm80211@lists.linux.dev, brcm80211-dev-list.pdl@broadcom.com, Jacobe Zang , Krzysztof Kozlowski Subject: [PATCH v11 2/4] dt-bindings: net: wireless: brcm4329-fmac: add clock description for AP6275P Date: Fri, 16 Aug 2024 10:06:33 +0800 Message-Id: <20240816020635.1273911-3-jacobe.zang@wesion.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20240816020635.1273911-1-jacobe.zang@wesion.com> References: <20240816020635.1273911-1-jacobe.zang@wesion.com> X-ClientProxiedBy: SI2PR02CA0050.apcprd02.prod.outlook.com (2603:1096:4:196::11) To TYZPR03MB7001.apcprd03.prod.outlook.com (2603:1096:400:26a::14) Precedence: bulk X-Mailing-List: linux-wireless@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: TYZPR03MB7001:EE_|SEZPR03MB7444:EE_ X-MS-Office365-Filtering-Correlation-Id: efab0547-a903-4002-d70f-08dcbd981920 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|366016|7416014|52116014|1800799024|376014|38350700014; X-Microsoft-Antispam-Message-Info: uOgfq27T2ui2pI6cayt+DkM/CCghdaA1x3cqZEB6cl5PGg0WFhaAG//vefppSX3fEek0O0bZdILcXYpiQlHJeADkvW7uoDHWUsZEnWo6dbZaIY8jnvrYV7CLN6mcrdudnsh1iLqIdxTRflwHNeZaWVIHCxxdOSzXRTGg7uJ7SWM+ZxjxdcY26ok1AIxBxdXXkgZ6CjAgYhqMenqoF5NoeHAI5EIse2sGrTkjLUAijXvVFnSigUKJhYQtEc6kLDFaxAwTmk7acKdtwElyApVU7ow0SKl7yNexxOSs2M4xYnOBDkFMrWY42z+KP1HETYKZWK2pPZcXeoHOwcXLneFXcGyiTK0cAkzr5xZ2OU4ad0jmZl04pHqMGA+72hxl33SlfndolzwLJ61raRkcOJurprkbWkEmnD6eloZvW2yb/bnLHNlUV7nsTsUVBtnAutV6RalJ2oJWVAvT04zxOGOcRXA7Bt1ftn0eU5GY4kYGukeHqO8a9i5cG2VtuhKo8ayqSopnT0PgoHaipQiM/RQRAubVCpOfxA6VW8XIOffxOdWWWOckpu3YDI90AJWr2H6w2V0A1E4WH+sjl3tFL1PbMqItpsaRjE1k8uC+muI+gZqDZtpGW2uck3PKXU7f3QAf3xfejnuVyOXSsyZ16U6GwRTMjKyqcFlN5zANKgBnXmWPLFBMAGBdbq6KhkxzM9b9AreC+AWOgJmtHIM0TQ9c2BBuLIGkBK1wBgtdEEclRapxeEnZAyknzHZA/Q2bjF75yn88TYYVb+E15nGcbDGaVnwuRmZdFpbdBq8ef9msLaYE4J8tMEhuttnXYcP0uyLttH7jijGlrT51XA5tMptEMSUuM6qRU7vq7+jlPusuKYf2AhmyS8MbeMBwYhvVEZPzzgQgNLfRMz9D2lH6qpyhKzJiWUpNtLnoXCzUC6ok/0IBwsWyd0fOL5D36Pa59T33C94xAvkW+jSUYDZsFfG0kCn2fZGopcc7RUj9FJiXYhLBKxjGHARAAm2NTPtvlsS+dy3Q1J4Cps8n9Es/GW0SWbX1JEeRz/EQPw1WuBmvCDgWCfLj4dn7js7JamMBFRVQQOQ4qOy/lFWIznfwoeRt3qmLflQ9/Go6sexXEFFIqW8RNB1+Hz4G/R/KxFwSbi+40NLXf/clpSGbJ+bHDMR+mC1SW94iQ/qkEOOBp31E2GOt8nL3V0MxW30nXWVAvxkfwKJkKU8mL1xI1NUCdLCurSzc7T9JcfGS7hlySHHPkyLNRqBODx79A5njDgNkHvSMynmgFwCKXVSM1WM97OISfuwc3FTWsNeNBl7yngSGoXr/NHDLrVHsNsWiTLHs6oOEbPMqYGrecA/trcr1URK3lZz5IbBHurhZZ4aRdAJF97cl6zMmBkeuNaeBMG5odGNL9QeS4KB2f/8IWTzvsnAwmw== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:TYZPR03MB7001.apcprd03.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(366016)(7416014)(52116014)(1800799024)(376014)(38350700014); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: xa7m9eK0r2sJOBFZTdOfpNgktLgA+k4qi8X2W9bXACiGER005LdPA7RPC8GMt5fGh2wQCd/u8vJgp/wQ9kMnU4HT6XzKcDt+V2q8I7fCoCzsRdhs9+FFMokG6fQ3zc4R4lk4CH1Ms6uVr3pHL/xmNMyFrCMmWcsPJTfhuP+CgDygZ8KjLeel6tCHXpfubU9+PGioknD9JjY9Z8sLrdxSBWuhIpwamzArp3UH5YGB/P0AT0T5n0j63ro/D5GkrydtNeHNUUZ0/kIv8Kr/LHDhD2BEgV24Dvuw/SrOfFbpabK5UjpKLSVSs+35wLJ8yv06Pg0nTWWW3VBaoMg65F6qDkedNDk0o7Oh7ECrDa0cyl2w90ob9UOJK7tsYEkoJUi+dCOshwyrgf84KhinQ0HZhAK69fZEhT2SpzSGeh1ixpAoW82PU0FYUToT0qF1etDUMYcIFIxcQTMH9GMbj7OOfsV1hcJKyocJInggod8bRaUZ/bFSjmFFawaGghpgHRJmn4KPZkotQuQPGsnUvtV56dXMPkZi9umU7P8MTuOQ4cMueCgTZaEzZvoFhGOjgS14N+t2qiazJvMvlpUUO2g7k8W5bWqsE02Pxy2XfFugjW1+Qq8Zmyec7pdLtQElqwXBHsr+3SR6TRMDZUqWNODJrb8SAbRYhhLB3wgey4cGxX7CUCA1jR+kYgjiZWVlFaaYyz3Hk+Aul/7bnvNQS8CVwdgHuxVD5YvjTyOQKYXk+54BpgY6NrxJZ/QJ31RgxY+0zIhN1y6UUF+sf9q2xD6Ji8hdyqiYJzRltgAt+qWv/7WuPERJtxVPXrWIvFf/xnxGVKFjlK3B7bTSmsg7R1YhbdMDf7BE2fmoWKT3SjIrheW+Wby4oCje8zgD5EHKmTTt2gWccuQDef2m7VA74qeDMziUKFY2XNkOePtB+/lHPuggfvmZZAJinh1WFAdJcydhDvPRVsv4+R++kCxjgPjre/A9/lsrtwoMnx6A8qj4Y5LpYM99sZGEGsO4CEkJvCCMUhmw8hCleRl5LHyuUKY+LpIEZIliCT5ch9Bfjlnizwmc1o60YuwbXEsw/2xWNPA5ls9c4M0XxKUX3sIpicfgZlwCuNbrhdX+elT0th5Ft05z+TYk8Xl0dT+wPRP683IYPN8YVJsv0XGg0Evqg0VoMBweJZP+KsE/cGqrUmn0Nrx+1gKF2mE1W7lHw8GaLRA/WChQynwhOUsX5Oy7KbyEWZhXP6GrHlf+oJWc7ax4xY090UbO60ppK4IXCd1rzyyecGqQmFiqZe23qGawNT9Bi2JKbR/QFa8UlAPVCcvrVwniG2cpiZY2X22qPy9jjITxltHMh/jk8z5/QyI9906Yg2O78yk2vFRBOnrDyrGz1XoWQrif4doNH+KotjHxiKhsg5MtS6skEy7SeRNwYRgKFACgXcS39pMMw2FKc/sfFXE3HQjhD438PJvBjInd6wnTEUWbXGdQNerKxlmPWf/bcWDEuQKKwBaB/VYRBfcfIg1/FKDTsxQW9YQYButylw/pI2V11qNjFni/CaiLrCjNHXA1O6bCM62SBOXuL9Y4mo4TUFxCso8Yi34q5EvB+89k X-OriginatorOrg: wesion.com X-MS-Exchange-CrossTenant-Network-Message-Id: efab0547-a903-4002-d70f-08dcbd981920 X-MS-Exchange-CrossTenant-AuthSource: TYZPR03MB7001.apcprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Aug 2024 02:06:53.5783 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 2dc3bd76-7ac2-4780-a5b7-6c6cc6b5af9b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: x4Lu95a5yb64woxvmMsPrjPQqQP+go/lbcIoi+cWqzdS3b99MXB4n01nAUuHz9LExASs3th1Hyf4YaTVmHCNgw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SEZPR03MB7444 Not only AP6275P Wi-Fi device but also all Broadcom wireless devices allow external low power clock input. In DTS the clock as an optional choice in the absence of an internal clock. Reviewed-by: Arend van Spriel Reviewed-by: Krzysztof Kozlowski Signed-off-by: Jacobe Zang --- .../bindings/net/wireless/brcm,bcm4329-fmac.yaml | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/Documentation/devicetree/bindings/net/wireless/brcm,bcm4329-fmac.yaml b/Documentation/devicetree/bindings/net/wireless/brcm,bcm4329-fmac.yaml index 2c2093c77ec9a..a3607d55ef367 100644 --- a/Documentation/devicetree/bindings/net/wireless/brcm,bcm4329-fmac.yaml +++ b/Documentation/devicetree/bindings/net/wireless/brcm,bcm4329-fmac.yaml @@ -122,6 +122,14 @@ properties: NVRAM. This would normally be filled in by the bootloader from platform configuration data. + clocks: + items: + - description: External Low Power Clock input (32.768KHz) + + clock-names: + items: + - const: lpo + required: - compatible - reg From patchwork Fri Aug 16 02:06:34 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jacobe Zang X-Patchwork-Id: 820156 Received: from APC01-SG2-obe.outbound.protection.outlook.com (mail-sgaapc01on2133.outbound.protection.outlook.com [40.107.215.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 38D947DA64; Fri, 16 Aug 2024 02:06:59 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.215.133 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1723774022; cv=fail; b=oXd8tN6tGcuGHyy712CN3IqK7vDJe4Zvmz/AQPwn/Hn2DKqT7dwoI7qSE1txHwkuHX7CZTj1ahq/A/JK3dZc5u+t/n+ckW7ZUN2/LwmnLL0GIEGKldL7dSXkcfvIuHp2UrX8SkohPZOTT7jec0XzQgKrIkdzOgz4FPKhuMbr8wQ= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1723774022; c=relaxed/simple; bh=BqbQOwwYDw5/7P+wXqeJ1Sr17ivASmsIDzY5VFLbi5I=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=BRO4/T6w6Lzalg9p9lrUnnoDlbHsQk0/4U9UjM4vOx96AE4rCTLWSKx+t+YbGqMpDj1Zo4c1HlNoywOJOLA4Jk5hDr4ruSTMNUs/tgA4dhG8TR7BuGWywjOYij5IhmlqST5xytw3aLhiHIk1+/le0/hPWkQgvx/BfRFtqAXzvT8= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=wesion.com; spf=pass smtp.mailfrom=wesion.com; arc=fail smtp.client-ip=40.107.215.133 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=wesion.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=wesion.com ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=rnBnAiHY/3HfX1evdMmM9OAU/pkmcxIpMbqusOgeVTlXdSVnLCrWZuUGu9dISHnmx459Q0cot2+OUgBWtdcotUgkAhR98g2LpFQ0hMehPFhvsiPRUy2lwNVf939mC54NniJsr4SPBp35T07x++VFniDxaNqoKe+lF2Y/hqGA9Tap4so48K8u1AfL36REY6LDEQCk2foD9SL8tWDZSTYJ8UeMZVo5LnS9ZzbO20PacX9lqxYvjFLBvMl7qutuOX0Qqf2d3MiAcAWdQx7qRXXfJkUFtQCN6xNX+7Tu3xbnbWhH9P0Dp0bOE4LX/W/VBGnFrkHUYdiJUXkOULeIvM3H4g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=yPnvZm+FRad2ukpz6C2NIKwXiB1oULTjmbAvSb1O8AA=; b=WUj5WvarYKx50+58KEv0H5eMsWIV4dQa0aiDWIqRMPJ7D9gwsz813OUI1i603sf7X+CXIkG8Ak9z7jbx9wi5xuZARTJDwiOThrT6lbksBmRuxOi2S91lyIc4mPwzXFnjSui8/54D+cK3hUhYBjQ1HPmRjW8QZOLqP0z2bZ0DqciD6383/l+7GDqH/Lfqbv/MuT3iwhl4LXn0yYelfP32rB7i1Qq9HGQDBU+Hpiy4cNFFe1Cbhip4nign7UixYG5aVe4XpAEE54/rzfEHiCbjGNJPWqfouiWiuI0pfw5khkk6nyZdPNddZbXPqAxLFBmA4ocJ1ttKZRXOku4Ic3QBKg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=wesion.com; dmarc=pass action=none header.from=wesion.com; dkim=pass header.d=wesion.com; arc=none Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=wesion.com; Received: from TYZPR03MB7001.apcprd03.prod.outlook.com (2603:1096:400:26a::14) by SEZPR03MB7444.apcprd03.prod.outlook.com (2603:1096:101:129::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7875.19; Fri, 16 Aug 2024 02:06:57 +0000 Received: from TYZPR03MB7001.apcprd03.prod.outlook.com ([fe80::78dd:5e68:1a9c:36c0]) by TYZPR03MB7001.apcprd03.prod.outlook.com ([fe80::78dd:5e68:1a9c:36c0%4]) with mapi id 15.20.7875.016; Fri, 16 Aug 2024 02:06:57 +0000 From: Jacobe Zang To: arend.vanspriel@broadcom.com, kvalo@kernel.org Cc: davem@davemloft.net, edumazet@google.com, kuba@kernel.org, pabeni@redhat.com, robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org, saikrishnag@marvell.com, megi@xff.cz, bhelgaas@google.com, duoming@zju.edu.cn, minipli@grsecurity.net, yajun.deng@linux.dev, stern@rowland.harvard.edu, gregkh@linuxfoundation.org, christophe.jaillet@wanadoo.fr, linux-wireless@vger.kernel.org, netdev@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, brcm80211@lists.linux.dev, brcm80211-dev-list.pdl@broadcom.com, Jacobe Zang Subject: [PATCH v11 3/4] wifi: brcmfmac: Add optional lpo clock enable support Date: Fri, 16 Aug 2024 10:06:34 +0800 Message-Id: <20240816020635.1273911-4-jacobe.zang@wesion.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20240816020635.1273911-1-jacobe.zang@wesion.com> References: <20240816020635.1273911-1-jacobe.zang@wesion.com> X-ClientProxiedBy: SI2PR02CA0050.apcprd02.prod.outlook.com (2603:1096:4:196::11) To TYZPR03MB7001.apcprd03.prod.outlook.com (2603:1096:400:26a::14) Precedence: bulk X-Mailing-List: linux-wireless@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: TYZPR03MB7001:EE_|SEZPR03MB7444:EE_ X-MS-Office365-Filtering-Correlation-Id: 85c07a08-05b5-4c57-d06c-08dcbd981b48 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|366016|7416014|52116014|1800799024|376014|38350700014; X-Microsoft-Antispam-Message-Info: NGRyFr4tMK382zkcp+U5JY/JeEAAw0VPOAo96Sw7hPmDrWpuqyt6ov/Pjh74HA3WUXBfI9rDb/xh0rWUqK5LQUCVkTLN6suqWhwV9QwqgH63tOrO3hzHpMCZl8k9DKwUARsP1UPsLnkoiJ+9BYnEm305Y/1k9JkdLZS5Ny9cygMLhBi22LMI1ePq91t6HG6XtfrEFvPA5xOl+/+GL/DfeVReaZ3mXfFVDqZ4LPPqVJkqEzOcJP9eOkx6FcsCrKYye1CnBv+mN5lcS/VH8kDAaCVGxeg0ilB+ErIdrJ5Uw07w0pOIxHdtpKsfuDj/N7rjPsrpajur/ylJu1jrWeY7zQmXcWX4bKWTqGn7QK2iRBYE+9nFVp+lvfrIcCMx4IFyGiZ9FxuMVktQ82bMDGREGjoDchlSdol1N4p55GpcG/a47GOepVSRb6p6py4KPOtxtzcLwhJGvchC7/b8wjja7qzu/WeEGRemStixl3SpyhKS92tvA4rqcMFEsIFi9ZofFfFhDdJZUKXg5+qdajHrc3G2xi9O1yvV7UtUm+pc8iDtmxGJ+/jhnQWo9yVvLAwpmqaF2MyLDPBez6qmTy0hPVHMlKtVHHxlGh8UncxSXEwT1Tx8XgJ5hhYKAPrJ/U2KyN9Rwhtu8vXJ0wWT4C+pUOY+y2uQpCEuviosLmYzvPE18s6e1+vcMWicQ+ZVySJy2zpBaNcKlG+AyGLfxPvyVkgWLwzUoXKRL37FMLjaw3e0RiVPTl7rmGwlNm7Uqk+zDVFTww6F5ltNQA4iCzJUIgpH30oplCacYi8m5Z56DK9AsctunDnhpJoDmU0J7QV3bop/Fbz4Ped5gCVHzo7VsfaTelgypcEuIgm+vMaFVkHV2Fv3M5AACOsIROkiYxmHDPh0QtQQ4EtlPYIToNR84oZRawjfrcurwqQ3e4EFLmRW9MbGQmmVTV2RsQtD7n1KchRMcaMOfvmKSIqfWIw6CL9gVsUzZN8IHQ8pysuvxGowmEU4dFmHwpWqBgxQj2MfdktU5ue12pXndEcySLPrK5mGrWob635iK2HeTPDzm9lukPiWPq0H954uS7S8kOEYGR+ZUxzMzwvCeLWUrVtGUOuaTrT0XkghNSr3KgLYjaTVgZvZJ3GU99fAQuAxfFoaVUY/Y1i+jQ7gcIefg/41Hu3DjWEsbmC3p7acQx5hQVtan26B/laxVB++3b4yZiEklRpfvq6uaeMvql9Wcm/2uY4S1Jp6T/gsqI78rdzrXwetMcSaCei0/4/EKButVcF5WND/YEFUKkkgwPe4nXYCfrYxGQ5XNHrH2CV0awfv1XsdCREeygR1iayt1RddsCn5QuHckSvjR5cWQM5+1+OMzipUgT+8/MSrO+WkLnpzY/NooWYQ9sPLuvaSBp5y11UGpoP/eOjXsnUo4y3B9MMFsA== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:TYZPR03MB7001.apcprd03.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(366016)(7416014)(52116014)(1800799024)(376014)(38350700014); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: OYligwI1ozFul/r3GXVBarJ+UaG3tIpeL1KDI2g0cT/UYvVDe0svWz+xHSOcE53z6p4wf5kXSa4Aw+FR96L13W6llqiX6k1JopkkH1UlAfSl0kRjZmdgvZ0x2sCOMSJ3t9qWrbY6P7BWu+PeDHJDLvg9ovsFLKu8bbswxJ4QSFHy+1dwfAR4y5kw1/VitMrXADq5O9XQ1WONjGpxtWlCRxJmMrXD4jJbj7CTnCgyv6ulvncaPbGXwVBFKZttxND5/eZWhFLBRHR9Vg6lk2je9mb22ECy920sUV9zBZOTptH1IO970sjVCI//4BV0E3917dZX2bMJIOlTcxmpNvvt774VOq2AlYFL3LpXaZGqHOUReZAhuBBEyF29pUWK0+8LTLeG66jS1HJ/WPbof3X5oJOn82jKXLWh6f9Zn0UgcnNeQ8151RiApOEROSV/O80hu0X5X6YJtdOFy3KJxyr1Vng0nyjj+5hDZKk9iYaTu16zt+MQv7CFi0hS51/gD3h4AyXralq9vYs1uDYxKdXgvfkVqulzHUSx+Hz5LjfroiePjDuem/h+1q9xObk61BApBU81qZNJ/WGapiEGOESOZ/h0gRqh8AZ96vztTn8ZWquZdvVCdEU8KmeTMAe5YMnVnz6/Oe1ezNTLDu1V4Z7ImM8LRwdKYux0Mvt6Rm4T5f+sRYQf5RdA4CoVAjMJ5m5zg7+FCsZ5g7iDvvo7kGZKq9x7qZ9kMmc2WmKynYLy+SDkDviEKo/zKp9CrixUQEw+pRH/NDh8GA29ikvIOexydlFQm5xdo4IGV0T4nZV06TaiXZOwBuQLMiPPhkYwJUm/+Vu4Ho+VMtoEDtZG3PRyCXEtHOSgXQ66rPMwpqU1+fzj2XB+KLvLTwes97srJN4cbay/5sYE62ugOne3J9zsb2LfndQvh4f1j5oZRR3U0fygW2t9hsKOvZEELXFb/3n1FRBWmLkSBG/5AKXDCP+kXMORFbvb+vtlRifaAFVleno+Wlxq+7OfHDnnNuy6dyc34zzA+iZR9vdL6CGiz1/vPcn3POwREWBLQLSvA1YefKUjN8vj8tDohBrypLzGr4fP8mJX5eqolwJ3EMmhiQbJ6JO1auDHJV5H+DdbWGD5sIJ6UGSzM5GWUdaK0BLyN8AA06xUphqTBnDFs/LGWBkWYR54/kX4pDH37oIwG9zSlKm5uHKiLlzy/JPqbfs9jNoUJvG+uocRWjjgNsPpJKvmAd8VEHuF4e/Jo1+yIblV5a19lZFTLm0Hv2JE40tbG8zEebh1mDHEA3tUDCzKbNnsVNIa+CDUnx/jpHYE17Lz2kpf/fNXpkXQHx6JgRurXffJjQecXNk/sX/UXiUVg5BEJEvOJbSENajpSyf6W0HPykuRJ14EddHzhG54lDS7Y2rOZ0Wlb+3EziCF9MvtwXRn6nNI2PR2zpYe4q5IKjBzUbi1Pe7JG4qCakPSDJONv7yYlckK0HCHZNpu76VWVYMFQ0CNOPs0ehJs/LmjGv4HEMyaOcaa5vZ3YjsOTJUBVyVmvYbwKU7tERS0oRobKKcJ9hBm7MZ1QpvSnO2yqCGWcXAh5OOytAN9R8NUsdPlXrX9 X-OriginatorOrg: wesion.com X-MS-Exchange-CrossTenant-Network-Message-Id: 85c07a08-05b5-4c57-d06c-08dcbd981b48 X-MS-Exchange-CrossTenant-AuthSource: TYZPR03MB7001.apcprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Aug 2024 02:06:57.1634 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 2dc3bd76-7ac2-4780-a5b7-6c6cc6b5af9b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: VSMaZXD3AMO2SA62qEyvkbS4eV4ObmtQie13E3QN4s3KqNlOQ4qftwxs9F8miVAXb8rGwWhCfwIc2uw0ur4oXQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SEZPR03MB7444 WiFi modules often require 32kHz clock to function. Add support to enable the clock to PCIe driver and move "brcm,bcm4329-fmac" check to the top of brcmf_of_probe. Change function prototypes from void to int and add appropriate errno's for return values that will be send to bus when error occurred. Co-developed-by: Ondrej Jirman Signed-off-by: Ondrej Jirman Co-developed-by: Arend van Spriel Signed-off-by: Arend van Spriel Reviewed-by: Sai Krishna Signed-off-by: Jacobe Zang --- .../broadcom/brcm80211/brcmfmac/bcmsdh.c | 4 +-- .../broadcom/brcm80211/brcmfmac/common.c | 3 +- .../wireless/broadcom/brcm80211/brcmfmac/of.c | 29 +++++++++++++------ .../wireless/broadcom/brcm80211/brcmfmac/of.h | 9 +++--- .../broadcom/brcm80211/brcmfmac/pcie.c | 3 ++ .../broadcom/brcm80211/brcmfmac/sdio.c | 22 +++++++++----- .../broadcom/brcm80211/brcmfmac/usb.c | 3 ++ 7 files changed, 49 insertions(+), 24 deletions(-) diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/bcmsdh.c b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/bcmsdh.c index 13391c2d82aae..b2ede4e579c5c 100644 --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/bcmsdh.c +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/bcmsdh.c @@ -947,8 +947,8 @@ int brcmf_sdiod_probe(struct brcmf_sdio_dev *sdiodev) /* try to attach to the target device */ sdiodev->bus = brcmf_sdio_probe(sdiodev); - if (!sdiodev->bus) { - ret = -ENODEV; + if (IS_ERR(sdiodev->bus)) { + ret = PTR_ERR(sdiodev->bus); goto out; } brcmf_sdiod_host_fixup(sdiodev->func2->card->host); diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/common.c b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/common.c index b24faae35873d..58d50918dd177 100644 --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/common.c +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/common.c @@ -561,7 +561,8 @@ struct brcmf_mp_device *brcmf_get_module_param(struct device *dev, if (!found) { /* No platform data for this device, try OF and DMI data */ brcmf_dmi_probe(settings, chip, chiprev); - brcmf_of_probe(dev, bus_type, settings); + if (brcmf_of_probe(dev, bus_type, settings) == -EPROBE_DEFER) + return ERR_PTR(-EPROBE_DEFER); brcmf_acpi_probe(dev, bus_type, settings); } return settings; diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/of.c b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/of.c index e406e11481a62..5a66d64919209 100644 --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/of.c +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/of.c @@ -6,6 +6,7 @@ #include #include #include +#include #include #include "debug.h" @@ -65,17 +66,21 @@ static int brcmf_of_get_country_codes(struct device *dev, return 0; } -void brcmf_of_probe(struct device *dev, enum brcmf_bus_type bus_type, - struct brcmf_mp_device *settings) +int brcmf_of_probe(struct device *dev, enum brcmf_bus_type bus_type, + struct brcmf_mp_device *settings) { struct brcmfmac_sdio_pd *sdio = &settings->bus.sdio; struct device_node *root, *np = dev->of_node; + struct clk *clk; const char *prop; int irq; int err; u32 irqf; u32 val; + if (!np || !of_device_is_compatible(np, "brcm,bcm4329-fmac")) + return 0; + /* Apple ARM64 platforms have their own idea of board type, passed in * via the device tree. They also have an antenna SKU parameter */ @@ -105,7 +110,7 @@ void brcmf_of_probe(struct device *dev, enum brcmf_bus_type bus_type, board_type = devm_kstrdup(dev, tmp, GFP_KERNEL); if (!board_type) { of_node_put(root); - return; + return 0; } strreplace(board_type, '/', '-'); settings->board_type = board_type; @@ -113,33 +118,39 @@ void brcmf_of_probe(struct device *dev, enum brcmf_bus_type bus_type, of_node_put(root); } - if (!np || !of_device_is_compatible(np, "brcm,bcm4329-fmac")) - return; - err = brcmf_of_get_country_codes(dev, settings); if (err) brcmf_err("failed to get OF country code map (err=%d)\n", err); of_get_mac_address(np, settings->mac); + clk = devm_clk_get_optional_enabled(dev, "lpo"); + if (IS_ERR(clk)) + return PTR_ERR(clk); + + brcmf_dbg(INFO, "%s LPO clock\n", clk ? "enable" : "no"); + clk_set_rate(clk, 32768); + if (bus_type != BRCMF_BUSTYPE_SDIO) - return; + return 0; if (of_property_read_u32(np, "brcm,drive-strength", &val) == 0) sdio->drive_strength = val; /* make sure there are interrupts defined in the node */ if (!of_property_present(np, "interrupts")) - return; + return 0; irq = irq_of_parse_and_map(np, 0); if (!irq) { brcmf_err("interrupt could not be mapped\n"); - return; + return 0; } irqf = irqd_get_trigger_type(irq_get_irq_data(irq)); sdio->oob_irq_supported = true; sdio->oob_irq_nr = irq; sdio->oob_irq_flags = irqf; + + return 0; } diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/of.h b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/of.h index 10bf52253337e..ae124c73fc3b7 100644 --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/of.h +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/of.h @@ -3,11 +3,12 @@ * Copyright (c) 2014 Broadcom Corporation */ #ifdef CONFIG_OF -void brcmf_of_probe(struct device *dev, enum brcmf_bus_type bus_type, - struct brcmf_mp_device *settings); +int brcmf_of_probe(struct device *dev, enum brcmf_bus_type bus_type, + struct brcmf_mp_device *settings); #else -static void brcmf_of_probe(struct device *dev, enum brcmf_bus_type bus_type, - struct brcmf_mp_device *settings) +static int brcmf_of_probe(struct device *dev, enum brcmf_bus_type bus_type, + struct brcmf_mp_device *settings) { + return 0; } #endif /* CONFIG_OF */ diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/pcie.c b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/pcie.c index 06698a714b523..c34405a6d38b8 100644 --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/pcie.c +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/pcie.c @@ -2457,6 +2457,9 @@ brcmf_pcie_probe(struct pci_dev *pdev, const struct pci_device_id *id) ret = -ENOMEM; goto fail; } + ret = PTR_ERR_OR_ZERO(devinfo->settings); + if (ret < 0) + goto fail; bus = kzalloc(sizeof(*bus), GFP_KERNEL); if (!bus) { diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c index 6b38d9de71af6..462fc669b959c 100644 --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c @@ -3943,7 +3943,7 @@ static const struct brcmf_buscore_ops brcmf_sdio_buscore_ops = { .write32 = brcmf_sdio_buscore_write32, }; -static bool +static int brcmf_sdio_probe_attach(struct brcmf_sdio *bus) { struct brcmf_sdio_dev *sdiodev; @@ -3953,6 +3953,7 @@ brcmf_sdio_probe_attach(struct brcmf_sdio *bus) u32 reg_val; u32 drivestrength; u32 enum_base; + int ret = -EBADE; sdiodev = bus->sdiodev; sdio_claim_host(sdiodev->func1); @@ -4001,8 +4002,9 @@ brcmf_sdio_probe_attach(struct brcmf_sdio *bus) BRCMF_BUSTYPE_SDIO, bus->ci->chip, bus->ci->chiprev); - if (!sdiodev->settings) { + if (IS_ERR_OR_NULL(sdiodev->settings)) { brcmf_err("Failed to get device parameters\n"); + ret = PTR_ERR_OR_ZERO(sdiodev->settings); goto fail; } /* platform specific configuration: @@ -4071,7 +4073,7 @@ brcmf_sdio_probe_attach(struct brcmf_sdio *bus) /* allocate header buffer */ bus->hdrbuf = kzalloc(MAX_HDR_READ + bus->head_align, GFP_KERNEL); if (!bus->hdrbuf) - return false; + return -ENOMEM; /* Locate an appropriately-aligned portion of hdrbuf */ bus->rxhdr = (u8 *) roundup((unsigned long)&bus->hdrbuf[0], bus->head_align); @@ -4082,11 +4084,11 @@ brcmf_sdio_probe_attach(struct brcmf_sdio *bus) if (bus->poll) bus->pollrate = 1; - return true; + return 0; fail: sdio_release_host(sdiodev->func1); - return false; + return ret; } static int @@ -4451,8 +4453,10 @@ struct brcmf_sdio *brcmf_sdio_probe(struct brcmf_sdio_dev *sdiodev) /* Allocate private bus interface state */ bus = kzalloc(sizeof(struct brcmf_sdio), GFP_ATOMIC); - if (!bus) + if (!bus) { + ret = -ENOMEM; goto fail; + } bus->sdiodev = sdiodev; sdiodev->bus = bus; @@ -4467,6 +4471,7 @@ struct brcmf_sdio *brcmf_sdio_probe(struct brcmf_sdio_dev *sdiodev) dev_name(&sdiodev->func1->dev)); if (!wq) { brcmf_err("insufficient memory to create txworkqueue\n"); + ret = -ENOMEM; goto fail; } brcmf_sdiod_freezer_count(sdiodev); @@ -4474,7 +4479,8 @@ struct brcmf_sdio *brcmf_sdio_probe(struct brcmf_sdio_dev *sdiodev) bus->brcmf_wq = wq; /* attempt to attach to the dongle */ - if (!(brcmf_sdio_probe_attach(bus))) { + ret = brcmf_sdio_probe_attach(bus); + if (ret < 0) { brcmf_err("brcmf_sdio_probe_attach failed\n"); goto fail; } @@ -4546,7 +4552,7 @@ struct brcmf_sdio *brcmf_sdio_probe(struct brcmf_sdio_dev *sdiodev) fail: brcmf_sdio_remove(bus); - return NULL; + return ERR_PTR(ret); } /* Detach and free everything */ diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/usb.c b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/usb.c index 9a105e6debe1f..f7db46ae44906 100644 --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/usb.c +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/usb.c @@ -1272,6 +1272,9 @@ static int brcmf_usb_probe_cb(struct brcmf_usbdev_info *devinfo, ret = -ENOMEM; goto fail; } + ret = PTR_ERR_OR_ZERO(devinfo->settings); + if (ret < 0) + goto fail; if (!brcmf_usb_dlneeded(devinfo)) { ret = brcmf_alloc(devinfo->dev, devinfo->settings); From patchwork Fri Aug 16 02:06:35 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jacobe Zang X-Patchwork-Id: 820078 Received: from APC01-SG2-obe.outbound.protection.outlook.com (mail-sgaapc01on2133.outbound.protection.outlook.com [40.107.215.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 9C1E97E112; Fri, 16 Aug 2024 02:07:02 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.215.133 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1723774024; cv=fail; b=U670HacxFzB7Lyz9h+HRZfnAyefH81MTh7XtBFV1g0TWNByChRVRSfNw3Weh2ELUzdAfw0mqCp4OPgjRx83ohWliTedlfGJRjlC0PBmWLCukeD+zLl21JNs7ofGyjcsfsNOrmDd+nQBEuHJ3D3WtikZt3qX3HDWcjtqM0j/3CDQ= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1723774024; c=relaxed/simple; bh=z/JMI1ioorJsC5rpgzgpHUYttwWsJh+gThzg/mM6S6Y=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=VdX1xiPOxb4PaSQ3QLfIh9gRu6zIydUhin3L9sRspsXrbdlE7vurRmfcmfaHBFcjTbtTPiHc5BLZxxB5xfvGxsWPIdMRmcUbaCH4LP2Oj5mjf8+hBoaJzLT0aJvf3RmYXpOFTMAbiVodsdlvRS9xOD7lOaEXdKcn9bvvyV9CVT0= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=wesion.com; spf=pass smtp.mailfrom=wesion.com; arc=fail smtp.client-ip=40.107.215.133 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=wesion.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=wesion.com ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=cv8UBn5qlQYpG7Bvj2DYPzoIQx+ZdPsZMjieLxWHSnbHkkQ7UL3TwS0M+IIYmgtHzXmOUtM66DSNFxgJWy0Z0gD06iQonjWRHdF9Cd2/hLoVrfk3mxR4Fespq1g3QZ9+5hgX9D3DDzneozdx1O/t9Ep4jUq33x5y1E9qJbMyktolWWdWh8OCr/iYiLo1Su4i0vtKYBd+zjaRoeC9kGzKcpVwa1MzOWT5w5KSyTeAKQYGThTjIZDmAfPfu0StlYUY2slCwg+kEQAqzLoJ3DIVZ+9SzulALEIrCitaYmZh3hUeqWrWC5dwjBEbkrqxf7E24A7ZMQVt0v0c5HCpiDa5Eg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=ZWqN2d2WV5H3rjNNY/SuBA/Is/G4XlfllfCP+MEOJRA=; b=OSUNcSlJeu7g6M09PQq+fzl7tJOPPW5JQrWRKm9XMJVlev3x2IrPHA5PGl4gGS3HqMjiMJYxOseJIzUumt1NOSdYGquxyusvT3hBUNbIwVKwgm6oeRUYXXr5pIlCbmVk0Ie2FBN2sCIPka2wxbcT79otvyyWITmE0rt4f9d8rGA9vtdCnZFMpOTfFY4/3lcp9TEIqSdCKvbx/H4wIpURSUayMFJEYoEz2yQlrTtO5zqu0dNfSYmLquof2AFNEl38hWPDbKbeCBOcKAIkGzf4zyCQBqFK+Xye+UbDQOAi6qRzljLjJvnw4NMkbdC61TvL2iM2ns2i+8FLBXcr/TGKbw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=wesion.com; dmarc=pass action=none header.from=wesion.com; dkim=pass header.d=wesion.com; arc=none Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=wesion.com; Received: from TYZPR03MB7001.apcprd03.prod.outlook.com (2603:1096:400:26a::14) by SEZPR03MB7444.apcprd03.prod.outlook.com (2603:1096:101:129::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7875.19; Fri, 16 Aug 2024 02:07:00 +0000 Received: from TYZPR03MB7001.apcprd03.prod.outlook.com ([fe80::78dd:5e68:1a9c:36c0]) by TYZPR03MB7001.apcprd03.prod.outlook.com ([fe80::78dd:5e68:1a9c:36c0%4]) with mapi id 15.20.7875.016; Fri, 16 Aug 2024 02:07:00 +0000 From: Jacobe Zang To: arend.vanspriel@broadcom.com, kvalo@kernel.org Cc: davem@davemloft.net, edumazet@google.com, kuba@kernel.org, pabeni@redhat.com, robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org, saikrishnag@marvell.com, megi@xff.cz, bhelgaas@google.com, duoming@zju.edu.cn, minipli@grsecurity.net, yajun.deng@linux.dev, stern@rowland.harvard.edu, gregkh@linuxfoundation.org, christophe.jaillet@wanadoo.fr, linux-wireless@vger.kernel.org, netdev@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, brcm80211@lists.linux.dev, brcm80211-dev-list.pdl@broadcom.com, Jacobe Zang Subject: [PATCH v11 4/4] wifi: brcmfmac: add flag for random seed during firmware download Date: Fri, 16 Aug 2024 10:06:35 +0800 Message-Id: <20240816020635.1273911-5-jacobe.zang@wesion.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20240816020635.1273911-1-jacobe.zang@wesion.com> References: <20240816020635.1273911-1-jacobe.zang@wesion.com> X-ClientProxiedBy: SI2PR02CA0050.apcprd02.prod.outlook.com (2603:1096:4:196::11) To TYZPR03MB7001.apcprd03.prod.outlook.com (2603:1096:400:26a::14) Precedence: bulk X-Mailing-List: linux-wireless@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: TYZPR03MB7001:EE_|SEZPR03MB7444:EE_ X-MS-Office365-Filtering-Correlation-Id: 1dde7f6b-34b9-41df-0541-08dcbd981d83 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|366016|7416014|52116014|1800799024|376014|38350700014; X-Microsoft-Antispam-Message-Info: Gmoyu6ThTKt60rTAFvM8dRxpmMnzshJ12MKnKRp0cV3Gofo9hMrn/6qbBKSTltfX5sn0HebUuQIF3MzuioAXeLMyf81QIr/SY2f9vRkfvtbf/Bj5rnBm4zxspVVveXnJR5t53x5m+raz32QadO1iUCzjjF/ivS1JzBMbCs2KcwpIz8d8mqOZ61EMVnewhzLI3U+C4GEDeP4A2QVq9xkN3MtJnLhouXYvZSXGvFv3AhtxQcFsuiYFpGC55zT7XsE/s03Yce+jWF9pubWZsJS5kXIA7X97TzIB6LZJ+FvZr4MDdVPTbGaTYAbcGitPHNzqU13PQ5DySy+MbezJUQUSZZ/dCWynrH6DEvECntMIYr5qBaPkBji1g6KUF3rjwL2G5Vifnf/uV3J2Jntjlr79DL1DXJKgOtz/HX36QT0v4JziBVKCtLVbIm3QcsvNFePjxfN5+sudPpnKs4wd+gteb0qQGpzWKb+2VC7qYD7bHmFrwZrYNj+wD+hTf4Q1vhnBw+rpCCMBLV2QbHPVVD5Y/D/CeRhKzvtp2TWv+ApPsasplzVAJ9YykTikjpsrZvk/hKys+LiVKav3AYhG01dbdckOx34T3UzeGtlDtmwWvyUVoQ0bIOdmZ37Ix1xJjNY5ljkktxl467LPXVx/JTKcup7XJ0qtDTCgXzb0ONE2HY6/T0nHvd3piMYTrFn2o3J47+wgHNW64IKe+ASdsvWitETT0nh7TR88CrrSOaQhKdKz+9BhOSUJocL2XLoE8gWflLuvo+iNls03TsbAHirfpD9L1D2tlpE+mDsfGyFD2FwguD8mTBmuV1+Ii3QEXVKtNK+64RA1XUuSZjq9YA2J7kojYOWIiwIpMEfsrpi+VRl3ngozNikWf+kP/usvvzwozF+XGxSqxhtd4n37gixXOffRXWGMLC8sIZE3dY5ned3m+kSgTK5hhCK0DdGVArXvMlfBNMqNzBCqSrUYxlsK3WGhokCScdxd1NRi4QjlbWCdBHMCM7T2UO8Myt1dvdnomVWyCeAZ26HqEQKjN8/IKp6Nnj4Y5JT2dRmQIjaYeCrOLV1u2MHHlwfdbeXXWCLCMmVoj/v6jNsR8QzbsXmcXLHDOMDFjY47UfjtwixvbZ+74/W14i/tSNYDP5THeOvKRZk83xYKnprLLHpOSeJxc4bitE4POc7x/LeMVB/xeaxKGwtJBNm0RIADRdM0RM4AwyUjGk7HOzNiruJBc3/LDa2uoFszDGaNFCRyUsoomj+XFz9I0NWuXDLMmmjQBD7q6uL0jW3MfbTZyp6ge7sMFYLCBFJLNuPGSxjGea3yHJBI6b63QfrozBnUliq2OhqSxx9ncRlMT2VA1TfsmMN2JZKdTaQy83HEHG2s1GJ6sLIzRKzQIk5XoLSzDFIPDcSR5erF9/VYHG/fHdG6WJXN5w== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:TYZPR03MB7001.apcprd03.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(366016)(7416014)(52116014)(1800799024)(376014)(38350700014); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: Xs7thqapfbVSBmCasRY1Y/LWbcmfTMnM3PYVmGrG2tDhNMtToWKgIx7r6v850cDfU49a3l5jfhyGk1L+0xpT/vueM/AHi/NaacCDZSr9WERkdmOdALsDHSxQUDpVodNJQyaVwQ9f2da2YWMxave7dVcDo1ZcWZzl/LsfPSqjm9SsuZu8Is4HR/MIoEnMiyttAyBoX3SQFm843nibZHgWYft6RiBmOeukCRBdswWN+lgk9z9Wp7nIvQFdxWWCgEz49Cnp42+XE+RbbGvjCqf0UYkPnWNDsAk5EGIyHwcnnIR0V/IFIsBdv48FMVhJzSfdI4WbNzFrBG17JXVN5ADSpQXhE68EDXSTuz1Gko/D3yuuk7YGts6JsCX5wmKwD0ntmfUAn7U9BsrVXF0yY340Gmvggbbp+fN0iCAnvMEhK7Npbak1Zvcusej1OhGSAvBkQYsFuM26qR0rOR+CBZZIRLgItM/115Lq+YQg5Hh9D4ybHcloAC9NakwYZrXd7ke/je9fTx9uZtRll3TJRWd8VADxevU4vR3Fhq9uqssf+yQ9DpQvvoXzwbFiIL2LoXFJcCy+tGeJHPsAGEHEDE7eXgipG5HyVzb7JP+c7Fj48mUO9w98IkSJ76UmFsK1PE8CFygCgkJNXUugvmuP4X52PysSjm77XLxvXj2VdCOacGnCEhO+gSIKM2OXAtSLHpcxOnsIsFK3p765IxStO3LbdkvY8x4CIeCVPIr7gdKW1qdRO5wKf2zbLgR6tvmaNpLqRqdt9lsjgTy6No9/XmvE2Csxj5eZmsit0tXV2HirQxbd2i0Fb7Ut2fav0HO/1wWSLH5PpmL41FEq3OHKyYuUTni3DE2dMe5AwbWWxeTBQcF8aaPO73/3i8bR+JWgTQyKyYxURwkr0LOVRjc0cHPh5Me4UxXWjOlBz/r5wSHPKLhrolbfM3qy6K8rgQVP9SqdxBcvLB+6sEyjG6qmMkWQAsM7EDqKalQdWuU6HNSal2Q7ns77qcmoLXRhkdFKLYX7J3Y6lPa3QItrUpsK7Q/AVHM0Hga4K1o4suYF3jOdrsDrx+MnQzZtIisufPNylf+0WE4WKGaEHa8N6y3KhZALUbIuGhRWDXC1wDHa77TGhedId4yIakkKttYD2HORburSxAH5cM7Tx8YFkkFhzOTHNzbwYcoV87BBlCzWtfByUi2sCR6C0nmPsoigSbisWZBLwgaC/tEN56L5foGJFfODwpqKyZE0z/sBbTpviQBCx5ej6x+FTfrDy4vAaJSkilQ6wqmcLCMECHNtjkPbY9d3CejLQbSPrGB+y4vuzZQ9L2ItjFXtkKpZBPsnJJ0WtSybSxwPhHfvYxkrkcHqlGcs7CtOrcblwAtzKXXPmyGnuf21YrfDg3MG6V+e2JZFUNpbE3l1eNQs0NiNw5CnpQCgR2UbOB++fjOZTbdd9J43SBCqbToaJKOWP9UReAFLSAxNL3jv/27+MFMucONpy1NHPs/fEawh5kAcdiZiKnUoeYYbf/qFwvkGCrQdwrvGvL3yjBk/GGt7r75Cs4Dzo5R1pzmEFrgmx7VVdvFdt6vXEWMCPXXBhAxWRfOkbhbjq/RC X-OriginatorOrg: wesion.com X-MS-Exchange-CrossTenant-Network-Message-Id: 1dde7f6b-34b9-41df-0541-08dcbd981d83 X-MS-Exchange-CrossTenant-AuthSource: TYZPR03MB7001.apcprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Aug 2024 02:07:00.8732 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 2dc3bd76-7ac2-4780-a5b7-6c6cc6b5af9b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: OoyuqEHcBV6ncxWk0xOAfShzgTFeqOrgqNJEKy6MKnaN0yeHNLW+4/eQ/fzS5HIZDBXulPh8dLn7SfGrmgafFg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SEZPR03MB7444 Providing the random seed to firmware was tied to the fact that the device has a valid OTP, which worked for some Apple chips. However, it turns out the BCM43752 device also needs the random seed in order to get firmware running. Suspect it is simply tied to the firmware branch used for the device. Introducing a mechanism to allow setting it for a device through the device table. Co-developed-by: Ondrej Jirman Signed-off-by: Ondrej Jirman Co-developed-by: Arend van Spriel Signed-off-by: Arend van Spriel Signed-off-by: Jacobe Zang --- .../broadcom/brcm80211/brcmfmac/pcie.c | 52 ++++++++++++++++--- .../broadcom/brcm80211/include/brcm_hw_ids.h | 2 + 2 files changed, 46 insertions(+), 8 deletions(-) diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/pcie.c b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/pcie.c index c34405a6d38b8..e88fa4cd62a1d 100644 --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/pcie.c +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/pcie.c @@ -66,6 +66,7 @@ BRCMF_FW_DEF(4365C, "brcmfmac4365c-pcie"); BRCMF_FW_DEF(4366B, "brcmfmac4366b-pcie"); BRCMF_FW_DEF(4366C, "brcmfmac4366c-pcie"); BRCMF_FW_DEF(4371, "brcmfmac4371-pcie"); +BRCMF_FW_CLM_DEF(43752, "brcmfmac43752-pcie"); BRCMF_FW_CLM_DEF(4377B3, "brcmfmac4377b3-pcie"); BRCMF_FW_CLM_DEF(4378B1, "brcmfmac4378b1-pcie"); BRCMF_FW_CLM_DEF(4378B3, "brcmfmac4378b3-pcie"); @@ -104,6 +105,7 @@ static const struct brcmf_firmware_mapping brcmf_pcie_fwnames[] = { BRCMF_FW_ENTRY(BRCM_CC_43664_CHIP_ID, 0xFFFFFFF0, 4366C), BRCMF_FW_ENTRY(BRCM_CC_43666_CHIP_ID, 0xFFFFFFF0, 4366C), BRCMF_FW_ENTRY(BRCM_CC_4371_CHIP_ID, 0xFFFFFFFF, 4371), + BRCMF_FW_ENTRY(BRCM_CC_43752_CHIP_ID, 0xFFFFFFFF, 43752), BRCMF_FW_ENTRY(BRCM_CC_4377_CHIP_ID, 0xFFFFFFFF, 4377B3), /* revision ID 4 */ BRCMF_FW_ENTRY(BRCM_CC_4378_CHIP_ID, 0x0000000F, 4378B1), /* revision ID 3 */ BRCMF_FW_ENTRY(BRCM_CC_4378_CHIP_ID, 0xFFFFFFE0, 4378B3), /* revision ID 5 */ @@ -358,6 +360,7 @@ struct brcmf_pciedev_info { u16 value); struct brcmf_mp_device *settings; struct brcmf_otp_params otp; + bool fwseed; #ifdef DEBUG u32 console_interval; bool console_active; @@ -1720,14 +1723,14 @@ static int brcmf_pcie_download_fw_nvram(struct brcmf_pciedev_info *devinfo, memcpy_toio(devinfo->tcm + address, nvram, nvram_len); brcmf_fw_nvram_free(nvram); - if (devinfo->otp.valid) { + if (devinfo->fwseed) { size_t rand_len = BRCMF_RANDOM_SEED_LENGTH; struct brcmf_random_seed_footer footer = { .length = cpu_to_le32(rand_len), .magic = cpu_to_le32(BRCMF_RANDOM_SEED_MAGIC), }; - /* Some Apple chips/firmwares expect a buffer of random + /* Some chips/firmwares expect a buffer of random * data to be present before NVRAM */ brcmf_dbg(PCIE, "Download random seed\n"); @@ -2399,6 +2402,37 @@ static void brcmf_pcie_debugfs_create(struct device *dev) } #endif +struct brcmf_pcie_drvdata { + enum brcmf_fwvendor vendor; + bool fw_seed; +}; + +enum { + BRCMF_DRVDATA_CYW, + BRCMF_DRVDATA_BCA, + BRCMF_DRVDATA_WCC, + BRCMF_DRVDATA_WCC_SEED, +}; + +static const struct brcmf_pcie_drvdata drvdata[] = { + [BRCMF_DRVDATA_CYW] = { + .vendor = BRCMF_FWVENDOR_CYW, + .fw_seed = false, + }, + [BRCMF_DRVDATA_BCA] = { + .vendor = BRCMF_FWVENDOR_BCA, + .fw_seed = false, + }, + [BRCMF_DRVDATA_WCC] = { + .vendor = BRCMF_FWVENDOR_WCC, + .fw_seed = false, + }, + [BRCMF_DRVDATA_WCC_SEED] = { + .vendor = BRCMF_FWVENDOR_WCC, + .fw_seed = true, + }, +}; + /* Forward declaration for pci_match_id() call */ static const struct pci_device_id brcmf_pcie_devid_table[]; @@ -2480,9 +2514,10 @@ brcmf_pcie_probe(struct pci_dev *pdev, const struct pci_device_id *id) bus->bus_priv.pcie = pcie_bus_dev; bus->ops = &brcmf_pcie_bus_ops; bus->proto_type = BRCMF_PROTO_MSGBUF; - bus->fwvid = id->driver_data; bus->chip = devinfo->coreid; bus->wowl_supported = pci_pme_capable(pdev, PCI_D3hot); + bus->fwvid = drvdata[id->driver_data].vendor; + devinfo->fwseed = drvdata[id->driver_data].fw_seed; dev_set_drvdata(&pdev->dev, bus); ret = brcmf_alloc(&devinfo->pdev->dev, devinfo->settings); @@ -2668,14 +2703,14 @@ static const struct dev_pm_ops brcmf_pciedrvr_pm = { BRCM_PCIE_VENDOR_ID_BROADCOM, (dev_id), \ PCI_ANY_ID, PCI_ANY_ID, \ PCI_CLASS_NETWORK_OTHER << 8, 0xffff00, \ - BRCMF_FWVENDOR_ ## fw_vend \ + BRCMF_DRVDATA_ ## fw_vend \ } #define BRCMF_PCIE_DEVICE_SUB(dev_id, subvend, subdev, fw_vend) \ { \ BRCM_PCIE_VENDOR_ID_BROADCOM, (dev_id), \ (subvend), (subdev), \ PCI_CLASS_NETWORK_OTHER << 8, 0xffff00, \ - BRCMF_FWVENDOR_ ## fw_vend \ + BRCMF_DRVDATA_ ## fw_vend \ } static const struct pci_device_id brcmf_pcie_devid_table[] = { @@ -2703,9 +2738,10 @@ static const struct pci_device_id brcmf_pcie_devid_table[] = { BRCMF_PCIE_DEVICE(BRCM_PCIE_4366_5G_DEVICE_ID, BCA), BRCMF_PCIE_DEVICE(BRCM_PCIE_4371_DEVICE_ID, WCC), BRCMF_PCIE_DEVICE(BRCM_PCIE_43596_DEVICE_ID, CYW), - BRCMF_PCIE_DEVICE(BRCM_PCIE_4377_DEVICE_ID, WCC), - BRCMF_PCIE_DEVICE(BRCM_PCIE_4378_DEVICE_ID, WCC), - BRCMF_PCIE_DEVICE(BRCM_PCIE_4387_DEVICE_ID, WCC), + BRCMF_PCIE_DEVICE(BRCM_PCIE_4377_DEVICE_ID, WCC_SEED), + BRCMF_PCIE_DEVICE(BRCM_PCIE_4378_DEVICE_ID, WCC_SEED), + BRCMF_PCIE_DEVICE(BRCM_PCIE_4387_DEVICE_ID, WCC_SEED), + BRCMF_PCIE_DEVICE(BRCM_PCIE_43752_DEVICE_ID, WCC_SEED), { /* end: all zeroes */ } }; diff --git a/drivers/net/wireless/broadcom/brcm80211/include/brcm_hw_ids.h b/drivers/net/wireless/broadcom/brcm80211/include/brcm_hw_ids.h index 44684bf1b9acc..c1e22c589d85e 100644 --- a/drivers/net/wireless/broadcom/brcm80211/include/brcm_hw_ids.h +++ b/drivers/net/wireless/broadcom/brcm80211/include/brcm_hw_ids.h @@ -52,6 +52,7 @@ #define BRCM_CC_43664_CHIP_ID 43664 #define BRCM_CC_43666_CHIP_ID 43666 #define BRCM_CC_4371_CHIP_ID 0x4371 +#define BRCM_CC_43752_CHIP_ID 43752 #define BRCM_CC_4377_CHIP_ID 0x4377 #define BRCM_CC_4378_CHIP_ID 0x4378 #define BRCM_CC_4387_CHIP_ID 0x4387 @@ -94,6 +95,7 @@ #define BRCM_PCIE_4366_5G_DEVICE_ID 0x43c5 #define BRCM_PCIE_4371_DEVICE_ID 0x440d #define BRCM_PCIE_43596_DEVICE_ID 0x4415 +#define BRCM_PCIE_43752_DEVICE_ID 0x449d #define BRCM_PCIE_4377_DEVICE_ID 0x4488 #define BRCM_PCIE_4378_DEVICE_ID 0x4425 #define BRCM_PCIE_4387_DEVICE_ID 0x4433