mirror of https://gitee.com/openkylin/linux.git
[SPARC64]: Make lack of interrupt-map-* a fatal error on SUN4V.
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
abd92b2d21
commit
329c68b218
|
@ -954,19 +954,20 @@ static void pci_sun4v_pbm_init(struct pci_controller_info *p, int prom_node, u32
|
|||
err = prom_getproperty(prom_node, "interrupt-map",
|
||||
(char *)pbm->pbm_intmap,
|
||||
sizeof(pbm->pbm_intmap));
|
||||
if (err != -1) {
|
||||
pbm->num_pbm_intmap = (err / sizeof(struct linux_prom_pci_intmap));
|
||||
err = prom_getproperty(prom_node, "interrupt-map-mask",
|
||||
(char *)&pbm->pbm_intmask,
|
||||
sizeof(pbm->pbm_intmask));
|
||||
if (err == -1) {
|
||||
prom_printf("%s: Fatal error, no "
|
||||
"interrupt-map-mask.\n", pbm->name);
|
||||
prom_halt();
|
||||
}
|
||||
} else {
|
||||
pbm->num_pbm_intmap = 0;
|
||||
memset(&pbm->pbm_intmask, 0, sizeof(pbm->pbm_intmask));
|
||||
if (err == 0 || err == -1) {
|
||||
prom_printf("%s: Fatal error, no interrupt-map property.\n",
|
||||
pbm->name);
|
||||
prom_halt();
|
||||
}
|
||||
|
||||
pbm->num_pbm_intmap = (err / sizeof(struct linux_prom_pci_intmap));
|
||||
err = prom_getproperty(prom_node, "interrupt-map-mask",
|
||||
(char *)&pbm->pbm_intmask,
|
||||
sizeof(pbm->pbm_intmask));
|
||||
if (err == 0 || err == -1) {
|
||||
prom_printf("%s: Fatal error, no interrupt-map-mask.\n",
|
||||
pbm->name);
|
||||
prom_halt();
|
||||
}
|
||||
|
||||
pci_sun4v_get_bus_range(pbm);
|
||||
|
|
Loading…
Reference in New Issue