Received: by 2002:a05:7208:13ca:b0:7f:395a:35b6 with SMTP id r10csp21274rbe; Wed, 28 Feb 2024 09:19:22 -0800 (PST) X-Forwarded-Encrypted: i=3; AJvYcCXfjWK7YuUxzYvgJiNTqWDfG8DVbjYlYbEOKrwSYCdWCm15UBGHUbPA2Yb4KVtTJ/OwmfHqas69G048OmigPubSywPacxCVLz2zzeRXLw== X-Google-Smtp-Source: AGHT+IGLo7tTHr2tKWLFlZPejCrTStiUESLo5SOKJkUT/e/AbBhjAQhVc4jZ5xo/FQRykBfsg8yH X-Received: by 2002:a17:906:1c8c:b0:a3e:b523:90b with SMTP id g12-20020a1709061c8c00b00a3eb523090bmr272430ejh.14.1709140762675; Wed, 28 Feb 2024 09:19:22 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1709140762; cv=pass; d=google.com; s=arc-20160816; b=hJCw47pfHl77uNEmLi9n2crUsV3V8rYXQPbz0Nnc6DFG8M6UFew+VTSqNFsAwuA5Nx X+0kjDCVBPmzX9Zx7D7kY9iU/Sa0IAvn15+fe6MkVSl2kvmRwizRd5VGIXZbKYLjqoaN gRQabqdfKXB1WegNCmZj8GGH2aZi+S56JQh5kBYfRFfz0oYayJ0JIMKe5tn4/tlcR2Tx Ca9qUBdaxUs6FgWBj60+YB6S5WjWC0C3TLPxVmmkZlKZgx5+yW/jm2UzxxeUM5iDZ7NO c/1BZK8TREUTHvlxX0wLwYEtrgh2Y35KIS0zaBpbbuW7sa7q5PoXQXnaZo8ewnxyY/wL QAjw== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:list-unsubscribe :list-subscribe:list-id:precedence:date:message-id:dkim-signature; bh=likxxYoOfEMuAKtEYTDM9v8GLGgkDJojgZCQVbAvfQM=; fh=N1xX2K6rUzBwfmpXu8DrViI7mYsB8Fp84jAVIQ1ERnI=; b=eQwJhz50PQTz702fd9Ye3QrKdohCVbLCr0RmPdDBP1sfOH9tScOkDjlW9FR1rgK+eZ ukihJf9Wwg56ouRNf51obWVMD6IoFwZwXTTm6BWCj3o5c8IBs9teV/0lD6vFCCLwFdgM THccPA3yw1EVPr5OQs4abL7kNGZNqURpRO+YZSIyoCSnrYaF0HYNgeckhf3pSSYQmOCh srtPxogoUfyxRES2r7XaBpr4N5j0IGNUf5F5pF+aEqapuI0FW/FCPeNckHSAeENCCZoI OcDhuo6yAnNGGxx7IAM6dIQVq8un4Cm8qFq2MYO0O3iak9yXFrC0ClE9R/aMSQOHur/1 sGUg==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@freebox-fr.20230601.gappssmtp.com header.s=20230601 header.b=DXrmfXjQ; arc=pass (i=1 spf=pass spfdomain=freebox.fr dkim=pass dkdomain=freebox-fr.20230601.gappssmtp.com); spf=pass (google.com: domain of linux-wireless+bounces-4211-linux.lists.archive=gmail.com@vger.kernel.org designates 147.75.80.249 as permitted sender) smtp.mailfrom="linux-wireless+bounces-4211-linux.lists.archive=gmail.com@vger.kernel.org" Return-Path: Received: from am.mirrors.kernel.org (am.mirrors.kernel.org. [147.75.80.249]) by mx.google.com with ESMTPS id oy9-20020a170907104900b00a3fc622b1a8si1861909ejb.595.2024.02.28.09.19.22 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 28 Feb 2024 09:19:22 -0800 (PST) Received-SPF: pass (google.com: domain of linux-wireless+bounces-4211-linux.lists.archive=gmail.com@vger.kernel.org designates 147.75.80.249 as permitted sender) client-ip=147.75.80.249; Authentication-Results: mx.google.com; dkim=pass header.i=@freebox-fr.20230601.gappssmtp.com header.s=20230601 header.b=DXrmfXjQ; arc=pass (i=1 spf=pass spfdomain=freebox.fr dkim=pass dkdomain=freebox-fr.20230601.gappssmtp.com); spf=pass (google.com: domain of linux-wireless+bounces-4211-linux.lists.archive=gmail.com@vger.kernel.org designates 147.75.80.249 as permitted sender) smtp.mailfrom="linux-wireless+bounces-4211-linux.lists.archive=gmail.com@vger.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 am.mirrors.kernel.org (Postfix) with ESMTPS id 477301F26B45 for ; Wed, 28 Feb 2024 17:19:22 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 8E3533FBB8; Wed, 28 Feb 2024 17:19:11 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=freebox-fr.20230601.gappssmtp.com header.i=@freebox-fr.20230601.gappssmtp.com header.b="DXrmfXjQ" X-Original-To: linux-wireless@vger.kernel.org Received: from mail-lf1-f43.google.com (mail-lf1-f43.google.com [209.85.167.43]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id CB7AB3FBB4 for ; Wed, 28 Feb 2024 17:19:07 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.167.43 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1709140751; cv=none; b=iyZDfsxexAlX4Wc4noLCF0RG3ZfRLAgMzVbuGpk91N5c5bMGSmWL9MWXrv/9+odBmkZKP9D4Lpgk4bqrYf6nE1qdGQAggwNWEU+SB2Jv+esqZnv/WsqMbLfmuqxDkfMXF46s5waAh9mEQ/OzPiAPBTtNuE497tzo12gDZnD7pRY= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1709140751; c=relaxed/simple; bh=aFsYKNxuMdtcs33QU/5Jsqcp+ASWrz7gi1ostsw1AUI=; h=Message-ID:Date:MIME-Version:Subject:To:Cc:References:From: In-Reply-To:Content-Type; b=qfCxG+iWWJvkXxahTSoRC+LVrCeo1ZZK1MG1FMv9dBOA1cI+vaEq3AC14MK21b4QqunnXy57XTTBtPFHQq3eoW/wee/5eJiwH7qBFgRM2oWJTljSO6Lf+mV0BY7skZMaDjycajXEjtBldhuBuPul4zy4KbdPiwkATwoo1KLRXgA= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=freebox.fr; spf=pass smtp.mailfrom=freebox.fr; dkim=pass (2048-bit key) header.d=freebox-fr.20230601.gappssmtp.com header.i=@freebox-fr.20230601.gappssmtp.com header.b=DXrmfXjQ; arc=none smtp.client-ip=209.85.167.43 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=freebox.fr Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=freebox.fr Received: by mail-lf1-f43.google.com with SMTP id 2adb3069b0e04-512be9194b7so6009355e87.1 for ; Wed, 28 Feb 2024 09:19:07 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebox-fr.20230601.gappssmtp.com; s=20230601; t=1709140746; x=1709745546; darn=vger.kernel.org; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=likxxYoOfEMuAKtEYTDM9v8GLGgkDJojgZCQVbAvfQM=; b=DXrmfXjQSajsclQwZGhOS9uebMhrSySXVGzI/eiLLTMg2I1OoZ2Lsbokbx00WldgDo lrOzLK32H7nT/8ce9V8Pnj+kURYG3XsqcbkOzrj40YXx09tFIhMECf8xlm1qyB9vz1aP SxvdZ4Dv6ZBW044erGyiQPo3bBqvT9l1zvp2WM4GURvvL1v6zW/UaqMrhXfx0f0FWHkK 7dzv+stdKWwfOhqXpn2tXiol8utcKFs+JZlrPUyHN47ZV3Zg2aj87liO9Wd8obwHtE/B ZdEz9Dv4hwzlk2w2jDU1j+PTQuGIWokbufBtU8dtG3YL7yNGbOVaQPgvIbbBYhzf4QAT 1joQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1709140746; x=1709745546; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=likxxYoOfEMuAKtEYTDM9v8GLGgkDJojgZCQVbAvfQM=; b=Jkewavlg86Ryu+6UUcHKvbWe9LSFoSQ1P0+IqLyWHfRcJZ2YhSXIlogdtojn97N0Ea TgP1n9Mz7oo6K5wIa76vfzcrmDL/NVxzCQlVxVtNsq8sl3lpp2EP6JGoe0mfdUQJJf7k dUU3doQ0YijLh2PQiC10ZRB0xmcYYzxUrx2A5s1qyoDQygrVzBOhi5DGDsSaDdvitbdM DBa0byULVWyghbRqiAZJhoKVBjT++C3JU+FZrQCd1tsrivF2t+ynpLznr8skxgiZeVW4 XKuKjGXHUlz4srtjyPlxFmcowhWEK5AvUigUALGS7lnslo+K2nODDYTce72LnrnOihdL 2k7w== X-Forwarded-Encrypted: i=1; AJvYcCXbSJnVo4+EFbplwLJlLy5FAhxdukjMhbVsCmbg+pbiUj3qWfqvlcwg4fuHpZhrU6ieT06XKJu+PGZ6v71rYqMmZ14iqOYCOWXIK76fXXA= X-Gm-Message-State: AOJu0YxyhKUYwDH0vGisVJ7MeFdFxZhtTW8ZF2P4/ewbab6Pn9wcXgAi V5hpYBlG9QMDRVBswiQpemt7yYlaZcZqTAlpHKJ5h9yY43g9fiSngV7nMJd5KUI= X-Received: by 2002:a05:6512:398f:b0:512:b372:4eed with SMTP id j15-20020a056512398f00b00512b3724eedmr296674lfu.8.1709140745602; Wed, 28 Feb 2024 09:19:05 -0800 (PST) Received: from ?IPV6:2a02:8428:2a4:1a01:6dfa:263f:dd7e:9456? ([2a02:8428:2a4:1a01:6dfa:263f:dd7e:9456]) by smtp.gmail.com with ESMTPSA id a21-20020a05600c349500b00412b10ce488sm2803097wmq.23.2024.02.28.09.19.04 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 28 Feb 2024 09:19:05 -0800 (PST) Message-ID: Date: Wed, 28 Feb 2024 18:19:03 +0100 Precedence: bulk X-Mailing-List: linux-wireless@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH 1/2] dt-bindings: net: wireless: ath10k: add qcom,no-msa-ready-indicator prop Content-Language: en-US To: Kalle Valo Cc: Jeff Johnson , ath10k , wireless , DT , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Pierre-Hugues Husson , Jami Kettunen , Jeffrey Hugo References: <14daa98e-7fd3-4ebb-87bb-5d2c1fba679f@freebox.fr> <871q8wk7o3.fsf@kernel.org> <3392f356-7b19-483d-b9f8-3bd84068fa52@freebox.fr> <87wmqoilzf.fsf@kernel.org> From: Marc Gonzalez In-Reply-To: <87wmqoilzf.fsf@kernel.org> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit On 28/02/2024 17:37, Kalle Valo wrote: > Marc Gonzalez writes: > >> On 28/02/2024 15:03, Kalle Valo wrote: >> >>> Marc Gonzalez writes: >>> >>>> + qcom,no-msa-ready-indicator: >>>> + type: boolean >>>> + description: >>>> + The driver waits for this indicator before proceeding, >>>> + yet some WCNSS firmwares apparently do not send it. >>>> + On those devices, it seems safe to ignore the indicator, >>>> + and continue loading the firmware. >>> >>> This sounds more like a firmware feature, not a hardware feature. What >>> about having a flag in enum ath10k_fw_features in firmware-2.bin? >> >> Are you using the word "feature" as in "it was done purposefully" ? > > No, there's no bigger meaning like that. It's more like ath10k has to do > something differently when a certain bit is enabled in the firmware. I > just had to pick a word for the enum and from my limited vocabulary I > chose "feature" :) Understood! >> Is enum ath10k_fw_features also supposed to include work-arounds? > > Yes, and we already use. > >> Sorry, I've grepped over the entire Linux source code, >> and I cannot find where ath10k_fw_features is used, >> other than in ath10k_core_get_fw_feature_str(). > > Here's one example where in ath10k we use a feature bit as a workaround: > > /* Don't trust error code from otp.bin */ > ATH10K_FW_FEATURE_IGNORE_OTP_RESULT = 7, > > .... > > if (!(skip_otp || test_bit(ATH10K_FW_FEATURE_IGNORE_OTP_RESULT, > ar->running_fw->fw_file.fw_features)) && > result != 0) { > ath10k_err(ar, "otp calibration failed: %d", result); > return -EINVAL; > } > > BTW for modifying firmware-N.bin files we have a script here: > > https://github.com/qca/qca-swiss-army-knife/blob/master/tools/scripts/ath10k/ath10k-fwencoder If I understand correctly, you are saying that there is (maybe... probably) a bug in the FW, so it makes sense to tag that specific FW file with a special bit which the kernel will interpret as "this FW is broken in a specific way; and here's how to work around the issue." So this bit would serve the same purpose as my proposed "qcom,no-msa-ready-indicator" bit (that bit existed instead in my board's device tree). The problem I see is that the firmware files are signed. Thus, changing a single bit breaks the verification... UNLESS the FW format allows for a signed section ALONG-SIDE an unsigned section? >> As mentioned in my other reply, there are several msm8998-based >> devices affected by this issue. Is it not appropriate to consider >> a kernel-based work-around? > > Sorry, not following you here. But I'll try to answer anyway: > > I have understood that Device Tree is supposed to describe hardware, not > software. This is why having this property in DT does not look right > place for this. For example, if the ath10k firmware is fixed then DT > would have to be changed even though nothing changed in hardware. But of > course DT maintainers have the final say. At some point, we start wandering into meta-physical considerations such as "if FW cannot ever be changed, when does FIRM become HARD?" (and other GPLv3 niceties). But this is a discussion for another list. Regards