161 lines · 3.3 KB · C
RawDownload
// SPDX-License-Identifier: GPL-2.0 #include <linux/io.h>#include <linux/ioport.h> #ifdef CONFIG_HAS_IOMEM__rust_helper void __iomem *rust_helper_ioremap(phys_addr_t offset, size_t size){	return ioremap(offset, size);} __rust_helper void __iomem *rust_helper_ioremap_np(phys_addr_t offset,						   size_t size){	return ioremap_np(offset, size);} __rust_helper void rust_helper_iounmap(void __iomem *addr){	iounmap(addr);}#endif /* CONFIG_HAS_IOMEM */ __rust_helper void rust_helper_memcpy_fromio(void *dst,					     const volatile void __iomem *src,					     size_t count){	memcpy_fromio(dst, src, count);} __rust_helper void rust_helper_memcpy_toio(volatile void __iomem *dst,					   const void *src, size_t count){	memcpy_toio(dst, src, count);} __rust_helper u8 rust_helper_readb(const void __iomem *addr){	return readb(addr);} __rust_helper u16 rust_helper_readw(const void __iomem *addr){	return readw(addr);} __rust_helper u32 rust_helper_readl(const void __iomem *addr){	return readl(addr);} #ifdef CONFIG_64BIT__rust_helper u64 rust_helper_readq(const void __iomem *addr){	return readq(addr);}#endif __rust_helper void rust_helper_writeb(u8 value, void __iomem *addr){	writeb(value, addr);} __rust_helper void rust_helper_writew(u16 value, void __iomem *addr){	writew(value, addr);} __rust_helper void rust_helper_writel(u32 value, void __iomem *addr){	writel(value, addr);} #ifdef CONFIG_64BIT__rust_helper void rust_helper_writeq(u64 value, void __iomem *addr){	writeq(value, addr);}#endif __rust_helper u8 rust_helper_readb_relaxed(const void __iomem *addr){	return readb_relaxed(addr);} __rust_helper u16 rust_helper_readw_relaxed(const void __iomem *addr){	return readw_relaxed(addr);} __rust_helper u32 rust_helper_readl_relaxed(const void __iomem *addr){	return readl_relaxed(addr);} #ifdef CONFIG_64BIT__rust_helper u64 rust_helper_readq_relaxed(const void __iomem *addr){	return readq_relaxed(addr);}#endif __rust_helper void rust_helper_writeb_relaxed(u8 value, void __iomem *addr){	writeb_relaxed(value, addr);} __rust_helper void rust_helper_writew_relaxed(u16 value, void __iomem *addr){	writew_relaxed(value, addr);} __rust_helper void rust_helper_writel_relaxed(u32 value, void __iomem *addr){	writel_relaxed(value, addr);} #ifdef CONFIG_64BIT__rust_helper void rust_helper_writeq_relaxed(u64 value, void __iomem *addr){	writeq_relaxed(value, addr);}#endif __rust_helper resource_size_t rust_helper_resource_size(struct resource *res){	return resource_size(res);} __rust_helper struct resource *rust_helper_request_mem_region(resource_size_t start, resource_size_t n,			       const char *name){	return request_mem_region(start, n, name);} __rust_helper void rust_helper_release_mem_region(resource_size_t start,						  resource_size_t n){	release_mem_region(start, n);} __rust_helper struct resource *rust_helper_request_region(resource_size_t start,							  resource_size_t n,							  const char *name){	return request_region(start, n, name);} __rust_helper struct resource *rust_helper_request_muxed_region(resource_size_t start, resource_size_t n,				 const char *name){	return request_muxed_region(start, n, name);} __rust_helper void rust_helper_release_region(resource_size_t start,					      resource_size_t n){	release_region(start, n);}