Received: by 10.223.148.5 with SMTP id 5csp7114408wrq; Thu, 18 Jan 2018 00:49:08 -0800 (PST) X-Google-Smtp-Source: ACJfBostb5ABB+Fer4kOLHUSChgjh4SPyT8SjsKWDDT4K6Lv23Lxc801viIKzK34XfsOA8RAX3ML X-Received: by 10.84.177.129 with SMTP id x1mr44961927plb.361.1516265348584; Thu, 18 Jan 2018 00:49:08 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1516265348; cv=none; d=google.com; s=arc-20160816; b=hT4CZCbg2v20r1+jPIRat6EjbsdQzA+vQkdgJDXEUjcO19zKaR/WZAJnfRR8vsNKT9 PCo7guqo37S97g6YUg9SIPqH/56iYvvJ9C8kKffBrUJSAwOHbY9h6PQjAFkBOa2BoRfN kcGQ8wVBypi8IeNkI6Yi8oua0pLeXLZ9YNSuFI4cO5pHCYnjHXo2ftwXLIX/u9bPPszh paPdWtMecjRxsILCvWF5gvheJ3fAaxMLIx/nqrh2KRsy4vAPUi1QxTrhnlmeg6ybhgWg QQBhM3loiA3Q3Qjm82+waNsxRsYA5Unl0BGG1hJrs1ZRwQzG5Gd3vU51iYHKf1yLgp6a pygg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:spamdiagnosticmetadata :spamdiagnosticoutput:mime-version:references:in-reply-to:message-id :date:subject:cc:to:from:dkim-signature:arc-authentication-results; bh=QpxYtCTgchlz8Scj7i/TB80fMFZISU94EedOnAiD4Y4=; b=Frbyx3xcywNmuKZsvmEFt2hfOdr6XRSrsOJvLkL3e3ojpoow7SBNdrk6tF7zCSLwD/ Ll/pTtoOVlBa2yyJpyf7tyfK7q7BjBSxz4szwEoW703FjG8UuaEIq4ijIxFS6Pgft4OV 4qNI8hgHGeYFNPq3kF8j5ue/98diIwIWtJdmUGXtWOtxpk4gVcOhgq/kQhrrdTP4CYpR xakcIKSEZxSC3dFGBzQsoYcgrxo0hQuu+9kuDN10wpghkJ+gytqO2XT5tg2W/aUU+vTu r7LmC8ir8SYfqCETd1UNMaFO6jVO1LCmWRoz+KaFOsMNRcr9oVR6NCk67BUJyTp0tmm5 Us2A== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@Sony.onmicrosoft.com header.s=selector1-Sony-onmicrosoft-com header.b=hBg2EZKH; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id m8si5545480pgn.343.2018.01.18.00.48.54; Thu, 18 Jan 2018 00:49:08 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@Sony.onmicrosoft.com header.s=selector1-Sony-onmicrosoft-com header.b=hBg2EZKH; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755192AbeARIrN (ORCPT + 99 others); Thu, 18 Jan 2018 03:47:13 -0500 Received: from mail-by2nam03on0126.outbound.protection.outlook.com ([104.47.42.126]:20025 "EHLO NAM03-BY2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1754847AbeARIrK (ORCPT ); Thu, 18 Jan 2018 03:47:10 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Sony.onmicrosoft.com; s=selector1-Sony-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=QpxYtCTgchlz8Scj7i/TB80fMFZISU94EedOnAiD4Y4=; b=hBg2EZKHi2zbPji9B56lTpH3gI7ScG11vqIV62wkiCkIexVL3UdBI+aKN6HdCS3wskK0/g4We3QP9tFXaSUqtZUsMoVVfThzgvSRAaz+SLyNSkjlkKpW08Nci4yvrV9oGW0f99DvLgEFiW1as8ZsN2iftN/0Zp/c9vJ2xMyd3kg= Received: from CY1PR13CA0067.namprd13.prod.outlook.com (10.163.230.163) by DM5PR1301MB2028.namprd13.prod.outlook.com (10.174.185.24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.444.5; Thu, 18 Jan 2018 08:47:08 +0000 Received: from SN1NAM02FT008.eop-nam02.prod.protection.outlook.com (2a01:111:f400:7e44::201) by CY1PR13CA0067.outlook.office365.com (2a01:111:e400:c42c::35) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.428.9 via Frontend Transport; Thu, 18 Jan 2018 08:47:08 +0000 Authentication-Results: spf=pass (sender IP is 117.103.190.44) smtp.mailfrom=sony.com; vger.kernel.org; dkim=none (message not signed) header.d=none;vger.kernel.org; dmarc=bestguesspass action=none header.from=sony.com; Received-SPF: Pass (protection.outlook.com: domain of sony.com designates 117.103.190.44 as permitted sender) receiver=protection.outlook.com; client-ip=117.103.190.44; helo=jp.sony.com; Received: from jp.sony.com (117.103.190.44) by SN1NAM02FT008.mail.protection.outlook.com (10.152.72.119) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.20.428.12 via Frontend Transport; Thu, 18 Jan 2018 08:47:07 +0000 Received: from JPYOKXHT101.jp.sony.com (117.103.191.48) by JPYOKXEG104.jp.sony.com (117.103.190.44) with Microsoft SMTP Server (TLS) id 14.3.361.1; Thu, 18 Jan 2018 08:47:03 +0000 Received: from localhost.localdomain (43.25.41.74) by JPYOKXHT101.jp.sony.com (117.103.191.48) with Microsoft SMTP Server (TLS) id 14.3.361.1; Thu, 18 Jan 2018 08:47:03 +0000 From: To: , , CC: , , , , , , , Subject: [PATCH v5 06/12] [media] cxd2880: Add integration layer for the driver Date: Thu, 18 Jan 2018 17:51:10 +0900 Message-ID: <20180118085110.21374-1-Yasunari.Takiguchi@sony.com> X-Mailer: git-send-email 2.15.1 In-Reply-To: <20180118084016.20689-1-Yasunari.Takiguchi@sony.com> References: <20180118084016.20689-1-Yasunari.Takiguchi@sony.com> MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [43.25.41.74] X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-HT: Tenant X-Forefront-Antispam-Report: CIP:117.103.190.44;IPV:NLI;CTRY:JP;EFV:NLI;SFV:NSPM;SFS:(10019020)(39380400002)(396003)(346002)(376002)(39860400002)(2980300002)(438002)(189003)(199004)(39060400002)(54906003)(16586007)(51416003)(72206003)(2906002)(246002)(76176011)(4326008)(107886003)(86152003)(26005)(49486002)(3846002)(36756003)(47776003)(6666003)(478600001)(66066001)(86362001)(305945005)(2201001)(956003)(5660300001)(50226002)(7636002)(1076002)(6116002)(7736002)(2950100002)(8676002)(106466001)(2876002)(8936002)(316002)(50466002)(48376002)(106002)(16526018)(356003)(110136005);DIR:OUT;SFP:1102;SCL:1;SRVR:DM5PR1301MB2028;H:jp.sony.com;FPR:;SPF:Pass;PTR:jpyokxeg104.jp.sony.com;MX:1;A:1;LANG:en; X-Microsoft-Exchange-Diagnostics: 1;SN1NAM02FT008;1:6Z2S+X5bEbGQincj7BWhYnogCJH9zQWHUbbQIRuhIGOxmxtUV60W44E1F5I+rkdCrPYHNRywXUmd2mnxb4WcX8wd6X6jgXlWyrfIpfJXzTPRuZ/88gb5ocWtzgGoCQX/ X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: b68407ea-f61d-4eb8-63cc-08d55e500ec4 X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(7020095)(4652020)(5600026)(4604075)(4608076)(4534125)(4602075)(4627221)(201703031133081)(201702281549075)(2017052603307)(7193020);SRVR:DM5PR1301MB2028; X-Microsoft-Exchange-Diagnostics: 1;DM5PR1301MB2028;3:lS0/N3I4ViHcnIvs0RVgI7MNpCWm1z5CoYainow/cg6kGUfViZkMxLHYxs64H8oSdxeAjvWIMuDsAAH7bjb5nLMliTyYvsGylqcSLfMJHjOdQPnzZyTdYKHQpc/pGtNPPA/FP6fYAu54OGr3Npu+0X8ncszl6nl+be97hUKKmi9Ymaybc/9/i1uRqAaCTJ9FI/6Gv2Zx0jPSPcmdObkVOlLi3RPy4riXE/o+QN//sAw+BwFij0vSwezypXpWY57DWWub2oYPA9P7ddyKhC4clact3PkQM4ZnUyq3FacEp/3orpzZgTmlzkKIVYAgs1nN16MxGmz4wirBJNiHKqzSMxhuRGaINMHvvjQBUvO2ucE=;25:Umg6jeC2vibn/vumQaGqrYXM0GXa0L+WImVUuiewgptBkiiNYBx6rcQtxIfRgeHhLRdSoWWeCl9mEigubpPurmtjTnpGCMKvQXbaU/1udq8zm8VlHMq4z/oZMJ79T7bIQvjLIgfbqo2j+BxU1groeb5QNZYRf87H5EVj9TYbIUkaHrmm5b7BvOvL+OPTBkwlz/uyoRyqY6bEQmSJ7HEXgcQx6SKUYC2yjMgWuFLa6FT4Z+/vLMzx5N7oBvf0Lpl+iMzsweTL34NXQIemA59vVO2qYDee4K8Wk/tU5lPKsKLCGpQEBHL9YH3KapT3UUuN5T8ifs4yxT2aUmvAXreKCg== X-MS-TrafficTypeDiagnostic: DM5PR1301MB2028: X-Microsoft-Exchange-Diagnostics: 1;DM5PR1301MB2028;31:KZ1ALJAfD6RuZs689HpsuCrFhFmCwVXOg0ySZbZbxTnr3eQqNenuw9Jp1+VgVpQKfu0qPZGkswubyjzR++93HNedS5R7AyC7BtdWAXmx2tBIO6IXMP3u8eHP4gg4xWVspbYgX28gng3wekvxrZ/k/VZNkRaoGyGcnvG0bqBI2XTs1lVp9741GLpYOGyc89bfSR1N+mMjnGZoUwuiz9UWhEIxWkkcYj2v/GgQ9mlrkrM=;20:xcRxkpsBRWiat8DDOOog4B0e88tcFlMaW3CFmZeiBfjwQUnWWkouDPWkoMFsp98hjseO2LNnK9AEZJKPlCZIe6PuH0HHyH5yhzbapaeJtw7ha1APQPkIEVUBiN7VqBNqsJUNPzwzzcZti74zpC9OiYLLUZN3sI2WM1L65thD5DNjFU4GFFMRZZGspd318BF2KdUVKMC74PFMYGVZIWc2raKoHz09ZGlHMGw6++Ll53I4ZV3q8NgB+gIJX7GqiMqzl10dZlVn9BJozmX3StTdbCDhx7Y3l/qMSi0qvg7coTEB/pOyepXw1FjfiB8UHxDdpnqK6/giFnDfZnkzp43r+gZfFhrt2ERyKzYJMsfaomjrqc8Yth7DY8RSax61tm5h8XG2tyLtzrBrJBldoMOLzfDKabfufX5Di6BG7QUusY5glBj7AEmEiysm7v5ppaxWNJrK/rbH525F9MuVS8p6mHsTKlsNgi6KyFJiaeve9rthaEDD9IzWUH3083RDE/fq X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(182409339516656); X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(6040470)(2401047)(8121501046)(5005006)(3231023)(11241501184)(944501161)(93006095)(93004095)(3002001)(10201501046)(6055026)(6041268)(20161123564045)(20161123558120)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123562045)(20161123560045)(6072148)(201708071742011);SRVR:DM5PR1301MB2028;BCL:0;PCL:0;RULEID:(100000803101)(100110400095);SRVR:DM5PR1301MB2028; X-Microsoft-Exchange-Diagnostics: 1;DM5PR1301MB2028;4:NhXwhiZi6sDtS8n+OgjAXWjCntmdUkvYg0poTQv+WQL0KMZBBJDn1iYgpXIg4Ot2KzorC7OtTb2vTJzznld0oAtbO9xUM+10ZAkHAd3S3yDFS1S7Qa7K06TL+ujHbmG/9hq28UJtccLwIff5iU16mcVhB0XZ0ReB0Up4FACTKT46c2zYWY2v8IbRBO8fG/P8i0r6BOs4eFVO9WDLQs2hcaP3rnEfU4pHwV+rTxW31AgyHrSKe8btT6mSuXOU8Nr0xtScuEW+IcN2alRLTwtUI9quxRfgI4M1gOAr3O66nnx0Ul0bkf4XFJqgNoWmtI2I X-Forefront-PRVS: 05568D1FF7 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;DM5PR1301MB2028;23:PiphPy8Wg1iVTuj19pRCYcLyb9gIj44cahfjR5V?= =?us-ascii?Q?mx9ID7X0Fai+EZQDAVfvVRCRK0do4i0Kiro/FmK4c/5fNhZu130JZf/m+kZo?= =?us-ascii?Q?tXw8wGq9foLDWGrIzRqjOQGU3wyQae8vgaLPdemYKyY5zdy0aqxL47lH0R3m?= =?us-ascii?Q?hJQyYkS4b0DSl1hu3AXNEOSDrBJHBcF5wuRCGRsfb5gdEqeVO7DJtjfIwXaD?= =?us-ascii?Q?1Jqmm0W31uUtrOXqEkSFcryzNnoL7Fc1CNBW2Sq561l5Fx9yjIT98eZR0vaC?= =?us-ascii?Q?2R/BzTWiuWZNEeHd7D5qHM3mG+wqTtynfp+QM/ta0TpuQuTy+Jd6ytl7x969?= =?us-ascii?Q?277Bc9ZWmYHxsqC/kWIrI74hsn5X9DU3eftjByUcpxQnF5JIKXJEtMV9FnPM?= =?us-ascii?Q?F8iFa3U43dtWO4eykAla/HLgje3cHoVrryUJKh32Czy0Ke28kFM5CNKg7CP+?= =?us-ascii?Q?5ARQdw+TppbpzG/RHLNxq96fvOL0LnvCwQ3VObb7TdZ/may2/U2aaYojeSxv?= =?us-ascii?Q?xIijikDKttk2BmTLTiknRGS6gP81vmhTqenSuuSNnvrb2Hj77Dt7eFH9rzbF?= =?us-ascii?Q?WRGuBDcaTVBev9ABHaOoKTEIz8DZ3LkKC3/2l2lNDd7cGlWwAUcIE17ayNXy?= =?us-ascii?Q?r7TeI4CLIh+31NBNG8R8JVB3RUmvBgN6onbOHDF27XnXFVFbyr5IUgJXBEaY?= =?us-ascii?Q?A3UDelrj16zuIUuNMSKhQ1wv2lln6cZPVqNyd3+D+5C1WnnilB11J/MlfHm/?= =?us-ascii?Q?1jfhcipmHqBQeVKvxK/Bye5atj89fpttbrSCRzFddYCcckQc8gfn6UbRfVOp?= =?us-ascii?Q?Q9mNaF0i/9lkVmtZvbuNB2hmYeu0w3Ls8oVuyGieZHyWtcH4H9oAMdIQSKK0?= =?us-ascii?Q?vNMEFU4p6tQn9AZoohULQERbyeKOZK141/2ytJS1GYhawHVK622BzbYt7/2V?= =?us-ascii?Q?Ypv6cY2YrQYMPIzKBntsN3yzyMkVnRHylRMQxtA6Si7ckvKI57vj0v5Hbt9h?= =?us-ascii?Q?3VI4ZTIYrQtekQJBBltt1jd6pT/UVG0vstZjEKYTpLAPPgIeTARHfmX6o+es?= =?us-ascii?Q?llestDJOUlOo02wIN05sJ8BwUvgYdPbrX+8IPORMmdGgFzZIC9RJ7QZ0hOTI?= =?us-ascii?Q?lVvflx2A2On0gzNM0rNnv3qcf1LQvt/c0?= X-Microsoft-Exchange-Diagnostics: 1;DM5PR1301MB2028;6:L/ZSyfA4MqZMwDUPjgJJ+XokVfnUax/6u6XOHMboJrGsGp9xskDwTNunqbLkP54nFL2GDw61X+veJv2F5KKbYscFfSOoLXDqZDZ5ymnF3PYAJZK0o6tHHb9G/1WOcvpmhzNAK2hjsKpq4/1ywrYTSeQTBGZys9azl6ms1uRclxzmXDiH3sQz30huGSh8i6IDF60oiNdB3NxddQPo66EBzjwzAaY866Eh4QxCNxtFufeumeKJ6RA+t+DkaBFtt7LMtOE9hSMfLopnTlW1iZ5FqAnSouszohiN9zjW/S+8H1s1Tkq7t5oIzoNDtbWnXeBlEkQ6CzmmymhFLc0WuowkFzTCSUD6Yd+n+41Fo+CLooY=;5:x6nGmqzl05oxah9eXa+ducLjmYJb2xiEnkkEcDx6U3n707QfkosddiENDO/GHcxJZqOsN38gQcySAlfwLY55/if04LU0La9LO754a3if+/dseH0CrCqmWfKuDmtNaIOJWM3WBylzwjNkaNuEKbgUjUQWZL4M86NVT+o9h0d48xg=;24:C9qT64bORA8QLWK/hMbbQ44EUpsBnc1OEWXHlBQbk4mOLdzF+eXz1SqBlgwuq6OPzRcvU6EY8IsurjQVJ8pMsG+GwBrZ22R5xJTlHpGoVLY=;7:9obyus0aH1VqtfGSy1xSiJbq7u6HBbF6GByRYR6uyayKmVHp6yF9koF2QBM3RagYainw2D5ywTYRPrwvulP8UThAJT7att+2sT3KAvfcKTwG1zu/6jSX56XcemUxoxAG5O6rUqkfrBEPGtPM/n2NPxq1dpp719efmoSLBo77ltoWMvo6+les22pCJqdcVFtmA1F2fFSeTqvOhkD0RN0INnEJpD1wPW6KlpLQgo+2iutwMQQkNv41OhFHJAs3gBqe SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: sony.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Jan 2018 08:47:07.6564 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: b68407ea-f61d-4eb8-63cc-08d55e500ec4 X-MS-Exchange-CrossTenant-Id: 66c65d8a-9158-4521-a2d8-664963db48e4 X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=66c65d8a-9158-4521-a2d8-664963db48e4;Ip=[117.103.190.44];Helo=[jp.sony.com] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR1301MB2028 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Yasunari Takiguchi These functions monitor the driver and watch for task completion. This is part of the Sony CXD2880 DVB-T2/T tuner + demodulator driver. Signed-off-by: Yasunari Takiguchi Signed-off-by: Masayuki Yamamoto Signed-off-by: Hideki Nozawa Signed-off-by: Kota Yonezawa Signed-off-by: Toshihiko Matsumoto Signed-off-by: Satoshi Watanabe --- [Change list] Changes in V5 Using SPDX-License-Identifier drivers/media/dvb-frontends/cxd2880/cxd2880_integ.c -removed unnecessary if() -changed timer function from stop_watch to ktime Changes in V4 drivers/media/dvb-frontends/cxd2880/cxd2880_integ.c -removed unnecessary initialization at variable declaration Changes in V3 drivers/media/dvb-frontends/cxd2880/cxd2880_integ.c -changed cxd2880_atomic_read to atomic_read -changed cxd2880_atomic_set to atomic_set -modified return code -modified coding style of if() drivers/media/dvb-frontends/cxd2880/cxd2880_integ.h -modified return code .../media/dvb-frontends/cxd2880/cxd2880_integ.c | 72 ++++++++++++++++++++++ .../media/dvb-frontends/cxd2880/cxd2880_integ.h | 27 ++++++++ 2 files changed, 99 insertions(+) create mode 100644 drivers/media/dvb-frontends/cxd2880/cxd2880_integ.c create mode 100644 drivers/media/dvb-frontends/cxd2880/cxd2880_integ.h diff --git a/drivers/media/dvb-frontends/cxd2880/cxd2880_integ.c b/drivers/media/dvb-frontends/cxd2880/cxd2880_integ.c new file mode 100644 index 000000000000..5302ab0964c1 --- /dev/null +++ b/drivers/media/dvb-frontends/cxd2880/cxd2880_integ.c @@ -0,0 +1,72 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * cxd2880_integ.c + * Sony CXD2880 DVB-T2/T tuner + demodulator driver + * integration layer common functions + * + * Copyright (C) 2016, 2017, 2018 Sony Semiconductor Solutions Corporation + */ + +#include +#include + +#include "cxd2880_tnrdmd.h" +#include "cxd2880_tnrdmd_mon.h" +#include "cxd2880_integ.h" + +int cxd2880_integ_init(struct cxd2880_tnrdmd *tnr_dmd) +{ + int ret; + ktime_t start; + u8 cpu_task_completed = 0; + + if (!tnr_dmd) + return -EINVAL; + + ret = cxd2880_tnrdmd_init1(tnr_dmd); + if (ret) + return ret; + + start = ktime_get(); + + while (1) { + ret = + cxd2880_tnrdmd_check_internal_cpu_status(tnr_dmd, + &cpu_task_completed); + if (ret) + return ret; + + if (cpu_task_completed) + break; + + if (ktime_to_ms(ktime_sub(ktime_get(), start)) > + CXD2880_TNRDMD_WAIT_INIT_TIMEOUT) + return -ETIMEDOUT; + + usleep_range(CXD2880_TNRDMD_WAIT_INIT_INTVL, + CXD2880_TNRDMD_WAIT_INIT_INTVL + 1000); + } + + return cxd2880_tnrdmd_init2(tnr_dmd); +} + +int cxd2880_integ_cancel(struct cxd2880_tnrdmd *tnr_dmd) +{ + if (!tnr_dmd) + return -EINVAL; + + atomic_set(&tnr_dmd->cancel, 1); + + return 0; +} + +int cxd2880_integ_check_cancellation(struct cxd2880_tnrdmd *tnr_dmd) +{ + if (!tnr_dmd) + return -EINVAL; + + if (atomic_read(&tnr_dmd->cancel) != 0) + return -ECANCELED; + + return 0; +} diff --git a/drivers/media/dvb-frontends/cxd2880/cxd2880_integ.h b/drivers/media/dvb-frontends/cxd2880/cxd2880_integ.h new file mode 100644 index 000000000000..7160225db8b9 --- /dev/null +++ b/drivers/media/dvb-frontends/cxd2880/cxd2880_integ.h @@ -0,0 +1,27 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +/* + * cxd2880_integ.h + * Sony CXD2880 DVB-T2/T tuner + demodulator driver + * integration layer common interface + * + * Copyright (C) 2016, 2017, 2018 Sony Semiconductor Solutions Corporation + */ + +#ifndef CXD2880_INTEG_H +#define CXD2880_INTEG_H + +#include "cxd2880_tnrdmd.h" + +#define CXD2880_TNRDMD_WAIT_INIT_TIMEOUT 500 +#define CXD2880_TNRDMD_WAIT_INIT_INTVL 10 + +#define CXD2880_TNRDMD_WAIT_AGC_STABLE 100 + +int cxd2880_integ_init(struct cxd2880_tnrdmd *tnr_dmd); + +int cxd2880_integ_cancel(struct cxd2880_tnrdmd *tnr_dmd); + +int cxd2880_integ_check_cancellation(struct cxd2880_tnrdmd + *tnr_dmd); + +#endif -- 2.15.1