msi_bitmap
struct msi_bitmap msi_bitmap;
int msi_bitmap_alloc_hwirqs(struct msi_bitmap *bmp, int num);
void msi_bitmap_free_hwirqs(struct msi_bitmap *bmp, unsigned int offset,
void msi_bitmap_reserve_hwirq(struct msi_bitmap *bmp, unsigned int hwirq);
int msi_bitmap_reserve_dt_hwirqs(struct msi_bitmap *bmp);
int msi_bitmap_alloc(struct msi_bitmap *bmp, unsigned int irq_count,
void msi_bitmap_free(struct msi_bitmap *bmp);
struct msi_bitmap bmp;
msi_bitmap_free_hwirqs(&msi_mpic->msi_bitmap, hwirq,
msi_bitmap_free_hwirqs(&msi_mpic->msi_bitmap, hwirq, ALLOC_CHUNK);
hwirq = msi_bitmap_alloc_hwirqs(&msi_mpic->msi_bitmap,
struct msi_bitmap msi_bmp;
struct msi_bitmap bitmap;
if (!mpic->msi_bitmap.bitmap)
msi_bitmap_reserve_hwirq(&mpic->msi_bitmap, hwirq);
msi_bitmap_reserve_hwirq(&mpic->msi_bitmap, i);
msi_bitmap_reserve_hwirq(&mpic->msi_bitmap, i);
msi_bitmap_reserve_hwirq(&mpic->msi_bitmap, i);
msi_bitmap_reserve_hwirq(&mpic->msi_bitmap, i);
msi_bitmap_reserve_hwirq(&mpic->msi_bitmap, hwirq);
rc = msi_bitmap_alloc(&mpic->msi_bitmap, mpic->num_sources,
rc = msi_bitmap_reserve_dt_hwirqs(&mpic->msi_bitmap);
msi_bitmap_free(&mpic->msi_bitmap);
msi_bitmap_free_hwirqs(&msi_mpic->msi_bitmap, hwirq, 1);
hwirq = msi_bitmap_alloc_hwirqs(&msi_mpic->msi_bitmap, 1);
msi_bitmap_free_hwirqs(&msi_mpic->msi_bitmap, hwirq, 1);
int __ref msi_bitmap_alloc(struct msi_bitmap *bmp, unsigned int irq_count,
void msi_bitmap_free(struct msi_bitmap *bmp)
int msi_bitmap_alloc_hwirqs(struct msi_bitmap *bmp, int num)
struct msi_bitmap bmp;
struct msi_bitmap bmp;
void msi_bitmap_free_hwirqs(struct msi_bitmap *bmp, unsigned int offset,
void msi_bitmap_reserve_hwirq(struct msi_bitmap *bmp, unsigned int hwirq)
int msi_bitmap_reserve_dt_hwirqs(struct msi_bitmap *bmp)
unsigned long *msi_bitmap;
if (!test_and_set_bit(i, pbm->msi_bitmap))
clear_bit(msi_num, pbm->msi_bitmap);
pbm->msi_bitmap = kzalloc(size, GFP_KERNEL);
if (!pbm->msi_bitmap)
kfree(pbm->msi_bitmap);
pbm->msi_bitmap = NULL;