Received: by 2002:a05:6a10:5bc5:0:0:0:0 with SMTP id os5csp1340108pxb; Thu, 4 Nov 2021 00:02:14 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwVfPVh065qTK48kOcUx8+1YLFSeOusABBbWtNEOlMR/dPG+tomivBrWWY0nbFnVjPV0gx3 X-Received: by 2002:a17:906:2295:: with SMTP id p21mr19964317eja.35.1636009334522; Thu, 04 Nov 2021 00:02:14 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1636009334; cv=none; d=google.com; s=arc-20160816; b=07KZyfgy9OlIb4uqCicf436QhHlJL4NH2bghWf7bWepXs1yJ/8ySJ4AW3Sm5VdOchx Aw9tK38X5oqrUrNEMwRiBcgfmauifk6xYETtsNG9HPSyAMDqzmKnSulIGbySF9yt3el8 lMK/bKiLypApBNG2AKY2jjgnZnN461V74xrAWmPlgaSStU8j+hSETCA9o8CTpKyPeyGE 07MsyaqA8TBh+wpkx6fevqisSzN4L6ESAJ7FErGDlR/rBCVkUs8oAx/0ZJXYI6lFoQUq olI7X+xWCIoylTMmO5d4DEVUjc0yD+WLekFwa8eYLGUom3iG1/xXGPfYzE6/d10BiL9q FUDQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:user-agent:message-id:references:in-reply-to :subject:cc:to:from:date:content-transfer-encoding:mime-version :sender:dkim-signature; bh=wCODyeGtt62o85Tp9gVUq0qFHjGRtF5/l1WWF1gUykw=; b=SGxlwmuYH4MwCxP79PsvzyAIrw2wuCnKhhkBDInvgm8VTHrOMH0fn4fj5nyFCajhCj MTa/jAcYHKuJf1VNDS4tOZDmDxVg0bUSq8Y3yeYObZKu4cXX3bVzC3BB3kehyaZBa1W2 qdilOWtZN9elmyhZW1pg+JDeQ8pvoO/Nzcs8ZuAbJ5YyKMnalbTiGg+0IDLfe169YeEO 7/XgX5dl1Ug3cfhXruiXRHkFhcXc3aeZts9y7oE8CcQQh6Fu2jSTsk1fnqbT60BzbjLK Uf3lcay8Kq7CWxaa1tsVkApfvGuvJejyyXscN5qIPQQnGxsZTZeRIpxo3JMotaXledhV nCOw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@mg.codeaurora.org header.s=smtp header.b=YNVZxTXQ; spf=pass (google.com: domain of linux-bluetooth-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-bluetooth-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id n7si6442786ejl.237.2021.11.04.00.01.31; Thu, 04 Nov 2021 00:02:14 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-bluetooth-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@mg.codeaurora.org header.s=smtp header.b=YNVZxTXQ; spf=pass (google.com: domain of linux-bluetooth-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-bluetooth-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230390AbhKDHDS (ORCPT + 99 others); Thu, 4 Nov 2021 03:03:18 -0400 Received: from so254-9.mailgun.net ([198.61.254.9]:47049 "EHLO so254-9.mailgun.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230155AbhKDHDQ (ORCPT ); Thu, 4 Nov 2021 03:03:16 -0400 DKIM-Signature: a=rsa-sha256; v=1; c=relaxed/relaxed; d=mg.codeaurora.org; q=dns/txt; s=smtp; t=1636009239; h=Message-ID: References: In-Reply-To: Subject: Cc: To: From: Date: Content-Transfer-Encoding: Content-Type: MIME-Version: Sender; bh=wCODyeGtt62o85Tp9gVUq0qFHjGRtF5/l1WWF1gUykw=; b=YNVZxTXQjFqilZW3V6a6J/HrR0hKurkQZC9zjJ5bR3hhM/0oYgiGQu4i+wPB1OHpQ6QKMIQ9 5ZDjU0Ksbi2hjXsZVUPlsQKAbAiXqaH3B8l39cMtELw4nlq7RpGruj7v0lWvAo3jpS64Pp1l gY8TYRlbWD1T+jQkKT/1KBEojTg= X-Mailgun-Sending-Ip: 198.61.254.9 X-Mailgun-Sid: WyI2MTA3ZSIsICJsaW51eC1ibHVldG9vdGhAdmdlci5rZXJuZWwub3JnIiwgImJlOWU0YSJd Received: from smtp.codeaurora.org (ec2-35-166-182-171.us-west-2.compute.amazonaws.com [35.166.182.171]) by smtp-out-n05.prod.us-west-2.postgun.com with SMTP id 6183850d7d93184cc71f6ff2 (version=TLS1.2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256); Thu, 04 Nov 2021 07:00:29 GMT Sender: tjiang=codeaurora.org@mg.codeaurora.org Received: by smtp.codeaurora.org (Postfix, from userid 1001) id 8941EC4360C; Thu, 4 Nov 2021 07:00:29 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-caf-mail-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-2.9 required=2.0 tests=ALL_TRUSTED,BAYES_00 autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.codeaurora.org (localhost.localdomain [127.0.0.1]) (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) (Authenticated sender: tjiang) by smtp.codeaurora.org (Postfix) with ESMTPSA id B731EC43460; Thu, 4 Nov 2021 07:00:28 +0000 (UTC) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Date: Thu, 04 Nov 2021 15:00:28 +0800 From: tjiang@codeaurora.org To: Marcel Holtmann Cc: Johan Hedberg , Luiz Augusto von Dentz , Linux Kernel Mailing List , linux-bluetooth , MSM , Balakrishna Godavarthi , c-hbandi@codeaurora.org, Hemantg , Matthias Kaehlcke , Rocky Liao , zijuhu@codeaurora.org Subject: Re: [PATCH v2] Bluetooth: btusb: using big-endian definition for board_id in struct qca_version In-Reply-To: <90D7F483-BCD9-430C-94EA-4018237ABE36@holtmann.org> References: <90D7F483-BCD9-430C-94EA-4018237ABE36@holtmann.org> Message-ID: <10a208f1f34817a756bb20052537c683@codeaurora.org> X-Sender: tjiang@codeaurora.org User-Agent: Roundcube Webmail/1.3.9 Precedence: bulk List-ID: X-Mailing-List: linux-bluetooth@vger.kernel.org Hi Marcel: yeah , you are right, but in fact we mixing little-endian and big-endian is defined by qc btsoc(have some reason), so host only should be align with it , I will make another change , need your help to review, thank you. regards. tim On 2021-11-03 22:24, Marcel Holtmann wrote: > Hi Tim, > >> As we name nvm file by using big-endian for boardID, so align host >> with it. >> >> Signed-off-by: Tim Jiang >> --- >> drivers/bluetooth/btusb.c | 4 ++-- >> 1 file changed, 2 insertions(+), 2 deletions(-) >> >> diff --git a/drivers/bluetooth/btusb.c b/drivers/bluetooth/btusb.c >> index 46d892bbde62..08a1c6d8390f 100644 >> --- a/drivers/bluetooth/btusb.c >> +++ b/drivers/bluetooth/btusb.c >> @@ -2883,7 +2883,7 @@ struct qca_version { >> __le32 rom_version; >> __le32 patch_version; >> __le32 ram_version; >> - __le16 board_id; >> + __be16 board_id; >> __le16 flag; >> __u8 reserved[4]; >> } __packed; >> @@ -3072,7 +3072,7 @@ static void btusb_generate_qca_nvm_name(char >> *fwname, size_t max_size, >> u16 flag = le16_to_cpu(ver->flag); >> >> if (((flag >> 8) & 0xff) == QCA_FLAG_MULTI_NVM) { >> - u16 board_id = le16_to_cpu(ver->board_id); >> + u16 board_id = be16_to_cpu(ver->board_id); >> const char *variant; > > my original comment still stands. Are you sure you are doing this > correctly. The in-memory layout of your NVM is mixed little-endian and > big-endian? Really? Or do you want to convert back from host endian to > big endian? > > You commit message text suggest that you have to do this: > > diff --git a/drivers/bluetooth/btusb.c b/drivers/bluetooth/btusb.c > index 46d892bbde62..55a33a5fea56 100644 > --- a/drivers/bluetooth/btusb.c > +++ b/drivers/bluetooth/btusb.c > @@ -3090,7 +3090,7 @@ static void btusb_generate_qca_nvm_name(char > *fwname, size_t max_size, > rom_version, variant); > } else { > snprintf(fwname, max_size, > "qca/nvm_usb_%08x%s_%04x.bin", > - rom_version, variant, board_id); > + rom_version, variant, > cpu_to_be16(board_id)); > } > } else { > snprintf(fwname, max_size, "qca/nvm_usb_%08x.bin”, > > And really, I can not do this anymore. Write lengthy commit messages > explaining your change in detail. I am not looking a patches anymore > until they have a proper paragraph explaining the change and why it is > correct. > > Also this change had v16 before I merged and even in that version I > had to fix issues. Please stop wasting my time. I have no idea why > this wasn’t caught earlier. It is a fundamental flaw. I am close to > just reverting the previous patch since it seems it clearly needs more > testing. > > Regards > > Marcel