Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752101AbbH1LuL (ORCPT ); Fri, 28 Aug 2015 07:50:11 -0400 Received: from mail-bn1on0112.outbound.protection.outlook.com ([157.56.110.112]:12096 "EHLO na01-bn1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751652AbbH1LuH (ORCPT ); Fri, 28 Aug 2015 07:50:07 -0400 Authentication-Results: spf=fail (sender IP is 192.88.158.2) smtp.mailfrom=freescale.com; freescale.mail.onmicrosoft.com; dkim=none (message not signed) header.d=none;freescale.mail.onmicrosoft.com; dmarc=none action=none header.from=freescale.com; From: =?UTF-8?q?Horia=20Geant=C4=83?= To: Herbert Xu , Catalin Marinas , Will Deacon CC: , "David S. Miller" , , , Scott Wood , Victoria Milhoan , Steve Cornelius , Fabio Estevam , Alex Porosanu Subject: [RFC][PATCH 1/2] arm64: add ioread64be and iowrite64be macros Date: Fri, 28 Aug 2015 14:49:47 +0300 Message-ID: <1440762587-7815-1-git-send-email-horia.geanta@freescale.com> X-Mailer: git-send-email 2.4.4 In-Reply-To: <1440762306-7764-1-git-send-email-horia.geanta@freescale.com> References: <1440762306-7764-1-git-send-email-horia.geanta@freescale.com> MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit X-EOPAttributedMessage: 0 X-Microsoft-Exchange-Diagnostics: 1;BL2FFO11FD010;1:EYSUAVVJcHmCBnDwRmIPpuew2DMiDpeziLNstDSYKGPTrvk2+EF5whdObQoNCP+ydPumMLpt9UrajdqwQNOJ6tELWzF9a2cZLMc1EXlJMuxQUObxC9msismBoqXXjqI/HqeQ1zAN+W8k2YpiLtwJI6p5+LLHTJ7n7jYo0ZCgekGd+o8iq3yduRpxC/UkqZP2NAk5XA85wNIBIzp3L46Yxp8vFmwcLvgXrgDQuQ+HJt4NOT7vAsGW8T3n6c4NAlLrorzL97FXbElrlOXf1JY41pQEJ6wflkFhzeqN2V4kFmfd5BkZynyZXHRmxE56DH0jx0a/jN9/qajp48ztYbQRv76y75p0bQ2Xm7YYL5l/d1zLOGiwTC45hcvayJnwiglDgOGni+t+fueD3FfjTySQ8ubee1XMq63o7kGMEi4KeSU= X-Forefront-Antispam-Report: CIP:192.88.158.2;CTRY:US;IPV:NLI;EFV:NLI;SFV:NSPM;SFS:(10019020)(6009001)(2980300002)(3050300001)(339900001)(189002)(199003)(107886002)(69596002)(104016003)(87936001)(5001770100001)(5001860100001)(92566002)(5001830100001)(33646002)(50226001)(229853001)(97736004)(2950100001)(76176999)(46102003)(5820100001)(47776003)(36756003)(189998001)(77156002)(62966003)(85426001)(19580405001)(5001960100002)(23676002)(68736005)(77096005)(19580395003)(4001540100001)(106466001)(50466002)(86362001)(6806004)(105606002)(64706001)(50986999)(81156007)(5007970100001)(4001430100001);DIR:OUT;SFP:1102;SCL:1;SRVR:BY1PR0301MB1301;H:az84smr01.freescale.net;FPR:;SPF:Fail;PTR:InfoDomainNonexistent;MX:1;A:1;LANG:en; X-Microsoft-Exchange-Diagnostics: 1;BY1PR0301MB1301;2:8p9I5VSp8OR36zYaQqywAOyBJeXej+Be/U/IpSFifPqm4HspNZB56MELF58BHYTf4hpUbwklVXLQVcAsS4sK5ORqDvZYj13ByWRQhCjvM3ENfpPjZZln2VP8wGfgTcaO65kBQd74xmmMTIOGV0UbTJTgyzRkqacffLpxUkgQdnY=;3:kkw1BYHmtG/k4y9/jA0dO/kAGZ4BWvCh9AOIIkbmKzb415PZVRKl2iCwumFdN6nqOSQbPbmT42CK0XpIpUfDXmHvf/O0hNdoRNY0eR1npaZ3NZjybLTF00qFgzvm0pWW6SOuACewK03pjnak8uU8IGUg7l/UNpt7TRpiN6jcXlxuU/PwESNnhXbUy+QtUQGJ7Sl0LGAZFpBH+gVlTFZvVieZXOYhcn3oz/BrwZsVnIo=;25:fXkn26zHJxVfM7YeSSF+q2Ny34/f+4MdwGvdYrk3/ZcnVuenBMQyG1wKXnlPY2+tfB65ngzj+aOtvTzGabelriCmshlkQqbKBRM2ySmUokk+RwFLs7dB+Ha0UWPmFF3jvpxfu8aE1dR+cGp0j8JZDw/rt0F2y1zLMBsuuZfsKkd7Jo1M57WeNGRmQFsP58EMULq+Y4Bc78lwLUNfvew40B/zbIJzTodbFxlNoOpA9a0xMR91veMn8mRNZ85qNQjrMo6sRXkK5ywJtT8AqqDfsw== X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:BY1PR0301MB1301; X-Microsoft-Exchange-Diagnostics: 1;BY1PR0301MB1301;20:dpZ3zhL/LPMwknmqbPdFzgmmnTZoud5wVAV86kSKWl+S8pockZ2pKWgDSgFpcUui6+UPc/SrErHWlJ8WHBEXoeKQUt37g+4MZramFH5SGM5+2GsvqVmg6PDXO+G6Fg8QOxXd9JV90xskUTv/OHN11NGviclZYcniQA1GLixKSObleaQo1xSh5Nc7VEiul65Pg6GSzFD0DzyfPkMU6qB0sGAav8gId0eI2epLazbPY76zCpRsUKOdQL17j5fZiiNLZYLaBccA5ftcyW/m8DKPpWPRHwcMCuVyoKeEFIhnCJ3WQd6l5YV9xErLznTYSRsVQ2saE2qzUnpbN88F86tbJYoKZfKKWSK0Vkh8ujFxmzs=;4:zYqqZUKPhbbuG3qjBCdRwaqegZj9fFu9/Co8950+yf5FIcY30/oSyWgaG/nWBiCkW/na+2t68/oSlg80Bw69UaZfu3BZ92c0AIUs0XZVZ+XrsIr23dOigt8NLhw1/8YAapj3XyiFNwzl/KKBoWRhUHXL5LpJJT1pI45Or6MYlHPk0vlDW4/Jemrxqg7himwwBHq4+MUvauXgtgYJMNpZyUXMq3oaqkOvmCKfidGUNM8HyFMgY+na6ZIvCjeskm+5gB7VLYSnlCViMMSzoCqdN1GTAwgIt3mXOIE8pN95Zx/q4paYEsl5BRuefW4c8ksQ X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(601004)(8121501046)(5005006)(3002001);SRVR:BY1PR0301MB1301;BCL:0;PCL:0;RULEID:;SRVR:BY1PR0301MB1301; X-Forefront-PRVS: 0682FC00E8 X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtCWTFQUjAzMDFNQjEzMDE7MjM6STdiWXB6bUtzRldmSnBBbk93dVFjTkdq?= =?utf-8?B?VUQ0Z2NKQUhvbDNVdWI2YXVCb1JpTHd3SUxRV3NNTU9tdmNtaDhaelBoRlRV?= =?utf-8?B?Q25iRDU3YjA3YWN3dFRJSEFIYWVnT1VndzFhcGNIQ1c5dCtIT3IxM3V0ZkY5?= =?utf-8?B?RHVmLzJYM0RqZ0srM3l1YlQ0UmNtbHRmVlBXRzRhNzF0Q0VDMEZ1RXY2UUxa?= =?utf-8?B?bU5QdjRyTkMrdjh1RDNQRTdhczhHVjlpVTM3R3FyRFUwKzV0RWJiaHY1SnhX?= =?utf-8?B?L05YSG9OYVE0MXBsTHVQd0UvdVVIWnhRaUxJeHJyUWtja2NxdkdUMCtOYzg2?= =?utf-8?B?WXZqZ3RGdlVjVFNYd3NFa2RSSG44QnNDZWtZcFFPSXJpZ3VuV2paZlZ6R0xy?= =?utf-8?B?aTJDRXVWUy90Ky90ZklXUU5ualJjNHVMYk02TVlBS3YrNCs3UUVBYU1tMFB3?= =?utf-8?B?eWU2eUIrOXlLUS9IQ2Zsc3lYeTI4TFlnYTZtZlJHZFlMSWdKeFlPbWo3TkFv?= =?utf-8?B?OE9LTTJxSjM5ajhhbXFOczFFbUFiR0pUdFZLaFRoNHhJaU83ZVlSamV3ektL?= =?utf-8?B?RmE4RUNJLzVFQmhHNTc2NE1icDJKWFFrV2JpaXV6Qk83RE1haXVndThPU1Zj?= =?utf-8?B?eTJubFh6MUJLdGlhSjRUZlhSS1VxTWtKbk5ybHUzRkVHc2FkMXBpN2Y5NERs?= =?utf-8?B?bDhMckFVcExoMmozaDZ5dEE2NWJYNG5sOUJOaE5iM2ZhK0RiQms3Um1HWGJz?= =?utf-8?B?Q0FIYjhXdUhlc0IrMDhRbUQ1ZDB4K0dxQ3djR2JhZTQzNWUyNXlEV0kyeTFw?= =?utf-8?B?dmFwN3VMcURmUXllV2tQM2psN1FXTHpPV005Z1dzZlptZWlEdVRUZ0R1L3JS?= =?utf-8?B?YS92WXNJb0JXK3JLN2YwYlFxNnZ5OUNuTDdmUXN5R1ZVdzdBUzNrQ2lWdDlR?= =?utf-8?B?dnJZWnBzRnV5RzlFVlV5KzBrSFZWTW1Yc1d1UXRTdG5ER3FyaEhNVFpwRjUx?= =?utf-8?B?a2JhMERhYkdUODNpTGtYK2JROEd2V2JCRUd4MHNqR1RJcmUyZ1ozaVNvNGpR?= =?utf-8?B?Z1RidmtseDNSc0tBd3VoWU5tSFo1SDkwSkk1d2RrUXA1ZGVyKzY3UXJpTmNF?= =?utf-8?B?cWtNTi9HQUkvVW51QVRIZTlxMllLZ2lDZmR0QzJWN3RHTG4wS1d1dTVZWkJp?= =?utf-8?B?eitGWEx2eXdreFFhMlFPTVhZYTNlUWZET0tna0xVbis5d041YVo0SmM3bWhI?= =?utf-8?B?TmF0TjJtRmJnQ2h5U2E5bjZNWlVERVVHeHhJbk1vMGYyaTcwZ1VsKzVnMFFs?= =?utf-8?B?MnkxdDFXWExsR3NUWlBFWG52d1JpRjdPYzRDbVV0N0htRUlyUXRxcDRBU1Nk?= =?utf-8?B?TGZaK09jWlRoaU1qcDJDQmExWmdOdnJMMmhrOVhzaFVaSjBCMzdPdzdyZ2tT?= =?utf-8?B?MURSWng2Vk5RN1dRSWtjOHltN2xYSkJYVnpWNzNEOTNiVWVjOGFSNUVsRHJC?= =?utf-8?B?b3Vjejd4WmpON29tOU95V2VGRDFpblAzTzR2bG5ZTk5xSjVNYUxnZzh0cWJ6?= =?utf-8?B?MHA2eFRPek9DTWh1ekVnZmphbzhKNVVBdmxTTzFscW9QekVmbG1jUkFyakZF?= =?utf-8?B?cHBsZVNOMnV4V3A3UWtNcllkejgvRGtIR0lveFgzenhSMkUwdEN5UGp1QkE9?= =?utf-8?Q?=3D?= X-Microsoft-Exchange-Diagnostics: 1;BY1PR0301MB1301;5:sCxK54V/8XZe7fg13BUF0+mfU//Na1yNv3dhGBFvpxhxlYF9EBbskU2yRsmwy1hJTd+JpzO/fS/C//XyF/weqPCDUgxT2NuDq7MDJqv8rQlwMQJSfDdldcJ/j9kQ3eoUmNjHCxOJYE+u7ULiHp1csg==;24:hdRetmZxehvsu+ykxHk7DRUyAO65qcWKljibajy750WzSxMYEbaTWsFHgpEoM6i9n+HG26h2ONd7hhmP5ea5bqRjlZpVSR5UWgLFOko2TEA=;20:F7PjS2n/NWz1Ihp0al84BaMtb97glUasfxgRKxsSleI2p7dn/WezWB8+ZD7M6IMK86+DmJl1pxyJG6xGgrLmfQ== X-OriginatorOrg: freescale.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Aug 2015 11:50:03.8267 (UTC) X-MS-Exchange-CrossTenant-Id: 710a03f5-10f6-4d38-9ff4-a80b81da590d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=710a03f5-10f6-4d38-9ff4-a80b81da590d;Ip=[192.88.158.2];Helo=[az84smr01.freescale.net] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY1PR0301MB1301 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1626 Lines: 38 This will allow device drivers to consistently use io{read,write}XXbe macros also for 64-bit accesses. Signed-off-by: Alex Porosanu Signed-off-by: Horia Geantă --- arch/arm64/include/asm/io.h | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/arch/arm64/include/asm/io.h b/arch/arm64/include/asm/io.h index 44be1e03ed65..9b6e408cfa51 100644 --- a/arch/arm64/include/asm/io.h +++ b/arch/arm64/include/asm/io.h @@ -174,13 +174,15 @@ extern void __iomem *ioremap_cache(phys_addr_t phys_addr, size_t size); #define iounmap __iounmap /* - * io{read,write}{16,32}be() macros + * io{read,write}{16,32,64}be() macros */ #define ioread16be(p) ({ __u16 __v = be16_to_cpu((__force __be16)__raw_readw(p)); __iormb(); __v; }) #define ioread32be(p) ({ __u32 __v = be32_to_cpu((__force __be32)__raw_readl(p)); __iormb(); __v; }) +#define ioread64be(p) ({ __u64 __v = be64_to_cpu((__force __be64)__raw_readq(p)); __iormb(); __v; }) #define iowrite16be(v,p) ({ __iowmb(); __raw_writew((__force __u16)cpu_to_be16(v), p); }) #define iowrite32be(v,p) ({ __iowmb(); __raw_writel((__force __u32)cpu_to_be32(v), p); }) +#define iowrite64be(v,p) ({ __iowmb(); __raw_writeq((__force __u64)cpu_to_be64(v), p); }) /* * Convert a physical pointer to a virtual kernel pointer for /dev/mem -- 2.4.4 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/