1*59a9de1aSIvan Vecera /* SPDX-License-Identifier: GPL-2.0 */ 2*59a9de1aSIvan Vecera /* Copyright(c) 2023 Intel Corporation. */ 3*59a9de1aSIvan Vecera 4*59a9de1aSIvan Vecera #ifndef _I40E_IO_H_ 5*59a9de1aSIvan Vecera #define _I40E_IO_H_ 6*59a9de1aSIvan Vecera 7*59a9de1aSIvan Vecera /* get readq/writeq support for 32 bit kernels, use the low-first version */ 8*59a9de1aSIvan Vecera #include <linux/io-64-nonatomic-lo-hi.h> 9*59a9de1aSIvan Vecera 10*59a9de1aSIvan Vecera #define wr32(a, reg, value) writel((value), ((a)->hw_addr + (reg))) 11*59a9de1aSIvan Vecera #define rd32(a, reg) readl((a)->hw_addr + (reg)) 12*59a9de1aSIvan Vecera 13*59a9de1aSIvan Vecera #define rd64(a, reg) readq((a)->hw_addr + (reg)) 14*59a9de1aSIvan Vecera #define i40e_flush(a) readl((a)->hw_addr + I40E_GLGEN_STAT) 15*59a9de1aSIvan Vecera 16*59a9de1aSIvan Vecera #endif /* _I40E_IO_H_ */ 17