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

msi_bitmap.h (867B)


      1/* SPDX-License-Identifier: GPL-2.0-only */
      2#ifndef _POWERPC_SYSDEV_MSI_BITMAP_H
      3#define _POWERPC_SYSDEV_MSI_BITMAP_H
      4
      5/*
      6 * Copyright 2008, Michael Ellerman, IBM Corporation.
      7 */
      8
      9#include <linux/of.h>
     10#include <asm/irq.h>
     11
     12struct msi_bitmap {
     13	struct device_node	*of_node;
     14	unsigned long		*bitmap;
     15	spinlock_t		lock;
     16	unsigned int		irq_count;
     17	bool		 	bitmap_from_slab;
     18};
     19
     20int msi_bitmap_alloc_hwirqs(struct msi_bitmap *bmp, int num);
     21void msi_bitmap_free_hwirqs(struct msi_bitmap *bmp, unsigned int offset,
     22			    unsigned int num);
     23void msi_bitmap_reserve_hwirq(struct msi_bitmap *bmp, unsigned int hwirq);
     24
     25int msi_bitmap_reserve_dt_hwirqs(struct msi_bitmap *bmp);
     26
     27int msi_bitmap_alloc(struct msi_bitmap *bmp, unsigned int irq_count,
     28		     struct device_node *of_node);
     29void msi_bitmap_free(struct msi_bitmap *bmp);
     30
     31#endif /* _POWERPC_SYSDEV_MSI_BITMAP_H */