From patchwork Wed Dec 26 11:28:11 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Shengjiu Wang X-Patchwork-Id: 10743007 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id CCAE0746 for ; Wed, 26 Dec 2018 11:38:06 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id ADBB428658 for ; Wed, 26 Dec 2018 11:38:06 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id A219228947; Wed, 26 Dec 2018 11:38:06 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-2.7 required=2.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_NONE autolearn=ham version=3.3.1 Received: from alsa0.perex.cz (alsa0.perex.cz [77.48.224.243]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 9138628658 for ; Wed, 26 Dec 2018 11:38:05 +0000 (UTC) Received: from alsa0.perex.cz (localhost [127.0.0.1]) by alsa0.perex.cz (Postfix) with ESMTP id DA68E267A78; Wed, 26 Dec 2018 12:28:20 +0100 (CET) X-Original-To: alsa-devel@alsa-project.org Delivered-To: alsa-devel@alsa-project.org Received: by alsa0.perex.cz (Postfix, from userid 1000) id ADE41267AEE; Wed, 26 Dec 2018 12:28:17 +0100 (CET) Received: from EUR01-DB5-obe.outbound.protection.outlook.com (mail-eopbgr150058.outbound.protection.outlook.com [40.107.15.58]) by alsa0.perex.cz (Postfix) with ESMTP id 17E272678D4 for ; Wed, 26 Dec 2018 12:28:12 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ZdWpVT9ww9DfNsIbv+gBL2Sh+G94FgOOJIGPgV2+HxQ=; b=vWr8k+BS8ZRpXtWCLIVEO0hJsR4uO0KpLy0k+4B8rvtM/Hpg6BfkmVzqsmRPz/fk4PKcVUpZCSs6QoY1OaiD1vFHIkwstGpVouHhTtkOVZCz0HRzR+CqWLy3xB0T5DJlQ7VaUtIBgIOdFFD5etW8E59/vUfnrchQ3Lfyj8nXDLw= Received: from AM0PR0402MB3379.eurprd04.prod.outlook.com (52.133.45.12) by AM0PR0402MB3764.eurprd04.prod.outlook.com (52.133.39.16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1471.20; Wed, 26 Dec 2018 11:28:11 +0000 Received: from AM0PR0402MB3379.eurprd04.prod.outlook.com ([fe80::1d2f:7daf:589b:2057]) by AM0PR0402MB3379.eurprd04.prod.outlook.com ([fe80::1d2f:7daf:589b:2057%4]) with mapi id 15.20.1446.027; Wed, 26 Dec 2018 11:28:11 +0000 From: "S.j. Wang" To: "alsa-devel@alsa-project.org" , "tiwai@suse.de" Thread-Topic: [PATCH] aplay: support no period wakeup option in argument Thread-Index: AQHUnQ4V8mq904m3PkesVKIty8rqIg== Date: Wed, 26 Dec 2018 11:28:11 +0000 Message-ID: <1545823678-15563-1-git-send-email-shengjiu.wang@nxp.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: git-send-email 1.9.1 x-clientproxiedby: HK0P153CA0023.APCP153.PROD.OUTLOOK.COM (2603:1096:203:18::35) To AM0PR0402MB3379.eurprd04.prod.outlook.com (2603:10a6:208:1a::12) authentication-results: spf=none (sender IP is ) smtp.mailfrom=shengjiu.wang@nxp.com; x-ms-exchange-messagesentrepresentingtype: 1 x-originating-ip: [119.31.174.66] x-ms-publictraffictype: Email x-microsoft-exchange-diagnostics: 1; AM0PR0402MB3764; 6:h7SESrVIaODWb6Zi/FkWwPtNkF/VxTw/0/Hgd/hCiKbQtUupAoNFGb8wJAyDAdnRVvjck4ZiGms6IpBYIPn9PNciDe6mvtfiErTDLTwzKlkz4HpBls93jNz4YZkdCs9hOOKszfNLZ9LjUaJLOiH6PzqBB3UuC3F6wgFVQW1g9nvFlbmsY+TaYS6XLiBxMKpAlVZXGsoT2yPXnD+X6kBxtPj9QtBOlhmj/UG7zV04cm2Z2Uu0m6Znl5URDwfSSSRYNBcP4f66lQalAkFlxkut5ePPw3a97YTKfSOoIHoq+7IRgnCFAwGVd4y+Ql1b32w2Rgz3m9B4rhsFQpEgGjbze9TjnyaUqKRigpae/G1JBV+G6ehy5RxNAf4oS/1vMOtKQ5JxJ8cAX0Tm7dMIZXb6rlDnK/NEzYnYoEhBdSNvhjSx3MmTNFGgh35EwWC9VngwmTy/7KLt7007Jx8hagTDpw==; 5:Ipxp+kXAjxjVGn2zqvtWjQqWYGjDTAjEpZKQl3fR0EftTzG3w5xKadv9Q5YAr82wWgjDU7LZwi0F/dBRrSv0+3CU79lnVzqpEz5Bl2rjukD3bleWAor9Xql9bATFFH8BK4QbhSmr/BV+9lzqThoSzqPxkzT1d6doz4SwCGEDkKQ=; 7:aW5xWntxB+Wx7PDabWoioeiL1UBnHA8EbUvRkIeJUHa4sgp+qYxtHIJaPW5IEIpr+xatpjDDt+VCXJi4CctW1p+Tc/0hiORtlWKxGqyybl2D1vS92rqIU/r9uotqsAk92sKGU38sO/DQhIQTlFmhDg== x-ms-office365-filtering-correlation-id: 07321f6f-ac50-4671-9932-08d66b253791 x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(5600074)(711020)(4618075)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(2017052603328)(7153060)(7193020); SRVR:AM0PR0402MB3764; x-ms-traffictypediagnostic: AM0PR0402MB3764: x-microsoft-antispam-prvs: x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(8211001083)(3230021)(908002)(999002)(5005026)(6040522)(2401047)(8121501046)(93006095)(93001095)(3231475)(944501520)(52105112)(3002001)(10201501046)(6055026)(6041310)(20161123558120)(20161123560045)(20161123562045)(20161123564045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(201708071742011)(7699051)(76991095); SRVR:AM0PR0402MB3764; BCL:0; PCL:0; RULEID:; SRVR:AM0PR0402MB3764; x-forefront-prvs: 0898A6E028 x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(346002)(376002)(39860400002)(366004)(136003)(396003)(199004)(189003)(2501003)(106356001)(97736004)(86362001)(105586002)(6486002)(25786009)(66066001)(6436002)(99286004)(316002)(110136005)(478600001)(386003)(6506007)(476003)(2616005)(486006)(102836004)(26005)(52116002)(186003)(53936002)(6512007)(305945005)(14454004)(256004)(36756003)(71190400001)(71200400001)(68736007)(2906002)(8936002)(8676002)(50226002)(81156014)(81166006)(7736002)(6116002)(3846002)(5660300001); DIR:OUT; SFP:1101; SCL:1; SRVR:AM0PR0402MB3764; H:AM0PR0402MB3379.eurprd04.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1; received-spf: None (protection.outlook.com: nxp.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam-message-info: M3W8pJlxqsuRtzDtX52UMlTH5MVI9ZjiYJUWbxxWg3HgX6mKvxXt6qMTd6Wr2ghzZWsSGm8RF9ubylHMiwDozVhXl9TNjy+cZZtsQNganJHYvU10660S3GKxkdn86jJD2ZUfdo76Sxf2+gSH2Mz3m3ayK5EaQRSVTVYDmPDPtlm0y31BG3W6ZFFm5u8G9zXt55JYIw7ZI60CISzitmWSsxSmdJJ+DJJukIpa37Ju4Px2qTtt3LHm5ulj59bCOrm6pimK9K9XLlw5ebQ8XMg8vRiCHzLY7+GjBPBrYe5IE3/Wcl8aq4Uil36/zgoroMw6 spamdiagnosticoutput: 1:99 spamdiagnosticmetadata: NSPM MIME-Version: 1.0 X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 07321f6f-ac50-4671-9932-08d66b253791 X-MS-Exchange-CrossTenant-originalarrivaltime: 26 Dec 2018 11:28:11.4754 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR0402MB3764 Subject: [alsa-devel] [PATCH] aplay: support no period wakeup option in argument X-BeenThere: alsa-devel@alsa-project.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Alsa-devel mailing list for ALSA developers - http://www.alsa-project.org" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: alsa-devel-bounces@alsa-project.org Sender: alsa-devel-bounces@alsa-project.org X-Virus-Scanned: ClamAV using ClamSMTP In the case that alsa driver can't support period wakeup, we need to set the no period wakeup flag Signed-off-by: Shengjiu Wang --- aplay/aplay.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/aplay/aplay.c b/aplay/aplay.c index efc1eb4cae3a..4f562bfe2884 100644 --- a/aplay/aplay.c +++ b/aplay/aplay.c @@ -137,6 +137,7 @@ static int use_strftime = 0; volatile static int recycle_capture_file = 0; static long term_c_lflag = -1; static int dump_hw_params = 0; +static int no_period_wakeup = 0; static int fd = -1; static off64_t pbrec_count = LLONG_MAX, fdcount; @@ -243,6 +244,7 @@ _("Usage: %s [OPTION]... [FILE]...\n" " --use-strftime apply the strftime facility to the output file name\n" " --dump-hw-params dump hw_params of the device\n" " --fatal-errors treat all errors as fatal\n" +" --no-period-wakeup set no period wakeup flag if necessary\n" ) , command); printf(_("Recognized sample formats are:")); @@ -429,6 +431,7 @@ enum { OPT_USE_STRFTIME, OPT_DUMP_HWPARAMS, OPT_FATAL_ERRORS, + OPT_NO_PERIOD_WAKEUP, }; /* @@ -516,6 +519,7 @@ int main(int argc, char *argv[]) {"interactive", 0, 0, 'i'}, {"dump-hw-params", 0, 0, OPT_DUMP_HWPARAMS}, {"fatal-errors", 0, 0, OPT_FATAL_ERRORS}, + {"no-period-wakeup", 0, 0, OPT_NO_PERIOD_WAKEUP}, #ifdef CONFIG_SUPPORT_CHMAP {"chmap", 1, 0, 'm'}, #endif @@ -799,6 +803,9 @@ int main(int argc, char *argv[]) case OPT_FATAL_ERRORS: fatal_errors = 1; break; + case OPT_NO_PERIOD_WAKEUP: + no_period_wakeup = 1; + break; #ifdef CONFIG_SUPPORT_CHMAP case 'm': channel_map = snd_pcm_chmap_parse_string(optarg); @@ -1396,6 +1403,12 @@ static void set_params(void) &buffer_frames); } assert(err >= 0); + + if (no_period_wakeup) { + err = snd_pcm_hw_params_set_period_wakeup(handle, params, 0); + assert(err >= 0); + } + monotonic = snd_pcm_hw_params_is_monotonic(params); can_pause = snd_pcm_hw_params_can_pause(params); err = snd_pcm_hw_params(handle, params);