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 97C37C433EF for ; Mon, 10 Jan 2022 01:52:27 +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:References:In-Reply-To: Message-Id:Date:Subject:Cc:To:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=PZnTy1TSXef2lDIPp33a9I2IoI0ITtzHCHynYv5ckbw=; b=JNCGMGD2HT1kXv mIZRE2zqi0ZfUxV2/7wM5GSwQPKW2cd5XfrhXJWE0iswJ+6/dSWIIEXQB+5R9LauufAHdB4ctYaKw 06X7KExAe/Vo/UZ5nBC0SyZb8g0zQdIpksqNFh0oP/y5gReKm/FgJDnqpxbcJk3nj8ntKdhLcWpp0 7Wh8zVoc8zqzLBJW6J490odbH3LCe8sSpCyrbli4/PeibWj8/ip7WxkKBT1Ju/d/S09WOwZUOiclh oeTJIzUJ0jRL1tarvt6xRz96ifHe1OhA0wPkanhPfSCpyFQfKl/XGLZzildT1ofoUBALHYdMP1g09 3QeCwYPZkBB//d2Oj9+g==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1n6jq5-008lt8-1d; Mon, 10 Jan 2022 01:51:13 +0000 Received: from dfw.source.kernel.org ([139.178.84.217]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1n6jpR-008lbG-FT for linux-arm-kernel@lists.infradead.org; Mon, 10 Jan 2022 01:50:35 +0000 Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 0082160F4A; Mon, 10 Jan 2022 01:50:33 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id A8E53C36AEF; Mon, 10 Jan 2022 01:50:30 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1641779432; bh=PYUoajvMFfvEnqE0r+a8fDw7RtXce9LHMlxeX26VGPk=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=dFTGKK3inThb2/bhj0UvK47MlHsLxMchmS8oR8padAsO+phJABtdaTWPUtKihbiRp wlVY7SZR0pu5GfBILOYzCEX6g4hsbe9aT/4WfwWbQ5otXyb1oirYan/2UFYp5fzDTN DFJAi9udUGOD8enpZQVP8cYBbVE0LTRShB0jVHXG044v7ARFSknQF0g5yMIvu9PkcW T0d2tXlQngWAcQ3wQSEz6ClF5X4jxjaAPT7at97uKLmlehlX+T9XFCuicafu7HsTVt 7IvdBnPdsi+bm4Xnq20upi5BiM12qfr8QnrrGCLNWJV/KP5vSGd0urle39yJSX/OGk NlEnDbbwNW9Gg== From: =?UTF-8?q?Marek=20Beh=C3=BAn?= To: Marc Zyngier , Lorenzo Pieralisi , Bjorn Helgaas Cc: pali@kernel.org, linux-pci@vger.kernel.org, linux-arm-kernel@lists.infradead.org, =?UTF-8?q?Marek=20Beh=C3=BAn?= Subject: [PATCH v2 04/23] PCI: aardvark: Rewrite IRQ code to chained IRQ handler Date: Mon, 10 Jan 2022 02:49:59 +0100 Message-Id: <20220110015018.26359-5-kabel@kernel.org> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20220110015018.26359-1-kabel@kernel.org> References: <20220110015018.26359-1-kabel@kernel.org> MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20220109_175033_623838_A9CA41C2 X-CRM114-Status: GOOD ( 18.15 ) 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="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org RnJvbTogUGFsaSBSb2jDoXIgPHBhbGlAa2VybmVsLm9yZz4KClJld3JpdGUgdGhlIGNvZGUgdG8g dXNlIGlycV9zZXRfY2hhaW5lZF9oYW5kbGVyX2FuZF9kYXRhKCkgaGFuZGxlciB3aXRoCmNoYWlu ZWRfaXJxX2VudGVyKCkgYW5kIGNoYWluZWRfaXJxX2V4aXQoKSBwcm9jZXNzaW5nIGluc3RlYWQg b2YgdXNpbmcKZGV2bV9yZXF1ZXN0X2lycSgpLgoKYWR2a19wY2llX2lycV9oYW5kbGVyKCkgcmVh ZHMgSVJRIHN0YXR1cyBiaXRzIGFuZCBjYWxscyBvdGhlciBmdW5jdGlvbnMKYmFzZWQgb24gd2hp Y2ggYml0cyBhcmUgc2V0LiBUaGVzZSBmdW5jdGlvbnMgdGhlbiByZWFkIGl0cyBvd24gSVJRIHN0 YXR1cwpiaXRzIGFuZCBjYWxscyBvdGhlciBhYXJkdmFyayBmdW5jdGlvbnMgYmFzZWQgb24gdGhl c2UgYml0cy4gRmluYWxseQpnZW5lcmljX2hhbmRsZV9kb21haW5faXJxKCkgd2l0aCB0cmFuc2xh dGVkIGxpbnV4IElSUSBudW1iZXJzIGFyZSBjYWxsZWQuCgpTaWduZWQtb2ZmLWJ5OiBQYWxpIFJv aMOhciA8cGFsaUBrZXJuZWwub3JnPgpTaWduZWQtb2ZmLWJ5OiBNYXJlayBCZWjDum4gPGthYmVs QGtlcm5lbC5vcmc+Ci0tLQogZHJpdmVycy9wY2kvY29udHJvbGxlci9wY2ktYWFyZHZhcmsuYyB8 IDQ4ICsrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLQogMSBmaWxlIGNoYW5nZWQsIDI2IGluc2Vy dGlvbnMoKyksIDIyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvcGNpL2NvbnRy b2xsZXIvcGNpLWFhcmR2YXJrLmMgYi9kcml2ZXJzL3BjaS9jb250cm9sbGVyL3BjaS1hYXJkdmFy ay5jCmluZGV4IDM0NmQzODgzNTUzOS4uMzE1MTQ3ZjI4MTJmIDEwMDY0NAotLS0gYS9kcml2ZXJz L3BjaS9jb250cm9sbGVyL3BjaS1hYXJkdmFyay5jCisrKyBiL2RyaXZlcnMvcGNpL2NvbnRyb2xs ZXIvcGNpLWFhcmR2YXJrLmMKQEAgLTI2OSw2ICsyNjksNyBAQCBzdHJ1Y3QgYWR2a19wY2llIHsK IAkJdTMyIGFjdGlvbnM7CiAJfSB3aW5zW09CX1dJTl9DT1VOVF07CiAJdTggd2luc19jb3VudDsK KwlpbnQgaXJxOwogCXN0cnVjdCBpcnFfZG9tYWluICppcnFfZG9tYWluOwogCXN0cnVjdCBpcnFf Y2hpcCBpcnFfY2hpcDsKIAlyYXdfc3BpbmxvY2tfdCBpcnFfbG9jazsKQEAgLTE0MzcsMjEgKzE0 MzgsMjYgQEAgc3RhdGljIHZvaWQgYWR2a19wY2llX2hhbmRsZV9pbnQoc3RydWN0IGFkdmtfcGNp ZSAqcGNpZSkKIAl9CiB9CiAKLXN0YXRpYyBpcnFyZXR1cm5fdCBhZHZrX3BjaWVfaXJxX2hhbmRs ZXIoaW50IGlycSwgdm9pZCAqYXJnKQorc3RhdGljIHZvaWQgYWR2a19wY2llX2lycV9oYW5kbGVy KHN0cnVjdCBpcnFfZGVzYyAqZGVzYykKIHsKLQlzdHJ1Y3QgYWR2a19wY2llICpwY2llID0gYXJn OwotCXUzMiBzdGF0dXM7CisJc3RydWN0IGFkdmtfcGNpZSAqcGNpZSA9IGlycV9kZXNjX2dldF9o YW5kbGVyX2RhdGEoZGVzYyk7CisJc3RydWN0IGlycV9jaGlwICpjaGlwID0gaXJxX2Rlc2NfZ2V0 X2NoaXAoZGVzYyk7CisJdTMyIHZhbCwgbWFzaywgc3RhdHVzOwogCi0Jc3RhdHVzID0gYWR2a19y ZWFkbChwY2llLCBIT1NUX0NUUkxfSU5UX1NUQVRVU19SRUcpOwotCWlmICghKHN0YXR1cyAmIFBD SUVfSVJRX0NPUkVfSU5UKSkKLQkJcmV0dXJuIElSUV9OT05FOworCWNoYWluZWRfaXJxX2VudGVy KGNoaXAsIGRlc2MpOwogCi0JYWR2a19wY2llX2hhbmRsZV9pbnQocGNpZSk7CisJdmFsID0gYWR2 a19yZWFkbChwY2llLCBIT1NUX0NUUkxfSU5UX1NUQVRVU19SRUcpOworCW1hc2sgPSBhZHZrX3Jl YWRsKHBjaWUsIEhPU1RfQ1RSTF9JTlRfTUFTS19SRUcpOworCXN0YXR1cyA9IHZhbCAmICgofm1h c2spICYgUENJRV9JUlFfQUxMX01BU0spOwogCi0JLyogQ2xlYXIgaW50ZXJydXB0ICovCi0JYWR2 a193cml0ZWwocGNpZSwgUENJRV9JUlFfQ09SRV9JTlQsIEhPU1RfQ1RSTF9JTlRfU1RBVFVTX1JF Ryk7CisJaWYgKHN0YXR1cyAmIFBDSUVfSVJRX0NPUkVfSU5UKSB7CisJCWFkdmtfcGNpZV9oYW5k bGVfaW50KHBjaWUpOwogCi0JcmV0dXJuIElSUV9IQU5ETEVEOworCQkvKiBDbGVhciBpbnRlcnJ1 cHQgKi8KKwkJYWR2a193cml0ZWwocGNpZSwgUENJRV9JUlFfQ09SRV9JTlQsIEhPU1RfQ1RSTF9J TlRfU1RBVFVTX1JFRyk7CisJfQorCisJY2hhaW5lZF9pcnFfZXhpdChjaGlwLCBkZXNjKTsKIH0K IAogc3RhdGljIHZvaWQgX19tYXliZV91bnVzZWQgYWR2a19wY2llX2Rpc2FibGVfcGh5KHN0cnVj dCBhZHZrX3BjaWUgKnBjaWUpCkBAIC0xNTE4LDcgKzE1MjQsNyBAQCBzdGF0aWMgaW50IGFkdmtf cGNpZV9wcm9iZShzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpwZGV2KQogCXN0cnVjdCBhZHZrX3Bj aWUgKnBjaWU7CiAJc3RydWN0IHBjaV9ob3N0X2JyaWRnZSAqYnJpZGdlOwogCXN0cnVjdCByZXNv dXJjZV9lbnRyeSAqZW50cnk7Ci0JaW50IHJldCwgaXJxOworCWludCByZXQ7CiAKIAlicmlkZ2Ug PSBkZXZtX3BjaV9hbGxvY19ob3N0X2JyaWRnZShkZXYsIHNpemVvZihzdHJ1Y3QgYWR2a19wY2ll KSk7CiAJaWYgKCFicmlkZ2UpCkBAIC0xNjA0LDE3ICsxNjEwLDkgQEAgc3RhdGljIGludCBhZHZr X3BjaWVfcHJvYmUoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldikKIAlpZiAoSVNfRVJSKHBj aWUtPmJhc2UpKQogCQlyZXR1cm4gUFRSX0VSUihwY2llLT5iYXNlKTsKIAotCWlycSA9IHBsYXRm b3JtX2dldF9pcnEocGRldiwgMCk7Ci0JaWYgKGlycSA8IDApCi0JCXJldHVybiBpcnE7Ci0KLQly ZXQgPSBkZXZtX3JlcXVlc3RfaXJxKGRldiwgaXJxLCBhZHZrX3BjaWVfaXJxX2hhbmRsZXIsCi0J CQkgICAgICAgSVJRRl9TSEFSRUQgfCBJUlFGX05PX1RIUkVBRCwgImFkdmstcGNpZSIsCi0JCQkg ICAgICAgcGNpZSk7Ci0JaWYgKHJldCkgewotCQlkZXZfZXJyKGRldiwgIkZhaWxlZCB0byByZWdp c3RlciBpbnRlcnJ1cHRcbiIpOwotCQlyZXR1cm4gcmV0OwotCX0KKwlwY2llLT5pcnEgPSBwbGF0 Zm9ybV9nZXRfaXJxKHBkZXYsIDApOworCWlmIChwY2llLT5pcnEgPCAwKQorCQlyZXR1cm4gcGNp ZS0+aXJxOwogCiAJcGNpZS0+cmVzZXRfZ3BpbyA9IGRldm1fZ3Bpb2RfZ2V0X2Zyb21fb2Zfbm9k ZShkZXYsIGRldi0+b2Zfbm9kZSwKIAkJCQkJCSAgICAgICAicmVzZXQtZ3Bpb3MiLCAwLApAQCAt MTY2MywxMSArMTY2MSwxNCBAQCBzdGF0aWMgaW50IGFkdmtfcGNpZV9wcm9iZShzdHJ1Y3QgcGxh dGZvcm1fZGV2aWNlICpwZGV2KQogCQlyZXR1cm4gcmV0OwogCX0KIAorCWlycV9zZXRfY2hhaW5l ZF9oYW5kbGVyX2FuZF9kYXRhKHBjaWUtPmlycSwgYWR2a19wY2llX2lycV9oYW5kbGVyLCBwY2ll KTsKKwogCWJyaWRnZS0+c3lzZGF0YSA9IHBjaWU7CiAJYnJpZGdlLT5vcHMgPSAmYWR2a19wY2ll X29wczsKIAogCXJldCA9IHBjaV9ob3N0X3Byb2JlKGJyaWRnZSk7CiAJaWYgKHJldCA8IDApIHsK KwkJaXJxX3NldF9jaGFpbmVkX2hhbmRsZXJfYW5kX2RhdGEocGNpZS0+aXJxLCBOVUxMLCBOVUxM KTsKIAkJYWR2a19wY2llX3JlbW92ZV9tc2lfaXJxX2RvbWFpbihwY2llKTsKIAkJYWR2a19wY2ll X3JlbW92ZV9pcnFfZG9tYWluKHBjaWUpOwogCQlyZXR1cm4gcmV0OwpAQCAtMTcxNSw2ICsxNzE2 LDkgQEAgc3RhdGljIGludCBhZHZrX3BjaWVfcmVtb3ZlKHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2Ug KnBkZXYpCiAJYWR2a193cml0ZWwocGNpZSwgUENJRV9JU1IxX0FMTF9NQVNLLCBQQ0lFX0lTUjFf UkVHKTsKIAlhZHZrX3dyaXRlbChwY2llLCBQQ0lFX0lSUV9BTExfTUFTSywgSE9TVF9DVFJMX0lO VF9TVEFUVVNfUkVHKTsKIAorCS8qIFJlbW92ZSBJUlEgaGFuZGxlciAqLworCWlycV9zZXRfY2hh aW5lZF9oYW5kbGVyX2FuZF9kYXRhKHBjaWUtPmlycSwgTlVMTCwgTlVMTCk7CisKIAkvKiBSZW1v dmUgSVJRIGRvbWFpbnMgKi8KIAlhZHZrX3BjaWVfcmVtb3ZlX21zaV9pcnFfZG9tYWluKHBjaWUp OwogCWFkdmtfcGNpZV9yZW1vdmVfaXJxX2RvbWFpbihwY2llKTsKLS0gCjIuMzQuMQoKCl9fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmxpbnV4LWFybS1rZXJu ZWwgbWFpbGluZyBsaXN0CmxpbnV4LWFybS1rZXJuZWxAbGlzdHMuaW5mcmFkZWFkLm9yZwpodHRw Oi8vbGlzdHMuaW5mcmFkZWFkLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2xpbnV4LWFybS1rZXJuZWwK