cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

goldfish.h (878B)


      1/* SPDX-License-Identifier: GPL-2.0 */
      2#ifndef __LINUX_GOLDFISH_H
      3#define __LINUX_GOLDFISH_H
      4
      5#include <linux/kernel.h>
      6#include <linux/types.h>
      7#include <linux/io.h>
      8
      9/* Helpers for Goldfish virtual platform */
     10
     11#ifndef gf_ioread32
     12#define gf_ioread32 ioread32
     13#endif
     14#ifndef gf_iowrite32
     15#define gf_iowrite32 iowrite32
     16#endif
     17
     18static inline void gf_write_ptr(const void *ptr, void __iomem *portl,
     19				void __iomem *porth)
     20{
     21	const unsigned long addr = (unsigned long)ptr;
     22
     23	gf_iowrite32(lower_32_bits(addr), portl);
     24#ifdef CONFIG_64BIT
     25	gf_iowrite32(upper_32_bits(addr), porth);
     26#endif
     27}
     28
     29static inline void gf_write_dma_addr(const dma_addr_t addr,
     30				     void __iomem *portl,
     31				     void __iomem *porth)
     32{
     33	gf_iowrite32(lower_32_bits(addr), portl);
     34#ifdef CONFIG_ARCH_DMA_ADDR_T_64BIT
     35	gf_iowrite32(upper_32_bits(addr), porth);
     36#endif
     37}
     38
     39
     40#endif /* __LINUX_GOLDFISH_H */