Received: by 2002:ab2:6816:0:b0:1f9:5764:f03e with SMTP id t22csp932835lqo; Fri, 17 May 2024 06:12:37 -0700 (PDT) X-Forwarded-Encrypted: i=3; AJvYcCUqGffJKrEh1ex6yrM4ZslwwndlUMTeEkjEw9872jSlQzEv8HFHzO4Oj5SywB8To1DTB5epY+Dy5o7sHUfZdyFqGeZ2VWy0P3AFQ1h7Ww== X-Google-Smtp-Source: AGHT+IEfCotaGLBdJNHsslh9hHOkDJYGVXMNMQa8cmmyKVfz1za8horacbIzNHlsob3Ce4SWquog X-Received: by 2002:a17:906:234d:b0:a5c:fc25:2730 with SMTP id a640c23a62f3a-a5cfc2528d2mr251955866b.4.1715951557168; Fri, 17 May 2024 06:12:37 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1715951557; cv=pass; d=google.com; s=arc-20160816; b=WZJQ2lUWvJDjYObsXmesA0eY9SlaNU3OmidYmcvqBjdY1P7M74KMnzz2EUFfPFJ07W til2iQfGK6dG1ru4knWJVIQD173njb7JWYVWAYLCvm3T0aMHe7YoCqp+iBjE3EkaBkdQ m+A+ng6eyoPnJCm7PvLkINbeyzYd1GABWui30RoR5UNC1BY1o9sB+MtqA518o9BKvpjX JZf6aZZWc7a2H3JzAE0ROmDcZE40ff+LsvqOrHVZ65Qnejpz7MtCrSgp+mPovMvzj1Tf sXB/7uJAaLlQRwralX2lW6s+o0/nP0YRd2iG/hssPP+KgFwsj2ATovSSotOLhSHjtm9e OJrA== 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:message-id:date:subject:cc:to :from:dkim-signature; bh=wmCtmVNEXpgrtNBrcvR9CW41gUYFOc3+DIiY94reqE0=; fh=Gg33OXRnrPRrTdx+nczYYEEAdxDOorVRrtzYqt0L5Tg=; b=dUM05K7qL/85bfjW5q/O1Cp1DYaGKHkHW9HXdTK1ZIaC+1zrebF+024lOoH91F0wET BwFeMMtWsK6xnJqswSw3NCeIOXE6FTT5+zSFerR/YG13L9p7g6vSL7Nsn8ayMlwEbuGG 6R2cdtLrMWywBfO57ztdSkEWrWSppiCsLvcCAr4d1Ozy2T3Impz6ZLt1o+9x4IwHbEdT ewrjI08EjrT2v/08cBZJOp7psddRZAgOJ7B9sEIuT0MtNNACaKcdm/TibgW/gQLFyalI Cu5lkx2uCcNO2iJ8OPYryzaWRoezCOMOhlXHfDvQ6DVK5docDo3h7f62+S/WgIRVfcGO 9tog==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@asymptotic.io header.s=google header.b=IcV59WWH; arc=pass (i=1 spf=pass spfdomain=asymptotic.io dkim=pass dkdomain=asymptotic.io dmarc=pass fromdomain=asymptotic.io); spf=pass (google.com: domain of linux-bluetooth+bounces-4726-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:4601:e00::3 as permitted sender) smtp.mailfrom="linux-bluetooth+bounces-4726-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=asymptotic.io Return-Path: Received: from am.mirrors.kernel.org (am.mirrors.kernel.org. [2604:1380:4601:e00::3]) by mx.google.com with ESMTPS id a640c23a62f3a-a5a17b21d56si982437666b.371.2024.05.17.06.12.37 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 17 May 2024 06:12:37 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-bluetooth+bounces-4726-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:4601:e00::3 as permitted sender) client-ip=2604:1380:4601:e00::3; Authentication-Results: mx.google.com; dkim=pass header.i=@asymptotic.io header.s=google header.b=IcV59WWH; arc=pass (i=1 spf=pass spfdomain=asymptotic.io dkim=pass dkdomain=asymptotic.io dmarc=pass fromdomain=asymptotic.io); spf=pass (google.com: domain of linux-bluetooth+bounces-4726-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:4601:e00::3 as permitted sender) smtp.mailfrom="linux-bluetooth+bounces-4726-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=asymptotic.io 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 9C8021F23621 for ; Thu, 16 May 2024 14:55:28 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id B8FAF14B970; Thu, 16 May 2024 14:55:21 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=asymptotic.io header.i=@asymptotic.io header.b="IcV59WWH" X-Original-To: linux-bluetooth@vger.kernel.org Received: from mail-ed1-f52.google.com (mail-ed1-f52.google.com [209.85.208.52]) (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 C9A7E145B0B for ; Thu, 16 May 2024 14:55:18 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.208.52 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1715871321; cv=none; b=XcRci7G5F3TQiAwlyRJ/RKvTNzZBuBZs4559dZPZQ1SefOxMIVmXbEske/6oJT7yA5mtRJ3UBZWzFXwdwrKAmVv0dxYEMjnWxP0MdKF8Mpd3Yk/pA1q/y10SJJdxNBy0OceOh/KFOtCqiXQbBLHwcNDvZKZY2RU5McW8xj8+q7E= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1715871321; c=relaxed/simple; bh=L4jLJ7Q1la7GhlLshX+L5XQocGu3DXg2NAga/TRMuLk=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=ok6N8XDDJdugSsoNXfYEvtD+cjOb3N3cDTwEqlmkWB6OnZMzhGxsiba+AH9ZOsZ4fhgkQ/qJYzFpT8pCeEPi+zxtsRvqedwjoqtUdqtgswRTqIsxPqlwWchdwnqUXjW8jTNTn43coLLb1l0n3HpfFZptBcNltQsFROZFTdvMRxc= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=asymptotic.io; spf=pass smtp.mailfrom=asymptotic.io; dkim=pass (2048-bit key) header.d=asymptotic.io header.i=@asymptotic.io header.b=IcV59WWH; arc=none smtp.client-ip=209.85.208.52 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=asymptotic.io Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=asymptotic.io Received: by mail-ed1-f52.google.com with SMTP id 4fb4d7f45d1cf-56e37503115so2613421a12.1 for ; Thu, 16 May 2024 07:55:18 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=asymptotic.io; s=google; t=1715871317; x=1716476117; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=wmCtmVNEXpgrtNBrcvR9CW41gUYFOc3+DIiY94reqE0=; b=IcV59WWHrYraUVZRZ6VMOYFkvrcZABB+2t97JNTNKnJMTQxqIvRK7X1Eqywl9WyaSK amHfL6Aj+6RpoF2eItbEhuWQ6hUfzUzkGOPryf6E2ouUjfmlaG/3AyuBBlGeyo8FlHkL 0s1DJqUzSXmar4EeVbmpQtjh70s+0Ub7Vmc5QCu7vxm0sOmbTE/FeeIy7c0K2R4DGz4I kPrNtkAuoELdOElnJEiWUj4f3j/ajJd/eo046gdeR2mB5UWtR6nvHxp4p1hamJGE0I4g SkrY1UNAqdbThG70WtvzZPIWByoV9GcC3AWWLS5crYwNS/ZNSgLi184mRFCuhCfR4oPU wmkg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1715871317; x=1716476117; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=wmCtmVNEXpgrtNBrcvR9CW41gUYFOc3+DIiY94reqE0=; b=TD6oUSOH27MCot6pgdxWtahSrPWrI+JDIv0cJg/TZe5Q+upcytgJ3lF72c7+7CCY2n WSpUaCCC7d+1L30SZl2Kj6eBHEj5CzN/orpGzyuOWk56+/6lq1CXZtZxod7cqSZlHQ1B CATg2xr6uuH1zPwt6YKJSlFNeYpffqE2gcgKMCz2iMuphLMuVGMqBIEh+zYuK8NNTYIW yVR94fZLjALhLY9NS2ZFV2EFvCEqRnLs/XhXX0uvFANx1vMuA1dtpt/C3FqTZU9twknG 7ppRW/BGVjAG0XazEzvyhi4wTHcN6bClIQwKLam0wWK7zCQTXqkB/woKnQIP2kfZhKw/ TOQA== X-Gm-Message-State: AOJu0YwVQDafADhmI1g+bmLrEukzeT1+Ll7C/eTvLeaK8gGjbJ8/o3YP RYeXZ9k6wniN7fIJeT7MdcITJIugaWvV/RasO+Zo5AFX0JFNoISCBoB2K3XztmgIE7OJArDsCqD VkFk= X-Received: by 2002:a50:d4cb:0:b0:570:1ea8:cd1c with SMTP id 4fb4d7f45d1cf-5734d6b0e0amr13616852a12.35.1715871316585; Thu, 16 May 2024 07:55:16 -0700 (PDT) Received: from andromeda.lan ([74.15.47.99]) by smtp.gmail.com with ESMTPSA id 4fb4d7f45d1cf-574b6f6c53asm7484372a12.16.2024.05.16.07.55.15 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 16 May 2024 07:55:15 -0700 (PDT) From: Arun Raghavan To: linux-bluetooth@vger.kernel.org Cc: Arun Raghavan Subject: [PATCH BlueZ,v4 0/5] ASHA plugin Date: Thu, 16 May 2024 10:54:56 -0400 Message-ID: <20240516145501.134118-1-arun@asymptotic.io> X-Mailer: git-send-email 2.45.0 Precedence: bulk X-Mailing-List: linux-bluetooth@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Hi all, This is v4 of the ASHA plugin. The previous version used an MTU of 161, which does not account for the SDU length in the CoC frame, causing sends to be fragmented. We now add another 2 bytes for that, which makes sending cleaner. Cheers, Arun Arun Raghavan (5): src/shared: Add initial implementation for an ASHA profile profiles/audio: Add an ASHA plugin test: Add a script to test ASHA gitignore: Add compile_commands.json gitignore: Add __pycache__ .gitignore | 3 + Makefile.am | 3 +- Makefile.plugins | 5 + configure.ac | 4 + lib/uuid.h | 3 + profiles/audio/asha.c | 336 ++++++++++++++++++++++++ profiles/audio/media.c | 30 +++ profiles/audio/media.h | 2 + profiles/audio/transport.c | 173 ++++++++++++- src/shared/asha.c | 505 +++++++++++++++++++++++++++++++++++++ src/shared/asha.h | 73 ++++++ test/simple-asha | 158 ++++++++++++ 12 files changed, 1292 insertions(+), 3 deletions(-) create mode 100644 profiles/audio/asha.c create mode 100644 src/shared/asha.c create mode 100644 src/shared/asha.h create mode 100755 test/simple-asha -- 2.45.0