Received: by 2002:a05:6a10:2785:0:0:0:0 with SMTP id ia5csp413757pxb; Wed, 13 Jan 2021 06:52:03 -0800 (PST) X-Google-Smtp-Source: ABdhPJwRpPtn5c7dRtB95EviTzi+5kcy1vBP/XBkZ/UyYOkHYOfc38cXfFDQpk0hIcuprhDKnqeH X-Received: by 2002:a17:906:58f:: with SMTP id 15mr1781624ejn.67.1610549523427; Wed, 13 Jan 2021 06:52:03 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1610549523; cv=none; d=google.com; s=arc-20160816; b=N/h4D6m6bFhzptTPb8WHp2pKtfidq8UMYaCgzatU+0KXGoIn3ZB2S7J3qMkDGCgeND j62vZYtDAlZFZp8BTopowMApNQsJww1HbAOFHaLMmvt74+97CkCdgqeTbokc75tYi5ol L5+TM1+vwiKm6u4Zp4L3Faxi3XMQ7RT0SJ/20GRt+/mD5rezQqTI1eqgfYtcYSDPdJma KCKQcHhZS+no2gA/ngfJ6SBIO25RK9KhacEwuFc2+Wmy9DoZ+q738riMMnuu/lwTdyNR 60LnVs3tpRClkn7qeJsJnGWavlqLkOHwjyZomDOA6k+LRMFzjXdFDA1HaVAyLpXI5mq0 uNjw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:user-agent:in-reply-to:content-transfer-encoding :content-disposition:mime-version:references:message-id:subject:cc :to:from:date:dkim-signature; bh=+zqy5rGbqb+ZM/jVP029ANOOW9ubUr4tgSt0oLare6s=; b=vT1BWM3YJq5vzzTgDKXGDDdEiiWGE9bsjnhinHmDPRak7pgAO9g5WMVMKLBg5O46ko duxiHjurW/Dzt7KM9n0iBegde98PEXO+cdcgDY1sdmQQOkplZJVr1ZGtTTaZxeg/upgT 2Kk6cg78gWPAoOEJUnnXXVpQPgLDNPRcSxe7zJNbhf9hdo5dh+wSnxgv03CfmGe/pWy3 Ss/pK03ectnbwplBjEDNTMaMfIHZxjH0HTzDInboF1ImgZaFw+WFlGNk/uf55qIMDbeL ASV9piaCrtrn/IpREHfvXwo45ORD9K4RmgnILn8xAWWBOHLGT/kAaxxsv7L4RWSZjIIV 7tng== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=Tj25B7uN; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id f7si1010236ejx.294.2021.01.13.06.51.01; Wed, 13 Jan 2021 06:52:03 -0800 (PST) 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=@kernel.org header.s=k20201202 header.b=Tj25B7uN; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727109AbhAMOre (ORCPT + 99 others); Wed, 13 Jan 2021 09:47:34 -0500 Received: from mail.kernel.org ([198.145.29.99]:49306 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727102AbhAMOre (ORCPT ); Wed, 13 Jan 2021 09:47:34 -0500 Received: by mail.kernel.org (Postfix) with ESMTPSA id EFF9F2313C; Wed, 13 Jan 2021 14:46:53 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1610549214; bh=v3aPVJ0p5J6rEfv3CEEw4tRh4E/LPzgmRGFcuL2kKEE=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=Tj25B7uNYGL8MLzqUZemjmtSGfvCHofR4tkXex27AtZ41mpr3KrXlV/bQ6Auea94Q RaLZudxXTNKBOL+6wI1SjYo5/NvrkEfdjhRPGTeHOyX7hay5Y5R+Soj3l71hA4ml84 ZNomrd6/RNyKWZeVarDicsMolN6yhyAzFn0btUnzWLeI+XUTSSVU8QUlbqadrUcG+a JJlCzfuITmQx9H9XxTcs2PLPDeNh2ShFiEHA8QIvuzKHWu0DH+0sxs6lHHoe7W9u8i tMQitHMAH3jtXC115DCS4yP731sxWxypjtLb8KyTtORXkj1F57u09Mwd4We4Av2rXO yNCyC+t9k6ORg== Received: by pali.im (Postfix) id 97C5076D; Wed, 13 Jan 2021 15:46:51 +0100 (CET) Date: Wed, 13 Jan 2021 15:46:51 +0100 From: Pali =?utf-8?B?Um9ow6Fy?= To: Luiz Augusto von Dentz Cc: Joakim Tjernlund , "linux-bluetooth@vger.kernel.org" Subject: Re: Default to HW mSBC on capable controllers ? Message-ID: <20210113144651.opemzlelw3baccm6@pali> References: <20201221211437.4s27cl6t4v27sugh@pali> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: User-Agent: NeoMutt/20180716 Precedence: bulk List-ID: X-Mailing-List: linux-bluetooth@vger.kernel.org On Monday 21 December 2020 17:54:56 Luiz Augusto von Dentz wrote: > Hi Pali, > > On Mon, Dec 21, 2020 at 1:14 PM Pali Rohár wrote: > > > > On Friday 18 December 2020 11:43:32 Luiz Augusto von Dentz wrote: > > > Hi Joakim, > > > > > > On Fri, Dec 18, 2020 at 10:48 AM Joakim Tjernlund > > > wrote: > > > > > > > > There seems to be quite a few USB controllers gaining the BTUSB_WIDEBAND_SPEECH which I guess means HW mSBC but currently there is no way to select this mode. > > > > Any idea if one could patch the kernel to default to HW mSBC and user apps like bluealsa/pulseaudio would just use it automatically? > > > > > > It is in our plan to support HW offloading, but that doesn't mean all > > > platforms will be supported since that depends on the PCM lines being > > > connected to BT controller in the first place. > > > > Dedicated PCM lines are used in embedded world and maybe also still in > > some mobile segment. I remember that e.g. Nokia N900 had this setup. And > > it was quite crazy how it was finally configured... but it worked! > > > > But this is nothing for classic x86 laptops with USB bluetooth > > controllers on classic intel bluetooth+wifi mPCIe cards where SCO > > traffic is routed via HCI (over USB). And not via dedicated PCM pins. > > Moreover I think there are not any mainstream laptop which have PCM pins > > on mPCIe slots usable for such bluetooth mPCIe cards. > > > > For classic desktop / laptop it is needed to deal with fact that SCO > > audio is routed via HCI (like A2DP) and therefore support for Enhanced > > Setup Synchronous Connection HCI command. > > > > AFAIK even for routing SCO over PCM when mSBC hw encoder is used, > > Enhanced Setup Synchronous Connection HCI command is required. > > So you are saying that we should do PCM over HCI and that would > actually work (meaning we have enough bandwidth)? From power point of > view this makes very little sense imo, since all the cycle we save on > no encoding we probably lose with more data to transmit I do not think so that this applies to all setups. And even if you have truth then at least CPU usage would be lower and CPU can be used for additional work. So I do not think that usage of HW encoder/decoder makes very little sense. In any case it can offload work from CPU.