From patchwork Fri Apr 29 10:32:20 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kefeng Wang X-Patchwork-Id: 12831758 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 kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 8676DC433F5 for ; Fri, 29 Apr 2022 10:21:36 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id D39006B0071; Fri, 29 Apr 2022 06:21:35 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id CC3326B0074; Fri, 29 Apr 2022 06:21:35 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id B63EE6B0075; Fri, 29 Apr 2022 06:21:35 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (relay.hostedemail.com [64.99.140.28]) by kanga.kvack.org (Postfix) with ESMTP id A023A6B0071 for ; Fri, 29 Apr 2022 06:21:35 -0400 (EDT) Received: from smtpin21.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 717C42B1EF for ; Fri, 29 Apr 2022 10:21:35 +0000 (UTC) X-FDA: 79409524950.21.AB6F54A Received: from szxga01-in.huawei.com (szxga01-in.huawei.com [45.249.212.187]) by imf31.hostedemail.com (Postfix) with ESMTP id DBDE92005C for ; Fri, 29 Apr 2022 10:21:23 +0000 (UTC) Received: from dggpemm500020.china.huawei.com (unknown [172.30.72.56]) by szxga01-in.huawei.com (SkyGuard) with ESMTP id 4KqT6M1sDszhYp8; Fri, 29 Apr 2022 18:21:15 +0800 (CST) Received: from dggpemm500001.china.huawei.com (7.185.36.107) by dggpemm500020.china.huawei.com (7.185.36.49) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.24; Fri, 29 Apr 2022 18:21:30 +0800 Received: from localhost.localdomain.localdomain (10.175.113.25) by dggpemm500001.china.huawei.com (7.185.36.107) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.24; Fri, 29 Apr 2022 18:21:30 +0800 From: Kefeng Wang To: , , , , CC: , , , Kefeng Wang Subject: [PATCH v2 0/5] arm64: Cleanup ioremap() and support ioremap_prot() Date: Fri, 29 Apr 2022 18:32:20 +0800 Message-ID: <20220429103225.75121-1-wangkefeng.wang@huawei.com> X-Mailer: git-send-email 2.35.3 MIME-Version: 1.0 X-Originating-IP: [10.175.113.25] X-ClientProxiedBy: dggems704-chm.china.huawei.com (10.3.19.181) To dggpemm500001.china.huawei.com (7.185.36.107) X-CFilter-Loop: Reflected X-Stat-Signature: gtcks9p9dtx384e7dyzwwoiuy14jrpj9 X-Rspamd-Server: rspam12 X-Rspamd-Queue-Id: DBDE92005C Authentication-Results: imf31.hostedemail.com; dkim=none; spf=pass (imf31.hostedemail.com: domain of wangkefeng.wang@huawei.com designates 45.249.212.187 as permitted sender) smtp.mailfrom=wangkefeng.wang@huawei.com; dmarc=pass (policy=quarantine) header.from=huawei.com X-Rspam-User: X-HE-Tag: 1651227683-786087 X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: 1. Enhance generic ioremap to make it more useful. 2. Let's arm64 use GENERIC_IOREMAP to cleanup code. 3. Support HAVE_IOREMAP_PROT on arm64, which enable generic_access_phys(), it is useful when debug(eg, gdb) via access_process_vm device memory infrastructure. v2: - s/addr/phys_addr in ioremap_prot, suggested by Andrew Morton - rename arch_ioremap/iounmap_check to arch_ioremap/iounmad and change return value, per Christoph Hellwig and Andrew Morton - and use 'ifndef arch_ioremap' instead of weak function, per Arnd Bergmann - collect ack/review Kefeng Wang (5): mm: ioremap: Use more sensibly name in ioremap_prot() mm: ioremap: Setup phys_addr of struct vm_struct mm: ioremap: Add arch_ioremap/iounmap() arm64: mm: Convert to GENERIC_IOREMAP arm64: Add HAVE_IOREMAP_PROT support .../features/vm/ioremap_prot/arch-support.txt | 2 +- arch/arm64/Kconfig | 2 + arch/arm64/include/asm/io.h | 20 +++-- arch/arm64/include/asm/pgtable.h | 10 +++ arch/arm64/kernel/acpi.c | 2 +- arch/arm64/mm/hugetlbpage.c | 10 --- arch/arm64/mm/ioremap.c | 85 +++---------------- include/asm-generic/io.h | 16 +++- mm/ioremap.c | 27 ++++-- 9 files changed, 74 insertions(+), 100 deletions(-)