From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 6B311C3DA6E for ; Thu, 28 Dec 2023 07:38:30 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:Content-ID:In-Reply-To: References:Message-ID:Date:Subject:CC:To:From:Reply-To:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=SpV5oWG5DytIc/qKaa8yNiPdynIVno6YgTi+9kz94Tw=; b=RREJfZ2svVo3og p24CTj+mLu8DIG5jnB7j16HMf8vzNd09PRkbnQaDZ6TfLtAalo2GZifAAD+fGu2KQO23oNzYyQcNF 9TCRr4GsuFPWQnIQHS48NjTVsqceargcKXFsPhxBqIAGoE25UOqLPpchnfDl22XYDB67orTc+FpmJ NyNx264/hX0HEQ2oWcLQFJ+gxojE7X4BcwV8hqp8gmmp0901foxAy+gTfcFPT687gjXRHamB81Ztc Xd/5FHozrooPiyyb9gwM/qW1i7PPlxI2IqwsadPVhjy2ciF7dJ8Q7SItdXg/HXULJ33nMLULqW81p A8dBfH3kOrFvEAiql2uw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.96 #2 (Red Hat Linux)) id 1rIkxu-00GLxC-1X; Thu, 28 Dec 2023 07:38:02 +0000 Received: from mailgw01.mediatek.com ([216.200.240.184]) by bombadil.infradead.org with esmtps (Exim 4.96 #2 (Red Hat Linux)) id 1rIkxs-00GLwi-0o; Thu, 28 Dec 2023 07:38:01 +0000 X-UUID: 05e578d0a55411eeafd70d0b34820190-20231228 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=mediatek.com; s=dk; h=MIME-Version:Content-Transfer-Encoding:Content-ID:Content-Type:In-Reply-To:References:Message-ID:Date:Subject:CC:To:From; bh=QRKmzCQksvN9wmTCJjqJ7MhvOTbOED5kzoTECHj6qnc=; b=gD8+ROtPo5RTBcf3ypLPJWTG+HWR8I3+WNCHFbMXoqVyYJGyMiELFTNoffYT4gGsg2XA7LABDmk4I8fU8JToL6g1f83MnEvDo/uOyMpE1WvSZkyTEGkXk6SKuHFA3mxyRLBqyeQtko+6xmFBmybqbVw+qu5THTgYljswNBNnqFk=; X-CID-CACHE: Type:Local,Time:202312280035-07,HitQuantity:1 X-CID-P-RULE: Release_Ham X-CID-O-INFO: VERSION:1.1.35,REQID:8b6ed093-09a4-45e8-9864-c77716df2fc6,IP:0,U RL:0,TC:0,Content:0,EDM:0,RT:0,SF:0,FILE:0,BULK:0,RULE:Release_Ham,ACTION: release,TS:0 X-CID-META: VersionHash:5d391d7,CLOUDID:6b75a88d-e2c0-40b0-a8fe-7c7e47299109,B ulkID:nil,BulkQuantity:0,Recheck:0,SF:102,TC:nil,Content:0,EDM:-3,IP:nil,U RL:0,File:nil,Bulk:nil,QS:nil,BEC:nil,COL:0,OSI:0,OSA:0,AV:0,LES:1,SPR:NO, DKR:0,DKP:0,BRR:0,BRE:0 X-CID-BVR: 0 X-CID-BAS: 0,_,0,_ X-CID-FACTOR: TF_CID_SPAM_SNR X-UUID: 05e578d0a55411eeafd70d0b34820190-20231228 Received: from mtkmbs13n2.mediatek.inc [(172.21.101.108)] by mailgw01.mediatek.com (envelope-from ) (musrelay.mediatek.com ESMTP with TLSv1.2 ECDHE-RSA-AES256-GCM-SHA384 256/256) with ESMTP id 1488630154; Thu, 28 Dec 2023 00:37:58 -0700 Received: from mtkmbs10n1.mediatek.inc (172.21.101.34) by MTKMBS14N1.mediatek.inc (172.21.101.75) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1118.26; Thu, 28 Dec 2023 15:37:23 +0800 Received: from APC01-PSA-obe.outbound.protection.outlook.com (172.21.101.237) by mtkmbs10n1.mediatek.inc (172.21.101.34) with Microsoft SMTP Server id 15.2.1118.26 via Frontend Transport; Thu, 28 Dec 2023 15:37:23 +0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=CgdBdSf6QkezvZ2uzW9391XeRyaPclD/KLVgDlR+119rOGy9jvRI/teBGOVVvMTI7D4lNTTID4XuTPnB9UrKC2iMYUXfYenMxNp4eJgTAuKVtLL54EQPR/sAcSHCbD1fBIHc7kimhzB1FxqqTv3TkyCShgNLwDsPNJfkHOHd1qi7fC60B332H9dPYJylLXBQPYhz+RxEHxLI/yaBNQtdq2kIcgkoi6wKRkPsz79RuBRMuZAygAh2QVO9M9R6IAJJgNYTSfdXdC+os+q3rUsCwXEfcQlSd7EXdietde5ja/9I6Y3QI9/F/XZnKuVGPHPkzZtGIZ9cS9TwuxgfIvKGQg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=QRKmzCQksvN9wmTCJjqJ7MhvOTbOED5kzoTECHj6qnc=; b=GKWsWxjUcGBlxaBLPvPHT/qtagIMR4dER8gLg1qchxJeYWnVn2FzJP9Q0fOFZeYLnGwp5OC/4YG4dwglgcltrtxw3H0GZX4Fu3fBVYD46O4ibQGvFZ7LUfRO0OUQznGXbwZjTdlj3rgwt+iK2+Vx6yP7wc/6I0x7QKvjNxLy5eLsG+TUKOLIoZczEWKTwv8cnkWVq2I3gRAHBKlnhsdrC2gqdZ5CXrhfrUaLqaVkqzY9aiuphWH3O9KsKoEAxfsqey2sF3xGDoH4UI0BXrcc22K9MZbGneZRtnN8o0un9d7+0iw80pLIyMew1jEcIvWOaGYi9W84H/Fjy9b+D2h/Hw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=mediatek.com; dmarc=pass action=none header.from=mediatek.com; dkim=pass header.d=mediatek.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=mediateko365.onmicrosoft.com; s=selector2-mediateko365-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=QRKmzCQksvN9wmTCJjqJ7MhvOTbOED5kzoTECHj6qnc=; b=nV0mZ1oQ+z4oGx+/egckuZCESSSluw9AZSlRfGL8SobQRT4QSsdgxqbN0w7jb+ADwQT7DrWwGmzmSM74B2FhtNdOMCVA2uoz/fNdGu4JMpn/xeKwA8CalvB4gQiW3NeC1IWHSlHFXpbiMYJByLijalv7r2axTTAgGRX6EmWgXjU= Received: from TYZPR03MB6624.apcprd03.prod.outlook.com (2603:1096:400:1f4::13) by SEYPR03MB7683.apcprd03.prod.outlook.com (2603:1096:101:14a::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7113.26; Thu, 28 Dec 2023 07:37:20 +0000 Received: from TYZPR03MB6624.apcprd03.prod.outlook.com ([fe80::eb43:57cb:edfd:3762]) by TYZPR03MB6624.apcprd03.prod.outlook.com ([fe80::eb43:57cb:edfd:3762%7]) with mapi id 15.20.7113.027; Thu, 28 Dec 2023 07:37:20 +0000 From: =?utf-8?B?Q0sgSHUgKOiDoeS/iuWFiSk=?= To: "jassisinghbrar@gmail.com" , "matthias.bgg@gmail.com" , =?utf-8?B?SmFzb24tSkggTGluICjmnpfnnb/npaUp?= , "angelogioacchino.delregno@collabora.com" , "robh+dt@kernel.org" , "krzysztof.kozlowski+dt@linaro.org" , "chunkuang.hu@kernel.org" CC: "linux-kernel@vger.kernel.org" , "linux-mediatek@lists.infradead.org" , =?utf-8?B?U2luZ28gQ2hhbmcgKOW8teiIiOWciyk=?= , =?utf-8?B?Sm9obnNvbiBXYW5nICjnjovogZbpkasp?= , "linux-media@vger.kernel.org" , "devicetree@vger.kernel.org" , =?utf-8?B?SmFzb24tY2ggQ2hlbiAo6Zmz5bu66LGqKQ==?= , =?utf-8?B?U2hhd24gU3VuZyAo5a6L5a2d6KyZKQ==?= , "mchehab@kernel.org" , =?utf-8?B?TmFuY3kgTGluICjmnpfmrKPonqIp?= , "conor+dt@kernel.org" , Project_Global_Chrome_Upstream_Group , "linux-arm-kernel@lists.infradead.org" Subject: Re: [PATCH v3 8/9] mailbox: mediatek: Add CMDQ secure mailbox driver Thread-Topic: [PATCH v3 8/9] mailbox: mediatek: Add CMDQ secure mailbox driver Thread-Index: AQHaNJMHlgU6p3MSPUCi0pus2NsH47C+WDmA Date: Thu, 28 Dec 2023 07:37:20 +0000 Message-ID: References: <20231222045228.27826-1-jason-jh.lin@mediatek.com> <20231222045228.27826-9-jason-jh.lin@mediatek.com> In-Reply-To: <20231222045228.27826-9-jason-jh.lin@mediatek.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=mediatek.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: TYZPR03MB6624:EE_|SEYPR03MB7683:EE_ x-ms-office365-filtering-correlation-id: 4436d201-dc28-43b9-b0fc-08dc0777d30f x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: aLdgxEb0HlMZAMCfKBiQn5QzypkT0Z8UX7dYpPzdQmShEdsYB/dksLVbv+68Pira+oX+Nsjs3XRwQPYqIf3OmMqia4Z5XfnjaAy0OPq3GLgzoul/PZXw7ikBnFQzeAxyjVCfr+7djTMsi8NOcM3mCzoOFljIqxDaZQKX6dA3/W2A8JfM1EjibO08mVtOjGbirhsPFXYumCKLKmIiOYaXhiTt7UebawBQn64ePxbw0W0R4DxiaqzsIO7WNnAMp9Y5aqBcf2q3sT6BdueT7ER9KyLQILmp0ocq4kgUtSg9M9HBT2hOnzj9OkWun+vlSmnbEULLxU5gx4WZUUeJNADlanA6DfMWlVfuR5GOwclvCeuoEnii3cgbcHbxDGfxrZpQKm1TAm9x2KIMYvAqyvGTl0N9rOTkXyzs/MdX+0AY46MMir3d5duJsSSKyuMYTNo0SLWMg+11zcGsPO7xgO9IjXwSqNuNDnVEMfIzElImBTrKodbbmaxjM9uq0pTZy9+eSZaj84swR1MIO4YFX1oIvCGpX1G++J5Xa2Qvd8QnKTrT0yUCQfWu4X/Nryv0KolJ4arAUuvrfnzZO8tD5Ck0ZoPk45mM0WmkAS4vhxHGgjjPi6LNMi1EC521Hk3/0xTooXQGUxriDZGBFVs+GAw6NzFGLuKvezrddv7JWB/PbKg= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:TYZPR03MB6624.apcprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(396003)(136003)(39860400002)(346002)(366004)(230922051799003)(186009)(451199024)(1800799012)(64100799003)(6486002)(478600001)(2906002)(71200400001)(8936002)(122000001)(15650500001)(5660300002)(64756008)(85182001)(8676002)(7416002)(36756003)(6512007)(6506007)(4001150100001)(66946007)(66556008)(76116006)(66476007)(66446008)(38070700009)(110136005)(4326008)(316002)(54906003)(26005)(83380400001)(86362001)(2616005)(41300700001)(38100700002);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?OWNWZ3daNlF4bHF0UDM5elNtZnpGUi9pRmpudzcxbWRLWElqazQxNW90N0wy?= =?utf-8?B?N1NsSUFYVlY4SlZJejVkbWFKcDZPZ1p6ODk4Y2hpQ3BZNzlWVDd0Z2lNZkRX?= =?utf-8?B?OVErVExjT2NFRU4yWXlhVjNxdXFJQXBvTEF6UG5YOXd5TW9JVk1YQXNHZ0Q1?= =?utf-8?B?Um1tdms2R1VnSmFsYjZMNnE3WVhKdDV3V3NDc2FTOFp0WlVaN1N5b3ZVcUxn?= =?utf-8?B?MHRScVRaY01wNFIzNllaSnNwMUhnRVowOEEyT01teFdsdms3MDdQeG85S1FC?= =?utf-8?B?c1d1ZlIvSzIrTjI0clliakl6cjNKSVhxSWRpcDg5Rm1LMTRDeExvdE10ajg3?= =?utf-8?B?MkM0V3FNVWR4R2VMbEJQUHRaeGxsaVBvaUNXUThSb3plQ2QxbFQxMGxBUjd4?= =?utf-8?B?RTdDV1oyUVRPZDZpSmZoRlRSYlRuMDgzUE1FajUxb01rdXJXdHRkckorTWFu?= =?utf-8?B?L0QyeXdlTFdldjRUTjhNRjNkUTk5VllUVTMvRjVlYWtKS3dTcW9WYzlLVG85?= =?utf-8?B?QTlEaFNOVlcxOXlBQUkyWGhvU3Q1YlJEMXdGTzcrUTEyT2NCTHFwNFdINWVs?= =?utf-8?B?OVhGN2tESlFjRlUvcUIwSG1qMXZmTUJDSVlOU1BXQy90aWFqd3NKS3Q5YTd6?= =?utf-8?B?TUZla3U2Y0NvMjNoTG9NcnlhTWpJVTRrU0F0R0xqTU5tMGt4QzdoZWZ1ZGNp?= =?utf-8?B?SEh3VVh1WFNTWnhOTWN2bXM3S3NBWlVkKzZEcERMQTVFV1lVd1BQMW1zOHdw?= =?utf-8?B?WFU3Nlc0ZDRPTExNbG5nS3N5WXQvbUxaRWNPOWNBY2d6QTY2eVBBMTFGbERj?= =?utf-8?B?OVZJek9XQ1VVdXlWblBuTjJvOXl5cDVxLzhqbE4wOC85azc0Qll0WExOY3Nk?= =?utf-8?B?ZDZ3OEhDa0c3WkxxcHR0ME5NSmdHVlBkdkRoNzNkZTRFaG96TTFNbGxJNktF?= =?utf-8?B?OGpIeFByWHZlaG1QUXFGNnVYaVduaVB5eFZJUUl4VStVZzMyUmc2NjZlRjVp?= =?utf-8?B?MUJkRVEyTkoydUJ4WmVuWnJwWWpFWUl3SXNIRjRuWTZFbVdZUHhsQzIvKzhl?= =?utf-8?B?WmZWMDJJRkZDVWlFY0UwWm5BcUU1ZFlBNjA1VitNbEhpVUFxNjhjYmc0VFVy?= =?utf-8?B?TlNxQnpDRGNZNFkwTGoxNUhDcHRKOFVVY2t1MklyRiszWk5JeHErYk5ielpv?= =?utf-8?B?dUJzMU94ajZoKzZNUWlmeE1TUGptWmdTZmtSVHVyTGJOOXYwSDlXYzk0ZVNr?= =?utf-8?B?QThMVHBsS3lDVU94UXBqOWFXNmlLcWJsUjlRSVV3VkNYdEN1QlF0U3VyNEhD?= =?utf-8?B?amF4YmlxcGdsWVdnUkJLOFZyUkhUWTZ0NXRHS3hWN1FxL2VkaFZNYlNqYnpv?= =?utf-8?B?T0grSktRQk5hczNSRU1NSGhFV1RhOVJsaUc4Z1VYZFVKbFBOTllGSXpUK2Jk?= =?utf-8?B?NGlzVTRqWXdSUFFsSWI5WWFablA1WWRSa2ozTTBjd2Z4bStGYlUwdVZJcnMv?= =?utf-8?B?VnVMUW1BOTRZY3RjdExSc1dUa3pJMmhMVk9iQ1ExTW5uc25UMll0amRuNXhW?= =?utf-8?B?amh2L0hOeFEzT3dlSzFURmxZQjBtbE9XTERnZGZnd0ZsUFprZFc0T1dWbWxR?= =?utf-8?B?bWt2VzFUd29HK0llNGFIMUxsRkJPZkprRHppbUpySW14b3hJejdrQWhhaHJu?= =?utf-8?B?NllQOXZESHZFMUZ3b2FvKzJkclZMSDhoSE16Q3hPM2V1VVE4aEI0NHFMMlIv?= =?utf-8?B?ZEpzRW9CRFdINkMwYTZOU1QyWGttSFQzK2MyMVQvb1hLNzlJVi81QnZoaHVB?= =?utf-8?B?UlprRkowakc3WmxLcC94SzlHQ3NteHBEMzRQcGlLUm1rMUpTYzNNSWxWcUhq?= =?utf-8?B?K0dwNEJHb2tlQ0lYU1ZHc3dpUU9BOGRuYWV5SHVmZjZYcHB2dk14MHR3elhj?= =?utf-8?B?eUdWdjN4MExNMXpGZlN5YXk4NUw2MFpVNG8xbWtJN1dkL0ZsdWJxWHRJcy83?= =?utf-8?B?QnBKU1pqK2VXSVN6dnBIcWYwdUFxNVZ0YnpQMXVZZGUyZHhyTzY2WDBlUm9V?= =?utf-8?B?NElodERPSWw0MStmYTVwWXpleDZlSEovR3kxaE44bGcwMjVWV3pwdXdPOHhv?= =?utf-8?Q?sKhVq4rHa4DhK1lapMWy0ZywE?= Content-ID: <08F9A52BDF5D644C8A28F7EAEF2842C3@apcprd03.prod.outlook.com> MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: TYZPR03MB6624.apcprd03.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4436d201-dc28-43b9-b0fc-08dc0777d30f X-MS-Exchange-CrossTenant-originalarrivaltime: 28 Dec 2023 07:37:20.3154 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: a7687ede-7a6b-4ef6-bace-642f677fbe31 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: q4Cv9s6ozv7bSGTt/7l3jC2dlW32bhQAUxqRlSAja2gcUkvXcczx2CyBJ/SsW5tXabC874hhClTlRhsmfuvZCg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SEYPR03MB7683 X-TM-AS-Product-Ver: SMEX-14.0.0.3152-9.1.1006-23728.005 X-TM-AS-Result: No-10--10.458800-8.000000 X-TMASE-MatchedRID: QW5G6BKkLToOwH4pD14DsPHkpkyUphL9qQ9UezeTkThu4FknyqyshF1Q po5pNysMe29pTfBhqOY7b3Js3F6vVD1LciJB3541o65WJt1k1O8TbU1KYGoQp3vsbfoZixUTS0e iOsrXcTiPAnyTT3ugzShfOC8JC4nFydSy/G+xHpIcsSroYI5AVgpxE3/U/O4WHMKI0y89bBKs9H kZwywsHv+cwEGCDjTv4epXsF7qjUEiXL+V+zm5iSYRREGYqtmUxKAxBgoYewlnuv8pVwMzSaPFj JEFr+olFUew0Fl/1pHYh0PvnvUH8FZ0V5tYhzdWxEHRux+uk8h+ICquNi0WJKANfIBYewm0SmuB 6ZWSZeUcd13mreZllhJ60zCPLzzVftwZ3X11IV0= X-TM-AS-User-Approved-Sender: No X-TM-AS-User-Blocked-Sender: No X-TMASE-Result: 10--10.458800-8.000000 X-TMASE-Version: SMEX-14.0.0.3152-9.1.1006-23728.005 X-TM-SNTS-SMTP: 5E53AC2A0B5FECB971D560962F70765EDFB1046907F9528EAFE16634B08084362000:8 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20231227_233800_307772_68D8DE65 X-CRM114-Status: GOOD ( 15.16 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org Hi, Jason: On Fri, 2023-12-22 at 12:52 +0800, Jason-JH.Lin wrote: > To support secure video path feature, GCE have to read/write > registgers > in the secure world. GCE will enable the secure access permission to > the > HW who wants to access the secure content buffer. > > Add CMDQ secure mailbox driver to make CMDQ client user is able to > sending their HW settings to the secure world. So that GCE can > execute > all instructions to configure HW in the secure world. > > Signed-off-by: Jason-JH.Lin > --- [snip] > + > +static bool cmdq_sec_irq_handler(struct cmdq_sec_thread *sec_thread, > + const u32 cookie, const int err) > +{ > + struct cmdq_sec_task *sec_task; > + struct cmdq_task *task, *temp, *cur_task = NULL; > + struct cmdq_sec *cmdq = container_of(sec_thread->thread.chan- > >mbox, struct cmdq_sec, mbox); > + unsigned long flags; > + int done; > + > + spin_lock_irqsave(&sec_thread->thread.chan->lock, flags); > + if (sec_thread->wait_cookie <= cookie) > + done = cookie - sec_thread->wait_cookie + 1; > + else if (sec_thread->wait_cookie == (cookie + 1) % > CMDQ_MAX_COOKIE_VALUE) > + done = 0; > + else > + done = CMDQ_MAX_COOKIE_VALUE - sec_thread->wait_cookie > + 1 + cookie + 1; > + > + list_for_each_entry_safe(task, temp, &sec_thread- > >thread.task_busy_list, list_entry) { > + if (!done) > + break; > + > + sec_task = container_of(task, struct cmdq_sec_task, > task); > + cmdq_sec_task_done(sec_task, err); > + > + if (sec_thread->task_cnt) > + sec_thread->task_cnt -= 1; > + > + done--; > + } > + > + cur_task = list_first_entry_or_null(&sec_thread- > >thread.task_busy_list, > + struct cmdq_task, > list_entry); > + if (err && cur_task) { > + spin_unlock_irqrestore(&sec_thread->thread.chan->lock, > flags); > + > + sec_task = container_of(cur_task, struct cmdq_sec_task, > task); > + > + /* for error task, cancel, callback and done */ > + memset(&cmdq->cancel, 0, sizeof(cmdq->cancel)); > + cmdq_sec_task_submit(cmdq, sec_task, > CMD_CMDQ_IWC_CANCEL_TASK, > + sec_thread->idx, &cmdq->cancel); cmdq->cancel is useless, so drop it. Regards, CK > + > + cmdq_sec_task_done(sec_task, err); > + > + spin_lock_irqsave(&sec_thread->thread.chan->lock, > flags); > + > + task = list_first_entry_or_null(&sec_thread- > >thread.task_busy_list, > + struct cmdq_task, > list_entry); > + if (cur_task == task) > + cmdq_sec_task_done(sec_task, err); > + else > + dev_err(cmdq->mbox.dev, "task list changed"); > + > + /* > + * error case stop all task for secure, > + * since secure tdrv always remove all when cancel > + */ > + while (!list_empty(&sec_thread->thread.task_busy_list)) > { > + cur_task = list_first_entry(&sec_thread- > >thread.task_busy_list, > + struct cmdq_task, > list_entry); > + > + sec_task = container_of(cur_task, struct > cmdq_sec_task, task); > + cmdq_sec_task_done(sec_task, -ECONNABORTED); > + } > + } else if (err) { > + dev_dbg(cmdq->mbox.dev, "error but all task done, check > notify callback"); > + } > + > + if (list_empty(&sec_thread->thread.task_busy_list)) { > + sec_thread->wait_cookie = 0; > + sec_thread->next_cookie = 0; > + sec_thread->task_cnt = 0; > + __raw_writel(0, (void __iomem *)cmdq->shared_mem->va + > + CMDQ_SEC_SHARED_THR_CNT_OFFSET + > + sec_thread->idx * sizeof(u32)); > + spin_unlock_irqrestore(&sec_thread->thread.chan->lock, > flags); > + del_timer(&sec_thread->timeout); > + return true; > + } > + > + sec_thread->wait_cookie = cookie % CMDQ_MAX_COOKIE_VALUE + 1; > + > + mod_timer(&sec_thread->timeout, jiffies + > msecs_to_jiffies(sec_thread->timeout_ms)); > + spin_unlock_irqrestore(&sec_thread->thread.chan->lock, flags); > + > + return false; > +} _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel