powerpc/fsl_msi: spread msi ints across different MSIRs
authorTudor Laurentiu <b10716@freescale.com>
Thu, 21 Aug 2014 09:33:53 +0000 (12:33 +0300)
committerScott Wood <scottwood@freescale.com>
Thu, 4 Sep 2014 23:51:45 +0000 (18:51 -0500)
commitc822e73731fce3b49a4887140878d084d8a44c08
tree5ad4eccb8fb9e033eb3b379d7060bb6f6e86b2ba
parentde99f53d3af0e1bb9bc6c9e3107d72f3af6e05e9
powerpc/fsl_msi: spread msi ints across different MSIRs

Allocate msis such that each time a new interrupt is requested,
the SRS (MSIR register select) to be used is allocated in a
round-robin fashion.
The end result is that the msi interrupts will be spread across
distinct MSIRs with the main benefit that now users can set
affinity to each msi int through the mpic irq backing up the
MSIR register.
This is achieved with the help of a newly introduced msi bitmap
api that allows specifying the starting point when searching
for a free msi interrupt.

Signed-off-by: Laurentiu Tudor <Laurentiu.Tudor@freescale.com>
Cc: Scott Wood <scottwood@freescale.com>
Cc: Mihai Caraman <mihai.caraman@freescale.com>
Signed-off-by: Scott Wood <scottwood@freescale.com>
arch/powerpc/include/asm/msi_bitmap.h
arch/powerpc/sysdev/fsl_msi.c
arch/powerpc/sysdev/fsl_msi.h
arch/powerpc/sysdev/msi_bitmap.c