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

gic_private.h (1141B)


      1/* SPDX-License-Identifier: GPL-2.0 */
      2/*
      3 * ARM Generic Interrupt Controller (GIC) private defines that's only
      4 * shared among the GIC library code.
      5 */
      6
      7#ifndef SELFTEST_KVM_GIC_PRIVATE_H
      8#define SELFTEST_KVM_GIC_PRIVATE_H
      9
     10struct gic_common_ops {
     11	void (*gic_init)(unsigned int nr_cpus, void *dist_base);
     12	void (*gic_cpu_init)(unsigned int cpu, void *redist_base);
     13	void (*gic_irq_enable)(unsigned int intid);
     14	void (*gic_irq_disable)(unsigned int intid);
     15	uint64_t (*gic_read_iar)(void);
     16	void (*gic_write_eoir)(uint32_t irq);
     17	void (*gic_write_dir)(uint32_t irq);
     18	void (*gic_set_eoi_split)(bool split);
     19	void (*gic_set_priority_mask)(uint64_t mask);
     20	void (*gic_set_priority)(uint32_t intid, uint32_t prio);
     21	void (*gic_irq_set_active)(uint32_t intid);
     22	void (*gic_irq_clear_active)(uint32_t intid);
     23	bool (*gic_irq_get_active)(uint32_t intid);
     24	void (*gic_irq_set_pending)(uint32_t intid);
     25	void (*gic_irq_clear_pending)(uint32_t intid);
     26	bool (*gic_irq_get_pending)(uint32_t intid);
     27	void (*gic_irq_set_config)(uint32_t intid, bool is_edge);
     28};
     29
     30extern const struct gic_common_ops gicv3_ops;
     31
     32#endif /* SELFTEST_KVM_GIC_PRIVATE_H */