Received: by 2002:ab2:6c55:0:b0:1fd:c486:4f03 with SMTP id v21csp412947lqp; Wed, 12 Jun 2024 05:43:46 -0700 (PDT) X-Forwarded-Encrypted: i=3; AJvYcCWSCMg5lLSyBzBkscubnbHPJ6v6iZJXoFifrQ+XBKYDIpiGu4wXFrYLE/HSs2PsnznUOG2Kl1L5SjemhAMV2k0tzeV2Nx1UoFMTzK5z6g== X-Google-Smtp-Source: AGHT+IHQ7yBxMGK6DoPRrEQUIUFKy5HI0+DIH2QGGtocW78odNwp1zgxtWi8adTP0X6C6gO2V5av X-Received: by 2002:a67:f1d8:0:b0:48b:a44b:c935 with SMTP id ada2fe7eead31-48d91e72aa0mr1747019137.33.1718196226511; Wed, 12 Jun 2024 05:43:46 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1718196226; cv=pass; d=google.com; s=arc-20160816; b=dme71SQN/UStVkxpa5goS41WtrpCUq9/83keMCRl8R7AByjer7jKExwdf7k82vtE1H 8kUZTc4+V2qJVvYBSczlWth6Nw1fL2MZyn1vWTo8lzq+dHpPN9Wav3ecUM9SDVV+a3gY i26AIEZ3lWTByZyB+9JLSBuPQD0BZtp6UYBBRIUT102LOHXbk0FrI93TYNYqGm4kbwka ssta9Qi3IHwSez1huArFVQ1Y0uPXl+5SB00l0UNByDZWAIXRyPoB+cdLEYLA76t0iJ5X VCBeVtvnKmvAkrnYilOoQM2XrbXBGwqURpkx5UxUnnTiTbxvVq7uMDzG36amhz74nP/n kwMA== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:mime-version:list-unsubscribe :list-subscribe:list-id:precedence:user-agent:message-id:in-reply-to :date:references:subject:cc:to:from:dkim-signature; bh=z+KLxZwv3KVjMH+GO5G/9Jy6q5pczKwfg5UxIKL9ucM=; fh=pPWTdkG4fofqDgXKxaGO9FVHEGmLhUWniLcDsj7LHQI=; b=UTqtcJUuVrd8oopkcd2jbXSuAfCSKjUZnyN1emsNyHaGcN/PmCsmw9lPsGQxH1IEpz EIawmB2+GvZ7TXZcJBD3VzGTpcGyqcE+CTQ4L+NYwF1fq1C/jGmTkspPeWh7FDwSRcIu 6ALk/iVdmeqNjjTeM8X2jsVwwWDhX/E9z6B917MBSlIO+9SOPc75FwIPG/mlwywaC6K+ 1KgmBOe0cc6n6hUTJQ86wqX7cpV5FQcmIRqaaP1pR3nu+43LfgT6T9Lfq9b05sfVoJtS pdMn9X0AQcHpG39X1//c8fCoix2gkamR5QczKG8cZilSeL32+iUu1eHVbh/WH3FgwN4A gftw==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=kJkZjo5x; arc=pass (i=1 dkim=pass dkdomain=kernel.org); spf=pass (google.com: domain of linux-wireless+bounces-8878-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45d1:ec00::1 as permitted sender) smtp.mailfrom="linux-wireless+bounces-8878-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from ny.mirrors.kernel.org (ny.mirrors.kernel.org. [2604:1380:45d1:ec00::1]) by mx.google.com with ESMTPS id af79cd13be357-797e7dd0b01si322892185a.160.2024.06.12.05.43.46 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 12 Jun 2024 05:43:46 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-wireless+bounces-8878-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45d1:ec00::1 as permitted sender) client-ip=2604:1380:45d1:ec00::1; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=kJkZjo5x; arc=pass (i=1 dkim=pass dkdomain=kernel.org); spf=pass (google.com: domain of linux-wireless+bounces-8878-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45d1:ec00::1 as permitted sender) smtp.mailfrom="linux-wireless+bounces-8878-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ny.mirrors.kernel.org (Postfix) with ESMTPS id 836151C22318 for ; Wed, 12 Jun 2024 12:43:34 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id CC4F4170856; Wed, 12 Jun 2024 12:42:39 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="kJkZjo5x" X-Original-To: linux-wireless@vger.kernel.org Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (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 964BA16F8F6; Wed, 12 Jun 2024 12:42:39 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1718196159; cv=none; b=BLgf92qD/M7LfbnxKGHJORlzc92pvbd3h1qEGHu0b+kXZB7akOP4gbyE6fPcN4KP8w9dCZ0z/eCEFzf0lnKAs+WfiE6PUp6WHsQOLgxOC1DkDmAXfKtQbR6eIZY+XPAFy8QYja0BZ9aHLxUZv1D1K5CBQsidUjNU75OVNYBP6Lw= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1718196159; c=relaxed/simple; bh=z+KLxZwv3KVjMH+GO5G/9Jy6q5pczKwfg5UxIKL9ucM=; h=From:To:Cc:Subject:References:Date:In-Reply-To:Message-ID: MIME-Version:Content-Type; b=lV/PyxFgKOCJjqJCDHVqAfpqTBMRDQ2KAuLMO7JuwX5fvpNIuRu3Cz/D6oFKJ1nGT2POtyT5f+2IAWAgJv4pj0+6HafvqhBzv/Izl+N3r6pNDPFmoPjzE1kqVpn1XUHLzz91Tj9YWbzAFfwfRl0KOtvxXIe0psFIki3hkiZ0Lxg= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=kJkZjo5x; arc=none smtp.client-ip=10.30.226.201 Received: by smtp.kernel.org (Postfix) with ESMTPSA id 65D9FC3277B; Wed, 12 Jun 2024 12:42:35 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1718196159; bh=z+KLxZwv3KVjMH+GO5G/9Jy6q5pczKwfg5UxIKL9ucM=; h=From:To:Cc:Subject:References:Date:In-Reply-To:From; b=kJkZjo5xs0lK86YklafnNU927mRi4jWdl0SCGkcphfa1Z9n6VxvAqQaJxC1gGKSJL RoYSkIqL4CUGFKVz5HYkntqCEGAENNgD7w4d4FJS/6uVur/sAgna6t3xIvSZskMA/p /VwEt3XVxLyFLVDui40jlEas+ijlXkVJ16ZphJ2DNl6vJKAS9MyqzY1eeFgKafp8xn ZUNWCt5FywUYQkmoATvI1+GZTDKK4AhAsDmmcI8y2Hy7FDnjzSDJE7IgrTAKhAeXnq cE9u+gLYEpoAJQ7sz1AaBmUwdaD55b90h9Ce+/V39ScOZUkvnLCOKAN/sB93TfGn59 YF6m2J0Q8nbGw== From: Kalle Valo To: Bartosz Golaszewski Cc: "David S . Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Jeff Johnson , linux-wireless@vger.kernel.org, netdev@vger.kernel.org, devicetree@vger.kernel.org, ath11k@lists.infradead.org, linux-kernel@vger.kernel.org, ath12k@lists.infradead.org, Bartosz Golaszewski , Krzysztof Kozlowski Subject: Re: [PATCH v9 1/2] dt-bindings: net: wireless: qcom,ath11k: describe the ath11k on QCA6390 References: <20240605122106.23818-1-brgl@bgdev.pl> <20240605122106.23818-2-brgl@bgdev.pl> <87h6e6qjuh.fsf@kernel.org> <871q5aqiei.fsf@kernel.org> <87sexqoxm9.fsf@kernel.org> Date: Wed, 12 Jun 2024 15:42:33 +0300 In-Reply-To: (Bartosz Golaszewski's message of "Thu, 6 Jun 2024 20:08:11 +0200") Message-ID: <87msnqnxhi.fsf@kernel.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.2 (gnu/linux) Precedence: bulk X-Mailing-List: linux-wireless@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Bartosz Golaszewski writes: > On Thu, Jun 6, 2024 at 6:16=E2=80=AFPM Kalle Valo wrot= e: > >> >> Bartosz Golaszewski writes: >> >> > On Thu, Jun 6, 2024 at 4:02=E2=80=AFPM Kalle Valo w= rote: >> > >> >> Sure, I'm not worried about functionality. I'm worried that if I >> >> there's, for example, an ARM based setup which uses DT and wants to u= se >> >> a similar QCA6390 board that I have, and set >> >> qcom,ath11k-calibration-variant in DT. In other words, I'm worried if >> >> you are looking at this only for Snapdragon family of boards? >> >> >> > >> > No, what I'm looking at is the entire QCA6390 package. That means WLAN >> > *and* Bluetooth *and* the PMU that manages power. >> >> I think we are just looking at this from different point of views. You >> are looking at a datasheet (most likely for a Snapdragon based system) >> and I'm looking what actual devices there are out in the field. >> >> > If you're using the QCA6390 on a device-tree system then you should >> > probably model at least the WLAN node and the PMU and the problem with >> > supplies is fixed. >> >> But why? If there are boards out there who don't need any of this why >> would they still need to model all this in DT? >> > > Because this is what is there? The goal of the device tree is to > describe the hardware. The fact we didn't describe it before doesn't > make it correct. > >> Based on the discussions I have heard only Snapdragon systems who >> require all this configuration you describe. Of course there can be >> other systems but I have not heard about those. >> > > DT is not configuration, it is description of actual hardware. It > doesn't matter if Snapdragon systems are the only ones that actually > *require* this description to make WLAN/BT functional upstream. The > chipset would be the same on any PCIe board, it's just that the host > systems wouldn't need to take care with its power sequence. But for a > dynamic board like this, you don't need DT. > >> > But if you don't have the supplies, that's alright for downstream. >> >> What do you mean downstream in this context? >> > > I mean: if you wanted to upstream the DT sources, then they should > include the supplies AND the PMU node. But if you just want to make > the WLAN run on some vendor kernel then you don't need to think about > it, it will work. > >> >> Again, I don't see this as a blocker. I just want to understand how t= his >> >> should work for all types of devices there are out there. >> >> >> >> > But if you have a QCA6390 then you have its PMU too and the bindings >> >> > model the real-world hardware. >> >> > >> >> > IOW: your laptop should be alright but the supplies are really there >> >> > which warrants adding them to the bindings. >> >> >> >> Sorry, not following here. Can you clarify your comment "the supplies >> >> are really there"? You mean inside the PCI board? But that's not visi= ble >> >> to the kernel in anyway, the PCI board just works after I plug it in. >> >> It's like a regular PCI device. So I don't understand why that should= be >> >> visible in DT, but I can very well be missing something. >> >> >> > >> > I think you're thinking about some kind of detachable PCIe board with >> > this chipset on it. >> >> Exactly, a lot of WLAN boards are like this. >> >> > I refer to the QCA6390 chipset itself which is also more than just >> > PCI. The Bluetooth interface doesn't use PCI at all. On the boards I'm >> > working on, the chipset is just soldered to the main board. >> >> And I guess you are looking at Snapdragon boards only? >> > > But what is your point? My point (again) is that to me it look likes that you are looking this only for Snapdragon type of devices and ignoring the rest. I am looking at this to support _all_ type of devices and I want to make sure that we don't have any artificial restrictions to use ath11k or ath12k devices in upstream Linux. I could not find a public example of a QCA6390 M.2 board like I have, but here's one for QCA2066: https://compex.com.sg/shop/wifi-module/wlt206h-wifi6-ble5-1-11ax-qca2062-qc= a2065/ QCA2066 is a mobile chipset supported by ath11k, similarly like QCA6390. It's just newer and different features, and with a different PCI id. In the past using these kind of M.2 boards for Wi-Fi has been quite common but don't know how commit it is nowadays. >> > If your detachable board "just works" then it must be wired in a way >> > that enables WLAN the moment it's plugged in but this doesn't happen >> > over PCI. The chipset has a power input and GPIOs to enable each >> > module. >> >> I don't know how the boards are implemented but it could be so. But from >> host system point of view it's just a regular PCI device. >> > > And you don't need DT anyway for this type of devices. I wish we wouldn't need to use DT for such M.2 boards, but we do need to use qcom,ath11k-calibration-variant in some cases when the device (or the firmware) doesn't provide unique enough identifier to choose the correct board file automatically. I already mentioned the property in my earlier emails. I hope this clears up what I'm trying to say. --=20 https://patchwork.kernel.org/project/linux-wireless/list/ https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatc= hes