Message ID | 1450667905-2968-1-git-send-email-majun258@huawei.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Mon, 21 Dec 2015 11:18:25 +0800 MaJun <majun258@huawei.com> wrote: > From: Ma Jun <majun258@huawei.com> > > The current MSI framework can only support 256 platform MSIs. > > But on Hisilicon platform, some network related devices has about 500 > wired interrupts. > > To support these devices, we need a new maximum value more than 256. > > Signed-off-by: Ma Jun <majun258@huawei.com> > --- > drivers/base/platform-msi.c | 2 +- > 1 files changed, 1 insertions(+), 1 deletions(-) > > diff --git a/drivers/base/platform-msi.c b/drivers/base/platform-msi.c > index a203896..9c00d3f 100644 > --- a/drivers/base/platform-msi.c > +++ b/drivers/base/platform-msi.c > @@ -24,7 +24,7 @@ > #include <linux/msi.h> > #include <linux/slab.h> > > -#define DEV_ID_SHIFT 24 > +#define DEV_ID_SHIFT 22 > #define MAX_DEV_MSIS (1 << (32 - DEV_ID_SHIFT)) > > /* If we bother doing that, why not directly aligning it with MSI-X and allow up to 2048 interrupts per device? It is only an extra bit, and that still leaves 21 bits worth of device IDs, while still having hwirq as an unsigned long (32bit on 32bit architectures). Thanks, M.
? 2015/12/21 18:43, Marc Zyngier ??: > On Mon, 21 Dec 2015 11:18:25 +0800 > MaJun <majun258@huawei.com> wrote: > >> From: Ma Jun <majun258@huawei.com> >> >> The current MSI framework can only support 256 platform MSIs. >> >> But on Hisilicon platform, some network related devices has about 500 >> wired interrupts. >> >> To support these devices, we need a new maximum value more than 256. >> >> Signed-off-by: Ma Jun <majun258@huawei.com> >> --- >> drivers/base/platform-msi.c | 2 +- >> 1 files changed, 1 insertions(+), 1 deletions(-) >> >> diff --git a/drivers/base/platform-msi.c b/drivers/base/platform-msi.c >> index a203896..9c00d3f 100644 >> --- a/drivers/base/platform-msi.c >> +++ b/drivers/base/platform-msi.c >> @@ -24,7 +24,7 @@ >> #include <linux/msi.h> >> #include <linux/slab.h> >> >> -#define DEV_ID_SHIFT 24 >> +#define DEV_ID_SHIFT 22 >> #define MAX_DEV_MSIS (1 << (32 - DEV_ID_SHIFT)) >> >> /* > > If we bother doing that, why not directly aligning it with MSI-X and > allow up to 2048 interrupts per device? It is only an extra bit, and > that still leaves 21 bits worth of device IDs, while still having > hwirq as an unsigned long (32bit on 32bit architectures). > Ok, I'll changed this value to 2048 Thanks Ma Jun > Thanks, > > M. >
diff --git a/drivers/base/platform-msi.c b/drivers/base/platform-msi.c index a203896..9c00d3f 100644 --- a/drivers/base/platform-msi.c +++ b/drivers/base/platform-msi.c @@ -24,7 +24,7 @@ #include <linux/msi.h> #include <linux/slab.h> -#define DEV_ID_SHIFT 24 +#define DEV_ID_SHIFT 22 #define MAX_DEV_MSIS (1 << (32 - DEV_ID_SHIFT)) /*