From patchwork Thu Sep 21 11:04:21 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Baoquan He X-Patchwork-Id: 13393858 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 DD608E70719 for ; Thu, 21 Sep 2023 11:04:49 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 78A6A6B0200; Thu, 21 Sep 2023 07:04:49 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 739CA6B0203; Thu, 21 Sep 2023 07:04:49 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 628FA6B020E; Thu, 21 Sep 2023 07:04:49 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id 52D186B0200 for ; Thu, 21 Sep 2023 07:04:49 -0400 (EDT) Received: from smtpin15.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 30C82808B6 for ; Thu, 21 Sep 2023 11:04:49 +0000 (UTC) X-FDA: 81260321898.15.5F6BAD7 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by imf01.hostedemail.com (Postfix) with ESMTP id 39F5240013 for ; Thu, 21 Sep 2023 11:04:47 +0000 (UTC) Authentication-Results: imf01.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=AMxZCFTq; spf=pass (imf01.hostedemail.com: domain of bhe@redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=bhe@redhat.com; dmarc=pass (policy=none) header.from=redhat.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1695294287; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=8AP4WAkfm0g8fnMPEPLH78szMDWqxElEcpAiYehWd/g=; b=RZ2Iul435LDQYwcJXiMQJGk6ILrFh2HcJbyaOIpIoQU+NAF19Dy97co4rMnPvwgSTM1Ars QFi+X1TYAQ6ba3QvbXhpKo1TCUvTKfZOIJO0vr+v+DIn0bS/BRt6KgXlddCDTdmhiMfGy/ R4d9WXhTiJIvtvOzlPe1D3xqXZeeNMk= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1695294287; a=rsa-sha256; cv=none; b=jlRuu4FwIcYnWKoP+RfZl5yzmRncAoKN6hUOi/D7L2bsyWsN/rtm7lPZ/VfajEzUSp/TRK PAOe4mVCoeKaPfAZ6eksrI7UsOKjSijIN5X+I/0TC7oQvv34TjMv6Hs7RdE4o64VAtSKQU GuNOrc6nlvlwjShabKABPoE1D/F6pYU= ARC-Authentication-Results: i=1; imf01.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=AMxZCFTq; spf=pass (imf01.hostedemail.com: domain of bhe@redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=bhe@redhat.com; dmarc=pass (policy=none) header.from=redhat.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1695294286; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=8AP4WAkfm0g8fnMPEPLH78szMDWqxElEcpAiYehWd/g=; b=AMxZCFTqrs0BHN48xSc4N61K2WV+bdtGaHTFo9qMYfvBL2X7hpYNOzA3R9SwtUNG/CNlBg hQ/g2nIAeCWsUil8Hwba1Ed5KbmgM1rU9Kcj06gyb4HYRbWVADl32VN9tlAMnnIYh3TB1S YCAC9aJAiMuYQNHPWkPWbes70+Rtyno= Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-584-Ku-6zn3_OjOqTQ_ymnSqzQ-1; Thu, 21 Sep 2023 07:04:42 -0400 X-MC-Unique: Ku-6zn3_OjOqTQ_ymnSqzQ-1 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.rdu2.redhat.com [10.11.54.6]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 6C410185A79B; Thu, 21 Sep 2023 11:04:41 +0000 (UTC) Received: from MiWiFi-R3L-srv.redhat.com (unknown [10.72.112.40]) by smtp.corp.redhat.com (Postfix) with ESMTP id C03FF2156711; Thu, 21 Sep 2023 11:04:34 +0000 (UTC) From: Baoquan He To: linux-kernel@vger.kernel.org Cc: linux-arch@vger.kernel.org, linux-mm@kvack.org, akpm@linux-foundation.org, arnd@arndb.de, jiaxun.yang@flygoat.com, mpe@ellerman.id.au, geert@linux-m68k.org, mcgrof@kernel.org, hch@infradead.org, tsbogend@alpha.franken.de, f.fainelli@gmail.com, deller@gmx.de, Baoquan He , Thomas Zimmermann , Christophe Leroy , linux-fbdev@vger.kernel.org, dri-devel@lists.freedesktop.org Subject: [PATCH v5 1/4] video: fbdev: atyfb: only use ioremap_uc() on i386 and ia64 Date: Thu, 21 Sep 2023 19:04:21 +0800 Message-ID: <20230921110424.215592-2-bhe@redhat.com> In-Reply-To: <20230921110424.215592-1-bhe@redhat.com> References: <20230921110424.215592-1-bhe@redhat.com> MIME-Version: 1.0 Content-type: text/plain X-Scanned-By: MIMEDefang 3.1 on 10.11.54.6 X-Rspamd-Queue-Id: 39F5240013 X-Rspam-User: X-Rspamd-Server: rspam11 X-Stat-Signature: unoraso9m67qjmkdkc9947y76k3ccusr X-HE-Tag: 1695294287-966022 X-HE-Meta: U2FsdGVkX1+rrkRpQzkAw0E7BwEEB5PT96F0XDuBlUNo5MeG6UjGRiZ8dXPlUNvwuQ1OxYytcFVl0/AAGofB4FexqZECFzn40HlMeonTUS/iF4pIStivcJJ91WlKsPB1fpQNRA44etzPWpxwk3GRIvsJoyZO/16fkheYYd1jvUOKOScqL9FZ5BKewVuJy2u0ean/2NaAOhWvdZmNoutlN8Nrp8/pexrQwWpw2GTZmYUThbIAXxSKSqDwXe8hcxeAvmjSz3wvSumi8K2Y6V3nZkXHPxnT51B1+3Ep8N0q1X/csPIRmfEx0eskV0y+nnjiT+cGqpF51RKD1PqnJg42TpTB+5jqIScsz7lntWBvLRSOshRwzdMt6/q9xw2MH7D/1QNTxChvlOYVDtmRjI2htT4AfAognxFwCRCWtTdwsFWCFjABoLDqn8P/3QIHX3802qk75/bJPRZycCqnV8M3lKpp1RByPMFg5Q80Rtq0Cd+SjL3fQLl3cuHCaQrSgXUmJ20vd0borRx+ptTSd1u2mYZoY9OM0fcf/uZmXTjy8QINEENKPIoSnRZC4BbfqlXci/ElIlBBGgwbQtUE2Zqxr3D4ZLkRgpj9Dpt8hleUn1JuAYfsPSpA8ZxkyZIXuGOBEFL09loAqwB9uYEORQXoC5pT8udFqrJy3kf9C3t4b42Kg/OmtvvF1bTyLNP8U0/VosNTCPxsMW1eDWif8/edET/sdkonT/3Ulap0kHrgXhriHVGFeR7xRokbcsKG4S3eUad0KT7M53sTlqaLXLbaqMZ6UbO8/SXXgXkf9Zclw1mtAJWCu2f1JcZ73lh+FayhJDaSDdf/Txxmm92kYfubzvCce8BEjJvJ3HOwJJseuWzW+0lpZ5hiftpYsRyMUmx7WB4E1MFtkMSnS6Xu3//ZPxYQCkT/3OX0+fJ4vNoIYvC+59r7Z9a6/pMT85LUkx5338gF2EK8aGzTsKKw6u8 yl5K64qR W+Aynv8J8W02MFZ8iT93wGwXCKzzAL6iPizQ8+uLugfgy1pRDJNpJKCEr+9t78yqSnTbcGcHh3bJSjrj7X4fDQEmw0EjQUrYH9oBJYutTTcFMDc1fmzrqWy/HJGfXlycG6AAtGzDF6GI92bF3qHCrBnNA2+YpJeAJuiK7DPx6+TM/uINQ8KK7UamE44+lpexST8W4pJi5jUNPAi6sc194INjMTjyHYLqzD0Ykr8ilz5ANl9vJEI5mxltrLrZOHTtWVRnjcViJF6E7pPavHO3MAV5xFpCj0vxM0UzdctqgksEhiCWpJUetkTFTutxIJV8zBOL894ClPSzKsX9HnHxXPIdHl9u8+hI8hALdrNipt/s6NYgbL2SnhC38wUkofZqHlVwj7cOud7mH0kt/WXGLWs+DFl9iRSjBASH0X2VrECJMKk83mflfoP3kshsI6olX5LUFk+pSWGjSqobi2gp2CuHMcA== 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: From: Arnd Bergmann ioremap_uc() is only meaningful on old x86-32 systems with the PAT extension, and on ia64 with its slightly unconventional ioremap() behavior, everywhere else this is the same as ioremap() anyway. Change the only driver that still references ioremap_uc() to only do so on x86-32/ia64 in order to allow removing that interface at some point in the future for the other architectures. On some architectures, ioremap_uc() just returns NULL, changing the driver to call ioremap() means that they now have a chance of working correctly. Signed-off-by: Arnd Bergmann Signed-off-by: Baoquan He Reviewed-by: Luis Chamberlain Cc: Helge Deller Cc: Thomas Zimmermann Cc: Christophe Leroy Cc: linux-fbdev@vger.kernel.org Cc: dri-devel@lists.freedesktop.org --- drivers/video/fbdev/aty/atyfb_base.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/drivers/video/fbdev/aty/atyfb_base.c b/drivers/video/fbdev/aty/atyfb_base.c index 5c87817a4f4c..3dcf83f5e7b4 100644 --- a/drivers/video/fbdev/aty/atyfb_base.c +++ b/drivers/video/fbdev/aty/atyfb_base.c @@ -3440,11 +3440,15 @@ static int atyfb_setup_generic(struct pci_dev *pdev, struct fb_info *info, } info->fix.mmio_start = raddr; +#if defined(__i386__) || defined(__ia64__) /* * By using strong UC we force the MTRR to never have an * effect on the MMIO region on both non-PAT and PAT systems. */ par->ati_regbase = ioremap_uc(info->fix.mmio_start, 0x1000); +#else + par->ati_regbase = ioremap(info->fix.mmio_start, 0x1000); +#endif if (par->ati_regbase == NULL) return -ENOMEM; From patchwork Thu Sep 21 11:04:22 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Baoquan He X-Patchwork-Id: 13393859 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 42258E70719 for ; Thu, 21 Sep 2023 11:04:59 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id D56F66B020E; Thu, 21 Sep 2023 07:04:58 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id D06C26B020F; Thu, 21 Sep 2023 07:04:58 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id BCE2F6B0213; Thu, 21 Sep 2023 07:04:58 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id AD90D6B020E for ; Thu, 21 Sep 2023 07:04:58 -0400 (EDT) Received: from smtpin10.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id 767EBB3A6D for ; Thu, 21 Sep 2023 11:04:58 +0000 (UTC) X-FDA: 81260322276.10.FF0D214 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by imf06.hostedemail.com (Postfix) with ESMTP id A8D01180026 for ; Thu, 21 Sep 2023 11:04:55 +0000 (UTC) Authentication-Results: imf06.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=gGefH4J5; spf=pass (imf06.hostedemail.com: domain of bhe@redhat.com designates 170.10.129.124 as permitted sender) smtp.mailfrom=bhe@redhat.com; dmarc=pass (policy=none) header.from=redhat.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1695294295; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=gc794sWeUcluHG84qn7IZLMHNx7xgMXK60iMjhdtco8=; b=4II5OXV/J2tqdlzbg/E9zmQOwNAa08CEG1g1jWz729yXDHE1sO82AAcuB/YzBW46rAKN33 2HnkB3lK1TlKJ/2VCslzt5wBgmkI+HOySJc2XVwjnfWrNaguHV7HeI3FzetEICeKHXcOYA u8cwYWpvvTynWxwFF9VW/wUsFLs2Ubs= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1695294295; a=rsa-sha256; cv=none; b=Tj1W/X16Mg3xZngWKZ8ehbd9gK40+fhn0FEHbVzGBolElBrXz3WDLhtDv1BrZL6Ti1G8tc fmvlAoLx5ppsJQhtan7DfFNslfmO3buOS/Q03Ztmc56je2BmuqcoX666mB1tWfFskHgQrt 4AwsIvEvo+PBjDbZ+8c2Rz8Wcxp2eN0= ARC-Authentication-Results: i=1; imf06.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=gGefH4J5; spf=pass (imf06.hostedemail.com: domain of bhe@redhat.com designates 170.10.129.124 as permitted sender) smtp.mailfrom=bhe@redhat.com; dmarc=pass (policy=none) header.from=redhat.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1695294295; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=gc794sWeUcluHG84qn7IZLMHNx7xgMXK60iMjhdtco8=; b=gGefH4J5x9x96ZFffdSdR+oiF6TZb8Iz8X3bIgewecLQvdN8ld4e9FeGkQboBLd17RWNqo DYZVqjgKNjNZbOcc5JkUKk/uQaqoqF27QEo4oTWWa0/z320qD3aZ8UvBiRcFFebvr0caEm Jh2klDCyxJwJu0eBWfkTt/NjdhlSZlg= Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-561-Fm1uU5RAMbyD5e9qp4Klfw-1; Thu, 21 Sep 2023 07:04:48 -0400 X-MC-Unique: Fm1uU5RAMbyD5e9qp4Klfw-1 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.rdu2.redhat.com [10.11.54.6]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id F41DB8039D2; Thu, 21 Sep 2023 11:04:47 +0000 (UTC) Received: from MiWiFi-R3L-srv.redhat.com (unknown [10.72.112.40]) by smtp.corp.redhat.com (Postfix) with ESMTP id 124EF2156701; Thu, 21 Sep 2023 11:04:41 +0000 (UTC) From: Baoquan He To: linux-kernel@vger.kernel.org Cc: linux-arch@vger.kernel.org, linux-mm@kvack.org, akpm@linux-foundation.org, arnd@arndb.de, jiaxun.yang@flygoat.com, mpe@ellerman.id.au, geert@linux-m68k.org, mcgrof@kernel.org, hch@infradead.org, tsbogend@alpha.franken.de, f.fainelli@gmail.com, deller@gmx.de, Baoquan He , Huacai Chen , linux-mips@vger.kernel.org Subject: [PATCH v5 2/4] mips: add including Date: Thu, 21 Sep 2023 19:04:22 +0800 Message-ID: <20230921110424.215592-3-bhe@redhat.com> In-Reply-To: <20230921110424.215592-1-bhe@redhat.com> References: <20230921110424.215592-1-bhe@redhat.com> MIME-Version: 1.0 Content-type: text/plain X-Scanned-By: MIMEDefang 3.1 on 10.11.54.6 X-Rspamd-Queue-Id: A8D01180026 X-Rspam-User: X-Rspamd-Server: rspam11 X-Stat-Signature: n3tut1ok3ud7xby61fezjn7f4ckjceeg X-HE-Tag: 1695294295-513653 X-HE-Meta: U2FsdGVkX196S1cpIc05dn9zcVx+KymY5MXFypSN9rhIkDGTUkim68ubYe3V5Go7ZxHxam8KC4R1NO9yVhLjEpGdKxB3ILAPuP3MGwfxz7j1HgeNsiN5lHumOslqzIAqnGh9txT6/MzzXGl9PyzatnOs+EjpRfVUFfgW/AKmwlFLOgssQoYO16aMhukTmdbwuk6FDjN/x+J6zFkDnxOseR7D5M5Fu3D+8iQNW2y11PyFJj6Czw8alK2K8uwZBZ5ZOv5BNt9niUhFq001dRDn6T1ePMmHSQF+iIYXDiIW2AWiZMSmN8HUIox8hVeXWovfA/3djBN1bKo5EB7KWpz9RoaLhXmeBuRtIwD9zh7mbalaEF7W+IBgCtG/uWlFWzh4RGMe3N5U6iTOauFB31BiIscFa7DQGhRXBj10VV1pylD+NWoUd7fPQg/DZ7dOrYHsMbawJU+opTvA17zAQsSNbdRPp0sEMMvADQ1i15eTryqmzV8Ovya4cVsYG4lYoSypS+5MBtRPBYwJPBBkyQDIt17Pu7YgJfEJXUPnoArEPXE5WIF/nYdqwq8Z/zx0NldpBOOTaCKqPIsLFuPqPOwVNT6ZkQytErpYdk0RhYDJ4Tmj43TxZcv5p/iYeHqzKlHueJ3lRlDE/QSrjy78pIRh3UTXGUhZMEnnKVcik/AhrakFQD/u3NLPcjCCbXkB895XdJOcqI9WGVZglRBzuT6ZomJd+1ofYXk129vSAxnIKblpGDPt7qhir7ced/luWD6I1fhVDz5NeUpfMzxloYccFiitq6MQXK+V6q9+6uMSLZNI3PJjEIwClNIfVHXh2fsaRKGn9IjiYKL1TDNiGoPt/l5TLnmen44HHyLVT32MaQJ/jLXupjMtGznj/r2hT0f74EYQ6s9DWtcyK/gEwlht+smQpje7OTLVEo9bPRCKq4eq1JggYGDWxfb7uGwg+NYTNR0SVTUvsYlKvee/dWs t1JD0wNA hj47W5wbG/tG6kxWyHJSEH5EBZ3Y5jiWDgYExi24gr986VJlt5WFR0MK8F0zBWlpVRKOo0Zurx7zrWcfeWd4U1uT9FEnY2KqP3Rj/HOxaIjloxpyeVfqigB4JFWLbtRI8uWUi3cJI81cpw7Z7Ol6tvXk3FSaq1ZBH1HyRX3wgQzVgMvCpeSgqTWTy4AzXe4yynxm5OrLm2u0UpTtNv+NE39lbCfCTrF/s/p5fX+czV/wjjAVQIwFu9ayi4m9nVIhws2micd3GqniwNSBA39rSA8+Yap1Q6XJExE7TMx5zIfhWmKErKjD5i7wk/E8bEonmC6WwvJtUjbAgj3hBwnSlY0Zw3G61C+iyAGm8sUIuG6hs2fcrHuMz7Lb7P7dg3C1qkl4y2WAX/NJh4a28On/tkh1q46be+FMWxx2TrNKGXzP0I8o= 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: From: Jiaxun Yang With the adding, some default ioremap_xx methods defined in asm-generic/io.h can be used. E.g the default ioremap_uc() returning NULL. We also massaged various headers to avoid nested includes. Signed-off-by: Baoquan He Signed-off-by: Jiaxun Yang [jiaxun.yang@flygoat.com: Massage more headers, fix ioport defines] Reviewed-by: Arnd Bergmann Cc: Thomas Bogendoerfer Cc: Huacai Chen Cc: linux-mips@vger.kernel.org Cc: linux-arch@vger.kernel.org Acked-by: Thomas Bogendoerfer --- arch/mips/include/asm/io.h | 96 +++++++++++++++++++++++---------- arch/mips/include/asm/mmiowb.h | 4 +- arch/mips/include/asm/smp-ops.h | 2 - arch/mips/include/asm/smp.h | 4 +- arch/mips/kernel/setup.c | 1 + arch/mips/pci/pci-ip27.c | 3 ++ 6 files changed, 75 insertions(+), 35 deletions(-) diff --git a/arch/mips/include/asm/io.h b/arch/mips/include/asm/io.h index 062dd4e6b954..41d8bd5adef8 100644 --- a/arch/mips/include/asm/io.h +++ b/arch/mips/include/asm/io.h @@ -13,7 +13,6 @@ #define _ASM_IO_H #include -#include #include #include @@ -25,7 +24,6 @@ #include #include #include -#include #include #include @@ -41,6 +39,11 @@ # define __raw_ioswabq(a, x) (x) # define ____raw_ioswabq(a, x) (x) +# define _ioswabb ioswabb +# define _ioswabw ioswabw +# define _ioswabl ioswabl +# define _ioswabq ioswabq + # define __relaxed_ioswabb ioswabb # define __relaxed_ioswabw ioswabw # define __relaxed_ioswabl ioswabl @@ -126,6 +129,7 @@ static inline phys_addr_t virt_to_phys(const volatile void *x) * almost all conceivable cases a device driver should not be using * this function */ +#define phys_to_virt phys_to_virt static inline void * phys_to_virt(unsigned long address) { return __va(address); @@ -296,9 +300,9 @@ static inline type pfx##read##bwlq(const volatile void __iomem *mem) \ return pfx##ioswab##bwlq(__mem, __val); \ } -#define __BUILD_IOPORT_SINGLE(pfx, bwlq, type, barrier, relax, p) \ +#define __BUILD_IOPORT_SINGLE(pfx, bwlq, type, barrier, relax) \ \ -static inline void pfx##out##bwlq##p(type val, unsigned long port) \ +static inline void pfx##out##bwlq(type val, unsigned long port) \ { \ volatile type *__addr; \ type __val; \ @@ -318,7 +322,7 @@ static inline void pfx##out##bwlq##p(type val, unsigned long port) \ *__addr = __val; \ } \ \ -static inline type pfx##in##bwlq##p(unsigned long port) \ +static inline type pfx##in##bwlq(unsigned long port) \ { \ volatile type *__addr; \ type __val; \ @@ -360,11 +364,10 @@ __BUILD_MEMORY_PFX(__mem_, q, u64, 0) #endif #define __BUILD_IOPORT_PFX(bus, bwlq, type) \ - __BUILD_IOPORT_SINGLE(bus, bwlq, type, 1, 0,) \ - __BUILD_IOPORT_SINGLE(bus, bwlq, type, 1, 0, _p) + __BUILD_IOPORT_SINGLE(bus, bwlq, type, 1, 0) #define BUILDIO_IOPORT(bwlq, type) \ - __BUILD_IOPORT_PFX(, bwlq, type) \ + __BUILD_IOPORT_PFX(_, bwlq, type) \ __BUILD_IOPORT_PFX(__mem_, bwlq, type) BUILDIO_IOPORT(b, u8) @@ -412,14 +415,6 @@ __BUILDIO(q, u64) #define writeq_be(val, addr) \ __raw_writeq(cpu_to_be64((val)), (__force unsigned *)(addr)) -/* - * Some code tests for these symbols - */ -#ifdef CONFIG_64BIT -#define readq readq -#define writeq writeq -#endif - #define __BUILD_MEMORY_STRING(bwlq, type) \ \ static inline void writes##bwlq(volatile void __iomem *mem, \ @@ -480,18 +475,6 @@ BUILDSTRING(l, u32) BUILDSTRING(q, u64) #endif -static inline void memset_io(volatile void __iomem *addr, unsigned char val, int count) -{ - memset((void __force *) addr, val, count); -} -static inline void memcpy_fromio(void *dst, const volatile void __iomem *src, int count) -{ - memcpy(dst, (void __force *) src, count); -} -static inline void memcpy_toio(volatile void __iomem *dst, const void *src, int count) -{ - memcpy((void __force *) dst, src, count); -} /* * The caches on some architectures aren't dma-coherent and have need to @@ -548,6 +531,61 @@ extern void (*_dma_cache_inv)(unsigned long start, unsigned long size); #define csr_out32(v, a) (*(volatile u32 *)((unsigned long)(a) + __CSR_32_ADJUST) = (v)) #define csr_in32(a) (*(volatile u32 *)((unsigned long)(a) + __CSR_32_ADJUST)) + +#define __raw_readb __raw_readb +#define __raw_readw __raw_readw +#define __raw_readl __raw_readl +#ifdef CONFIG_64BIT +#define __raw_readq __raw_readq +#endif +#define __raw_writeb __raw_writeb +#define __raw_writew __raw_writew +#define __raw_writel __raw_writel +#ifdef CONFIG_64BIT +#define __raw_writeq __raw_writeq +#endif + +#define readb readb +#define readw readw +#define readl readl +#ifdef CONFIG_64BIT +#define readq readq +#endif +#define writeb writeb +#define writew writew +#define writel writel +#ifdef CONFIG_64BIT +#define writeq writeq +#endif + +#define readsb readsb +#define readsw readsw +#define readsl readsl +#ifdef CONFIG_64BIT +#define readsq readsq +#endif +#define writesb writesb +#define writesw writesw +#define writesl writesl +#ifdef CONFIG_64BIT +#define writesq writesq +#endif + +#define _inb _inb +#define _inw _inw +#define _inl _inl +#define insb insb +#define insw insw +#define insl insl + +#define _outb _outb +#define _outw _outw +#define _outl _outl +#define outsb outsb +#define outsw outsw +#define outsl outsl + + /* * Convert a physical pointer to a virtual kernel pointer for /dev/mem * access @@ -557,4 +595,6 @@ extern void (*_dma_cache_inv)(unsigned long start, unsigned long size); void __ioread64_copy(void *to, const void __iomem *from, size_t count); +#include + #endif /* _ASM_IO_H */ diff --git a/arch/mips/include/asm/mmiowb.h b/arch/mips/include/asm/mmiowb.h index a40824e3ef8e..cf27752fd220 100644 --- a/arch/mips/include/asm/mmiowb.h +++ b/arch/mips/include/asm/mmiowb.h @@ -2,9 +2,9 @@ #ifndef _ASM_MMIOWB_H #define _ASM_MMIOWB_H -#include +#include -#define mmiowb() iobarrier_w() +#define mmiowb() wmb() #include diff --git a/arch/mips/include/asm/smp-ops.h b/arch/mips/include/asm/smp-ops.h index 5719ff49eff1..a6941b7f0cc0 100644 --- a/arch/mips/include/asm/smp-ops.h +++ b/arch/mips/include/asm/smp-ops.h @@ -13,8 +13,6 @@ #include -#include - #ifdef CONFIG_SMP #include diff --git a/arch/mips/include/asm/smp.h b/arch/mips/include/asm/smp.h index a40d8c0e4b87..f3b18b4a5e44 100644 --- a/arch/mips/include/asm/smp.h +++ b/arch/mips/include/asm/smp.h @@ -11,13 +11,11 @@ #ifndef __ASM_SMP_H #define __ASM_SMP_H -#include +#include #include -#include #include #include -#include #include extern int smp_num_siblings; diff --git a/arch/mips/kernel/setup.c b/arch/mips/kernel/setup.c index cb871eb784a7..6939b27b1106 100644 --- a/arch/mips/kernel/setup.c +++ b/arch/mips/kernel/setup.c @@ -43,6 +43,7 @@ #include #include #include +#include #include #include diff --git a/arch/mips/pci/pci-ip27.c b/arch/mips/pci/pci-ip27.c index d85cbf84e41c..973faea61cad 100644 --- a/arch/mips/pci/pci-ip27.c +++ b/arch/mips/pci/pci-ip27.c @@ -7,6 +7,9 @@ * Copyright (C) 1999, 2000, 04 Ralf Baechle (ralf@linux-mips.org) * Copyright (C) 1999, 2000 Silicon Graphics, Inc. */ + +#include + #include #include #include From patchwork Thu Sep 21 11:04:23 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Baoquan He X-Patchwork-Id: 13393860 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 31370E70719 for ; Thu, 21 Sep 2023 11:05:06 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id BF7076B0213; Thu, 21 Sep 2023 07:05:05 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id BA7526B0246; Thu, 21 Sep 2023 07:05:05 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id A6EE66B0248; Thu, 21 Sep 2023 07:05:05 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0016.hostedemail.com [216.40.44.16]) by kanga.kvack.org (Postfix) with ESMTP id 974EA6B0213 for ; Thu, 21 Sep 2023 07:05:05 -0400 (EDT) Received: from smtpin28.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 687F4808C2 for ; Thu, 21 Sep 2023 11:05:05 +0000 (UTC) X-FDA: 81260322570.28.E5CA0C8 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by imf01.hostedemail.com (Postfix) with ESMTP id 8A6A840010 for ; Thu, 21 Sep 2023 11:05:03 +0000 (UTC) Authentication-Results: imf01.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=Uh+U4xGQ; dmarc=pass (policy=none) header.from=redhat.com; spf=pass (imf01.hostedemail.com: domain of bhe@redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=bhe@redhat.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1695294303; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=tn5ZDFUI6iPOIWmja0Ms5+F66UgwvJBJvQvpQLjnla0=; b=BIg6Ye3aCXZlUdIoBhvLl3XkgATk0L6Kkw7sRkvlrkjjfpN3o+0fh1CoMaIGStSEl8ZVFm 4IEz+jb+ZyFFYUTUNn8GSS4Qsqh8LYGhFmTSxgWmtrQ2butPAG0w1C+xnrAo82LBuxBFyn 2LfHBq7tmEToWN4GQjlUgULeSBnsoyc= ARC-Authentication-Results: i=1; imf01.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=Uh+U4xGQ; dmarc=pass (policy=none) header.from=redhat.com; spf=pass (imf01.hostedemail.com: domain of bhe@redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=bhe@redhat.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1695294303; a=rsa-sha256; cv=none; b=A5gfk8gfVQlum4RVmiSgMiE3uwkJB/l308da6y8/z8suF3XUrduZEZAwc9jaMHLgkEeeeH UltO9Vxj56m3dN7lI9BEsIC3lhYlgVsE15rVsu5fhY2p0wWl2tdmrwxJrAG+wuaqfUDPdR JfkfUzG5P09t/dw0nLHTOCHPt+yrUYM= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1695294302; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=tn5ZDFUI6iPOIWmja0Ms5+F66UgwvJBJvQvpQLjnla0=; b=Uh+U4xGQwOoFTrrsirbcSlMpOaxvf/trtf0CTs+oKA1CM6ff40BM3tYcZ1KsQOhVRr1hwb lWlgsM0hCpPMTqEvvAacpPVPz2YUXz8lG6tqWe4b4/Omripx3n1Xmq54/bv4HlSiGxS3Ua naIkI3amXnfcsJyGCKQTjODWtVxFy1Q= Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-212-HzV00hqNNTmcFQhVDqz-Nw-1; Thu, 21 Sep 2023 07:04:57 -0400 X-MC-Unique: HzV00hqNNTmcFQhVDqz-Nw-1 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.rdu2.redhat.com [10.11.54.6]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 848AF8039CB; Thu, 21 Sep 2023 11:04:56 +0000 (UTC) Received: from MiWiFi-R3L-srv.redhat.com (unknown [10.72.112.40]) by smtp.corp.redhat.com (Postfix) with ESMTP id 9BA682156701; Thu, 21 Sep 2023 11:04:48 +0000 (UTC) From: Baoquan He To: linux-kernel@vger.kernel.org Cc: linux-arch@vger.kernel.org, linux-mm@kvack.org, akpm@linux-foundation.org, arnd@arndb.de, jiaxun.yang@flygoat.com, mpe@ellerman.id.au, geert@linux-m68k.org, mcgrof@kernel.org, hch@infradead.org, tsbogend@alpha.franken.de, f.fainelli@gmail.com, deller@gmx.de, Baoquan He , linux-alpha@vger.kernel.org, linux-hexagon@vger.kernel.org, linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org, linux-parisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org Subject: [PATCH v5 3/4] arch/*/io.h: remove ioremap_uc in some architectures Date: Thu, 21 Sep 2023 19:04:23 +0800 Message-ID: <20230921110424.215592-4-bhe@redhat.com> In-Reply-To: <20230921110424.215592-1-bhe@redhat.com> References: <20230921110424.215592-1-bhe@redhat.com> MIME-Version: 1.0 Content-type: text/plain X-Scanned-By: MIMEDefang 3.1 on 10.11.54.6 X-Rspamd-Queue-Id: 8A6A840010 X-Rspam-User: X-Rspamd-Server: rspam05 X-Stat-Signature: 987k3so1tti7h7hogeysb9jtqgtq9frz X-HE-Tag: 1695294303-160654 X-HE-Meta: U2FsdGVkX1+uMXORheha7CIePXIUsgwHspOxuII/p1fU5SebDti2KLMymdqLVsfYzt6wFq4g5PuudOmws9wjPFaU6D4RVRld8BUwxNo1GoqOyHxZJC+aZtSwXQ3wsEqIvIZ3ypuJNQQUaobwewMcAII4r6U7V3AnfpZRxM+L6/KpFQBS38YyGREd9kCRdH2Uw/sX7LHvDmohZmPR4L3vws8gX4u8MLv8JQQj9TvBmV4g0cTkbyRzGZcZ0ILv0rN4xLYxM785EY7w/FrpXI0SXq2Mxn79GvG6Tts7PRBRU72CS7Xgw68s8FoVN8tDYheC4+AVW0DbcOKxKXLKanmuLMTYsJkFBlfU7inBkfAIoi1FXjTCDL+TRJGRAb0YtskbYX0WTGc0HMfAEPL+lRINXXXYRG2m822wJii/74uvwNpQw/N3Y6VLVuPX84HVKDjWjWYx3T4OFKHHcMnv0P55lC02Uetjvg0dQPRQhT29QW8UO+urmzP/Jeez6xEOLF0G/qFZrcaRtj3HHX2MMsNbdpEd3ppsj0fVdu41Z7FWQOgL3GEpFm0QBTlmxv46aMvnwSNG+B2fRm5/P/cSzzKJG0HpT2ggxppbUzdOjl8ebjFHEHBVz7eg6nU8Xo92usJtR8jOw4oCUJIzp2ODh3URM8AhilaKR4kEYsNMAzY6BTAZfESJEKt6TJL3pAaSuRNcpBAQVpmC0tC26HRkXyvBlY3k0ENuFzFVMYvWDxJhVLpQl2oC32HPbiDRfaWgrQUc9fCVg3uj/j3823Z4hyiJploJ+gQtppBnnu8xvlv34cvXOIzLBySbjvuOtNALcj/Jq/sHct845KaRUALAjg0iKGEq4HqKszzObUl9MkZ2DL4UAehQAGjskB15iVpndz44RdOcLDPpvF5prBF0EO/vWdCAgqBoO8Hf9z6A9rUDX7WFwy1TjMxH6+e/8qKQvZQZaot7E4w95A4awdkREQj 5PpjFHqk y4srKXiyNeb2xwkJTU+Ot6ICE5nlIiV1RhYeJ2XMZR/uE90fJvJnDAAu62izq14DAZwNk9Oo3hnyqdzLr5y3izaAlXNbfenieSnwHnimZ6jmGTvcH5pgI0A4AGOoOzfaFHo1RupQHte95owtVvfzdJciZWFecIjlcGUsXG6MZQhfB4wGjm7gKjXuaRaXSQFHwLP0DlLgDPk2PH+Udyg8cSGV2ttdv4a8gBew88FdN0CmJ23UX4dtSzaJcXoXuCZzuvWM3OG+hj8fhbxjo7tvy4Q0eh3yGdYbUKeFZ/58TZrBIUiEmrElKYVTkxvl3ds4h+fzSm4BqjV2vMjsKBGMGpUdFn0NoRR9HUnBCPz8HzX2VMIcVnr6qCiBgEusvdm+nDk3p9L32dHg8fC9SZaRJCMT519hdI52S2L4IgIZ5DzxCPvMmE1t2lhyhhK5Kjrc3q8qRmupzG4JpOk5phlmakrRrFw== 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: ioremap_uc() is only meaningful on old x86-32 systems with the PAT extension, and on ia64 with its slightly unconventional ioremap() behavior. So remove the ioremap_uc() definition in architecutures other than x86 and ia64. These architectures all have asm-generic/io.h included and will have the default ioremap_uc() definition which returns NULL. This changes the existing behaviour, while no need to worry about any breakage because in the only callsite of ioremap_uc(), code has been adjusted to eliminate the impact. Please see atyfb_setup_generic() of drivers/video/fbdev/aty/atyfb_base.c. If any new invocation of ioremap_uc() need be added, please consider using ioremap() intead or adding a ARCH specific version if necessary. Signed-off-by: Baoquan He Acked-by: Geert Uytterhoeven Acked-by: Michael Ellerman (powerpc) Acked-by: Helge Deller # parisc Cc: linux-alpha@vger.kernel.org Cc: linux-hexagon@vger.kernel.org Cc: linux-m68k@lists.linux-m68k.org Cc: linux-mips@vger.kernel.org Cc: linux-parisc@vger.kernel.org Cc: linuxppc-dev@lists.ozlabs.org Cc: linux-sh@vger.kernel.org Cc: sparclinux@vger.kernel.org Acked-by: Arnd Bergmann Acked-by: Thomas Bogendoerfer Acked-by: John Paul Adrian Glaubitz (SuperH) --- Documentation/driver-api/device-io.rst | 9 +++++---- arch/alpha/include/asm/io.h | 1 - arch/hexagon/include/asm/io.h | 3 --- arch/m68k/include/asm/kmap.h | 1 - arch/mips/include/asm/io.h | 1 - arch/parisc/include/asm/io.h | 2 -- arch/powerpc/include/asm/io.h | 1 - arch/sh/include/asm/io.h | 2 -- arch/sparc/include/asm/io_64.h | 1 - 9 files changed, 5 insertions(+), 16 deletions(-) diff --git a/Documentation/driver-api/device-io.rst b/Documentation/driver-api/device-io.rst index 2c7abd234f4e..d55384b106bd 100644 --- a/Documentation/driver-api/device-io.rst +++ b/Documentation/driver-api/device-io.rst @@ -408,11 +408,12 @@ functions for details on the CPU side of things. ioremap_uc() ------------ -ioremap_uc() behaves like ioremap() except that on the x86 architecture without -'PAT' mode, it marks memory as uncached even when the MTRR has designated -it as cacheable, see Documentation/arch/x86/pat.rst. +ioremap_uc() is only meaningful on old x86-32 systems with the PAT extension, +and on ia64 with its slightly unconventional ioremap() behavior, everywhere +elss ioremap_uc() defaults to return NULL. -Portable drivers should avoid the use of ioremap_uc(). + +Portable drivers should avoid the use of ioremap_uc(), use ioremap() instead. ioremap_cache() --------------- diff --git a/arch/alpha/include/asm/io.h b/arch/alpha/include/asm/io.h index 7aeaf7c30a6f..076f0e4e7f1e 100644 --- a/arch/alpha/include/asm/io.h +++ b/arch/alpha/include/asm/io.h @@ -308,7 +308,6 @@ static inline void __iomem *ioremap(unsigned long port, unsigned long size) } #define ioremap_wc ioremap -#define ioremap_uc ioremap static inline void iounmap(volatile void __iomem *addr) { diff --git a/arch/hexagon/include/asm/io.h b/arch/hexagon/include/asm/io.h index e2b308e32a37..b7bc246dbcb1 100644 --- a/arch/hexagon/include/asm/io.h +++ b/arch/hexagon/include/asm/io.h @@ -174,9 +174,6 @@ static inline void writel(u32 data, volatile void __iomem *addr) #define _PAGE_IOREMAP (_PAGE_PRESENT | _PAGE_READ | _PAGE_WRITE | \ (__HEXAGON_C_DEV << 6)) -#define ioremap_uc(addr, size) ioremap((addr), (size)) - - #define __raw_writel writel static inline void memcpy_fromio(void *dst, const volatile void __iomem *src, diff --git a/arch/m68k/include/asm/kmap.h b/arch/m68k/include/asm/kmap.h index 4efb3efa593a..b778f015c917 100644 --- a/arch/m68k/include/asm/kmap.h +++ b/arch/m68k/include/asm/kmap.h @@ -25,7 +25,6 @@ static inline void __iomem *ioremap(unsigned long physaddr, unsigned long size) return __ioremap(physaddr, size, IOMAP_NOCACHE_SER); } -#define ioremap_uc ioremap #define ioremap_wt ioremap_wt static inline void __iomem *ioremap_wt(unsigned long physaddr, unsigned long size) diff --git a/arch/mips/include/asm/io.h b/arch/mips/include/asm/io.h index 41d8bd5adef8..1ecf255efb40 100644 --- a/arch/mips/include/asm/io.h +++ b/arch/mips/include/asm/io.h @@ -170,7 +170,6 @@ void iounmap(const volatile void __iomem *addr); */ #define ioremap(offset, size) \ ioremap_prot((offset), (size), _CACHE_UNCACHED) -#define ioremap_uc ioremap /* * ioremap_cache - map bus memory into CPU space diff --git a/arch/parisc/include/asm/io.h b/arch/parisc/include/asm/io.h index 366537042465..48630c78714a 100644 --- a/arch/parisc/include/asm/io.h +++ b/arch/parisc/include/asm/io.h @@ -132,8 +132,6 @@ static inline void gsc_writeq(unsigned long long val, unsigned long addr) #define ioremap_wc(addr, size) \ ioremap_prot((addr), (size), _PAGE_IOREMAP) -#define ioremap_uc(addr, size) \ - ioremap_prot((addr), (size), _PAGE_IOREMAP) #define pci_iounmap pci_iounmap diff --git a/arch/powerpc/include/asm/io.h b/arch/powerpc/include/asm/io.h index 0732b743e099..21bd3e8bffce 100644 --- a/arch/powerpc/include/asm/io.h +++ b/arch/powerpc/include/asm/io.h @@ -900,7 +900,6 @@ void __iomem *ioremap_wt(phys_addr_t address, unsigned long size); #endif void __iomem *ioremap_coherent(phys_addr_t address, unsigned long size); -#define ioremap_uc(addr, size) ioremap((addr), (size)) #define ioremap_cache(addr, size) \ ioremap_prot((addr), (size), pgprot_val(PAGE_KERNEL)) diff --git a/arch/sh/include/asm/io.h b/arch/sh/include/asm/io.h index f2f38e9d489a..790bea22c9b5 100644 --- a/arch/sh/include/asm/io.h +++ b/arch/sh/include/asm/io.h @@ -302,8 +302,6 @@ unsigned long long poke_real_address_q(unsigned long long addr, ioremap_prot((addr), (size), pgprot_val(PAGE_KERNEL)) #endif /* CONFIG_MMU */ -#define ioremap_uc ioremap - /* * Convert a physical pointer to a virtual kernel pointer for /dev/mem * access diff --git a/arch/sparc/include/asm/io_64.h b/arch/sparc/include/asm/io_64.h index 9303270b22f3..d8ee1442f303 100644 --- a/arch/sparc/include/asm/io_64.h +++ b/arch/sparc/include/asm/io_64.h @@ -423,7 +423,6 @@ static inline void __iomem *ioremap(unsigned long offset, unsigned long size) return (void __iomem *)offset; } -#define ioremap_uc(X,Y) ioremap((X),(Y)) #define ioremap_wc(X,Y) ioremap((X),(Y)) #define ioremap_wt(X,Y) ioremap((X),(Y)) static inline void __iomem *ioremap_np(unsigned long offset, unsigned long size) From patchwork Thu Sep 21 11:04:24 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Baoquan He X-Patchwork-Id: 13393861 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 BDA8CE70714 for ; Thu, 21 Sep 2023 11:05:12 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 5DD2E6B0248; Thu, 21 Sep 2023 07:05:12 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 58DBE6B0249; Thu, 21 Sep 2023 07:05:12 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 4554A6B024A; Thu, 21 Sep 2023 07:05:12 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0016.hostedemail.com [216.40.44.16]) by kanga.kvack.org (Postfix) with ESMTP id 31DAA6B0248 for ; Thu, 21 Sep 2023 07:05:12 -0400 (EDT) Received: from smtpin24.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id 09607161072 for ; Thu, 21 Sep 2023 11:05:12 +0000 (UTC) X-FDA: 81260322864.24.12B002F Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by imf01.hostedemail.com (Postfix) with ESMTP id 2A6A640017 for ; Thu, 21 Sep 2023 11:05:10 +0000 (UTC) Authentication-Results: imf01.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b="X1/mkJJ3"; dmarc=pass (policy=none) header.from=redhat.com; spf=pass (imf01.hostedemail.com: domain of bhe@redhat.com designates 170.10.129.124 as permitted sender) smtp.mailfrom=bhe@redhat.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1695294310; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=+7t/BumSdqz7jYYtXcF1gDq2WFzlnypJrOD9JQD5AH8=; b=Nq5EspDdJrJ4aB7mYP64LhV4jTXbo+w+AtIwr+/Qgv5hRryfZdUyotULAFo5UxI1A95sal IsqRNJuoQpEpk0PG8akTMimqZ9581LFQzd2Yy5w2AmlR1HC7FHjQC+bHOT+oHEJjV+5l9Y a1N7Jhy4T3Kf4DRndGJwpmB2FHHC0gA= ARC-Authentication-Results: i=1; imf01.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b="X1/mkJJ3"; dmarc=pass (policy=none) header.from=redhat.com; spf=pass (imf01.hostedemail.com: domain of bhe@redhat.com designates 170.10.129.124 as permitted sender) smtp.mailfrom=bhe@redhat.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1695294310; a=rsa-sha256; cv=none; b=4LRV6eO3KZ7YHNy377qRj5WheZWYccNP96AG/T3qCHCK5cx58zvccZMij2gpI3sLTEgY3O 2j9pKuSyfY998E4vn1x8rJH8tbWaMG44n9Lyq9EaSrcWTAePQT8/DMUqnU+bvuiTZPtRrB 8/KGX4eUKZwrOQYRv4D/U6KvA8CvsFU= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1695294309; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=+7t/BumSdqz7jYYtXcF1gDq2WFzlnypJrOD9JQD5AH8=; b=X1/mkJJ3p6pfoA4PembOxOmRnwkMmKa9bAGBNq9tXit9i6iM0HsReCFgNvWJvopj8VAjmT F5MdWpxYYHlQq7tqm1NdGy3FprnGPagJ7hKGD98ZZnhNAUkuaajrOLlX4zKSw1MnSpTHSd btTSTEQAC/hF9R8L0F+W6czqK4gch9A= Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-643-hGsr711MOhCa2r41Gebw6Q-1; Thu, 21 Sep 2023 07:05:04 -0400 X-MC-Unique: hGsr711MOhCa2r41Gebw6Q-1 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.rdu2.redhat.com [10.11.54.6]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 5F25018175A1; Thu, 21 Sep 2023 11:05:03 +0000 (UTC) Received: from MiWiFi-R3L-srv.redhat.com (unknown [10.72.112.40]) by smtp.corp.redhat.com (Postfix) with ESMTP id 2A8042156A27; Thu, 21 Sep 2023 11:04:56 +0000 (UTC) From: Baoquan He To: linux-kernel@vger.kernel.org Cc: linux-arch@vger.kernel.org, linux-mm@kvack.org, akpm@linux-foundation.org, arnd@arndb.de, jiaxun.yang@flygoat.com, mpe@ellerman.id.au, geert@linux-m68k.org, mcgrof@kernel.org, hch@infradead.org, tsbogend@alpha.franken.de, f.fainelli@gmail.com, deller@gmx.de, Baoquan He , Serge Semin , Huacai Chen , linux-mips@vger.kernel.org Subject: [PATCH v5 4/4] mips: io: remove duplicated codes Date: Thu, 21 Sep 2023 19:04:24 +0800 Message-ID: <20230921110424.215592-5-bhe@redhat.com> In-Reply-To: <20230921110424.215592-1-bhe@redhat.com> References: <20230921110424.215592-1-bhe@redhat.com> MIME-Version: 1.0 Content-type: text/plain X-Scanned-By: MIMEDefang 3.1 on 10.11.54.6 X-Rspam-User: X-Rspamd-Server: rspam12 X-Rspamd-Queue-Id: 2A6A640017 X-Stat-Signature: 447ckyfcj51xkfiug3fqdkpd4gen98g5 X-HE-Tag: 1695294309-698442 X-HE-Meta: U2FsdGVkX19iAb8Ty9Mnjpp6cyUhzWguq4xPvfGQnEj3SpFvjl05GA/mf0FWTeBz8sQYrqyrm7CEwAXaW9KUUKLKK4Qf0A4zn+SOzB+7VXh4KbGdm1uENBdZY0Qr8DTqfDW9/pYWvB30Gy+/z2f+Ia/sCpeJN/sKRuD89Vy0+mc6F4aosbXMZSXTCrREK2RWVetutkFf3GGi+hVbhjNkCL9totmN9FsRiGKZG2F/TfWujq+zAL0E80ncKAwXehvnOPaaeZtv+PQbPMxyEs6HYly0UZFEZkWPl7T+f8B5/YPB1SIz7UzfCqoMWOyEEbPQnPz9Wf9cQvnoKppEvnUFu07auQFfEfu1DnvWRyAzK/Mq0gjU+XhVDv+xI4W/IgenzNOxfa0hLdVNlzsLImyHtYcFS+7jw7jsWKDUQ0kFfg/ZQ/FKPMBGIxafmbSVMyQWpNx846RTXGrqaMmEX6twFXhK/BmrEIcThvw1XbypRvmozaO2084Y+XfRHGZXhGlPWFXavfF0Hl3AbNloIZpiKt+ND1hs9Oogwjm8FKigPQ3333alFgPsj83BToppjkNyEkOgYK+8Y30zii2EmitkxanFR95RblKU8/ruO92MbGBIeD7tp301M6KZZhN9Jwntr7eyuixRJkiW09XMbh8RA+s7fHb2F/ohTsHeel1hUCVDOOyski4B+b5hXKwtADSWidaQzmc6D0/tH4Xx6Yi3PK5q5L3dEi2hLDaNm8fXiipgVO+As0FWlY6ODJzncPdJHi4Gu9TzH++uDposYmICrOK/buPFHU7vUe+yNeM6dc9M6LMpSkcdvKq/f8deLqQ8ev95GbjYkqPC3cjxdlMZdMJEkIR0zsNXskszSvNkSeKnduLg2LXfexKlmsjVNFmJSvOz0ql/blGs9xZ4URgIb8Oj+oZZlFig8p/KOTxoU99LG4BDKLCwHQHFCSvoXCvFaBCJdSlzwM8jSk/j569 PyRHa2sh BSGPUFA+7PdVr8xP4N5RJiVUyNXjbmFs+rERQybh/ARHjO8GR9lqIJaYLjaFYoKCUXu40SFdCjzV6+VdFaeuviMYRNs5egxt/EHusJ3XVp/jvoZ0h/9irG2lK9D//WrJnwhgt1IKa1sBeHkNqyuCjeE3GgirXD7CMSYSJ4ZqnyTdtl3a4fOaZQQFVsFJtiPYhrVmxp9bvcQf9tj4xIksoKaMwVm8gbqmGJhKldIu0xRU5PR7GwEFh6b8EebE/7XYn7Zn6xUoCn1UStuZyVDNKiT+cl71Hh7k0bTx9veb4HuffDo3YVhV2hIpQiCI1ezkDv3h+7kS1ASdVqJ0HQ69znsqGaUHYU5myc0ej8dRxI+4Pro5iTq1ieNaBBcTO86gU4nv5LNaZo9L1BREIBLeu7RnjjXe63rrT9PS0KH+C2PbN8bOznoDOyLl1kPjzUds5UaOp 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: By adding support, the duplicated phys_to_virt can be removed to use the default version in . Meanwhile move isa_bus_to_virt() down below including to fix the compiling error of missing phys_to_virt definition. Signed-off-by: Baoquan He Cc: Thomas Bogendoerfer Cc: Geert Uytterhoeven Cc: Helge Deller Cc: Serge Semin Cc: Florian Fainelli Cc: Huacai Chen Cc: Jiaxun Yang Cc: linux-mips@vger.kernel.org Acked-by: Arnd Bergmann Acked-by: Thomas Bogendoerfer --- arch/mips/include/asm/io.h | 28 +++++----------------------- 1 file changed, 5 insertions(+), 23 deletions(-) diff --git a/arch/mips/include/asm/io.h b/arch/mips/include/asm/io.h index 1ecf255efb40..fe5476c1c689 100644 --- a/arch/mips/include/asm/io.h +++ b/arch/mips/include/asm/io.h @@ -117,24 +117,6 @@ static inline phys_addr_t virt_to_phys(const volatile void *x) return __virt_to_phys(x); } -/* - * phys_to_virt - map physical address to virtual - * @address: address to remap - * - * The returned virtual address is a current CPU mapping for - * the memory address given. It is only valid to use this function on - * addresses that have a kernel mapping - * - * This function does not handle bus mappings for DMA transfers. In - * almost all conceivable cases a device driver should not be using - * this function - */ -#define phys_to_virt phys_to_virt -static inline void * phys_to_virt(unsigned long address) -{ - return __va(address); -} - /* * ISA I/O bus memory addresses are 1:1 with the physical address. */ @@ -143,11 +125,6 @@ static inline unsigned long isa_virt_to_bus(volatile void *address) return virt_to_phys(address); } -static inline void *isa_bus_to_virt(unsigned long address) -{ - return phys_to_virt(address); -} - /* * Change "struct page" to physical address. */ @@ -596,4 +573,9 @@ void __ioread64_copy(void *to, const void __iomem *from, size_t count); #include +static inline void *isa_bus_to_virt(unsigned long address) +{ + return phys_to_virt(address); +} + #endif /* _ASM_IO_H */