diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-11 08:27:49 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-11 08:27:49 +0000 |
commit | ace9429bb58fd418f0c81d4c2835699bddf6bde6 (patch) | |
tree | b2d64bc10158fdd5497876388cd68142ca374ed3 /include/linux/goldfish.h | |
parent | Initial commit. (diff) | |
download | linux-ace9429bb58fd418f0c81d4c2835699bddf6bde6.tar.xz linux-ace9429bb58fd418f0c81d4c2835699bddf6bde6.zip |
Adding upstream version 6.6.15.upstream/6.6.15
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'include/linux/goldfish.h')
-rw-r--r-- | include/linux/goldfish.h | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/include/linux/goldfish.h b/include/linux/goldfish.h new file mode 100644 index 000000000..bcc17f95b --- /dev/null +++ b/include/linux/goldfish.h @@ -0,0 +1,40 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +#ifndef __LINUX_GOLDFISH_H +#define __LINUX_GOLDFISH_H + +#include <linux/kernel.h> +#include <linux/types.h> +#include <linux/io.h> + +/* Helpers for Goldfish virtual platform */ + +#ifndef gf_ioread32 +#define gf_ioread32 ioread32 +#endif +#ifndef gf_iowrite32 +#define gf_iowrite32 iowrite32 +#endif + +static inline void gf_write_ptr(const void *ptr, void __iomem *portl, + void __iomem *porth) +{ + const unsigned long addr = (unsigned long)ptr; + + gf_iowrite32(lower_32_bits(addr), portl); +#ifdef CONFIG_64BIT + gf_iowrite32(upper_32_bits(addr), porth); +#endif +} + +static inline void gf_write_dma_addr(const dma_addr_t addr, + void __iomem *portl, + void __iomem *porth) +{ + gf_iowrite32(lower_32_bits(addr), portl); +#ifdef CONFIG_ARCH_DMA_ADDR_T_64BIT + gf_iowrite32(upper_32_bits(addr), porth); +#endif +} + + +#endif /* __LINUX_GOLDFISH_H */ |