Miscellaneous Itanium patches
-----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.10 (GNU/Linux) iQIcBAABAgAGBQJPa7EVAAoJEKurIx+X31iBADgP/1eHhyb4A2ULOk19MhrEAb3/ myoz76qVZvFC7i/5kmtkpAZqCYNnNfiBzr0vpd6MNq9mgFx5jna/IiaV8cZ08kcj JPknyrAoK8IgGgVQmi+pSHoaiNRAjnvkLwBsadLSFGmcjpi1BYlzmQrFYvMh5GAN J6j7+2Sv2YNec2QthZZ56L29QqQnbzg0DfS6ZTcOLSvitCnAsUb54Hoi/saK1c9r loUdWeVen8FPBSTfyqFtJLWJj1Yo3KxVoUgME+f7TeBQNRfihzDhMLuK+IQ5Bsp5 /Z4+Pi4MxiTccYETWCLFWyS9cheK7tfR/SOpEd+XQYx7BQ2gLp/WMNd3q1iUTsg+ AXr3/XOtmKWKAlu6Wy/oFUOjokPVm/yl9MSB6Io1bmlYfaCmb8I+Eyr+fJzPKLyI wVd+SQl02Z2PlC9dnr73Wu+bCrx0u9xQncucNEpZIpBZLGeuU0sPP0Y7nCGAOL5C NL7yQmb45pvT7kvzBfrrFSqEfWccycIL+CJw9kb+k1aspTxT0YBZPbpNTKj83aXW H4KAF9Av/ZHeacriDpxrywwMtTsTS/xLhxEdHB/XEzjkGLuB0R7ZlzvTSuLBbm/1 fu8/bty4ehOHRqACIuNNMGbdIZ5ruThylSC4Yx2a3JRIJISZS/Bo/0mU5zLRRaH+ XuEw3+mfhLq9oU8SdAug =78St -----END PGP SIGNATURE----- Merge tag 'ia64-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux Pull miscellaneous Itanium patches from Tony Luck. The conflicts in arch/ia64/hp/sim/simserial.c were due to patches to simserial that had alredy been included (with lots of further cleanups) in the serial tree. * tag 'ia64-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux: Documentation/kernel-parameters: remove inttest parameter [IA64] Fix ISA IRQ trigger model and polarity setting [IA64] Fix a couple of warnings for EXPORT_SYMBOL [IA64] Check return from device_register() in cx_device_register() [IA64] Fix warning from machine_kexec.c [IA64] simserial, bail out when request_irq fails [IA64] hpsim, initialize chip for assigned irqs [IA64] simserial, include some headers [IA64] hpsim, fix SAL handling in fw-emu [IA64] genirq fixup for SGI/SN [IA64] disable interrupts when exiting from ia64_mca_cmc_int_handler()
This commit is contained in:
Коммит
0e65ae099c
|
@ -1086,8 +1086,6 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
|
|||
no_x2apic_optout
|
||||
BIOS x2APIC opt-out request will be ignored
|
||||
|
||||
inttest= [IA-64]
|
||||
|
||||
iomem= Disable strict checking of access to MMIO memory
|
||||
strict regions from userspace.
|
||||
relaxed
|
||||
|
|
|
@ -349,11 +349,11 @@ acpi_parse_int_src_ovr(struct acpi_subtable_header * header,
|
|||
|
||||
iosapic_override_isa_irq(p->source_irq, p->global_irq,
|
||||
((p->inti_flags & ACPI_MADT_POLARITY_MASK) ==
|
||||
ACPI_MADT_POLARITY_ACTIVE_HIGH) ?
|
||||
IOSAPIC_POL_HIGH : IOSAPIC_POL_LOW,
|
||||
ACPI_MADT_POLARITY_ACTIVE_LOW) ?
|
||||
IOSAPIC_POL_LOW : IOSAPIC_POL_HIGH,
|
||||
((p->inti_flags & ACPI_MADT_TRIGGER_MASK) ==
|
||||
ACPI_MADT_TRIGGER_EDGE) ?
|
||||
IOSAPIC_EDGE : IOSAPIC_LEVEL);
|
||||
ACPI_MADT_TRIGGER_LEVEL) ?
|
||||
IOSAPIC_LEVEL : IOSAPIC_EDGE);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
|
@ -157,7 +157,7 @@ void arch_crash_save_vmcoreinfo(void)
|
|||
#endif
|
||||
#ifdef CONFIG_PGTABLE_3
|
||||
VMCOREINFO_CONFIG(PGTABLE_3);
|
||||
#elif CONFIG_PGTABLE_4
|
||||
#elif defined(CONFIG_PGTABLE_4)
|
||||
VMCOREINFO_CONFIG(PGTABLE_4);
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -1447,6 +1447,8 @@ out:
|
|||
/* Get the CMC error record and log it */
|
||||
ia64_mca_log_sal_error_record(SAL_INFO_TYPE_CMC);
|
||||
|
||||
local_irq_disable();
|
||||
|
||||
return IRQ_HANDLED;
|
||||
}
|
||||
|
||||
|
|
|
@ -192,6 +192,7 @@ void hub_error_init(struct hubdev_info *hubdev_info)
|
|||
hubdev_info);
|
||||
return;
|
||||
}
|
||||
irq_set_handler(SGI_II_ERROR, handle_level_irq);
|
||||
sn_set_err_irq_affinity(SGI_II_ERROR);
|
||||
}
|
||||
|
||||
|
@ -213,6 +214,7 @@ void ice_error_init(struct hubdev_info *hubdev_info)
|
|||
hubdev_info);
|
||||
return;
|
||||
}
|
||||
irq_set_handler(SGI_TIO_ERROR, handle_level_irq);
|
||||
sn_set_err_irq_affinity(SGI_TIO_ERROR);
|
||||
}
|
||||
|
||||
|
|
|
@ -7,6 +7,7 @@
|
|||
*/
|
||||
|
||||
#include <linux/bootmem.h>
|
||||
#include <linux/export.h>
|
||||
#include <linux/slab.h>
|
||||
#include <asm/sn/types.h>
|
||||
#include <asm/sn/addrs.h>
|
||||
|
|
|
@ -352,6 +352,8 @@ void sn_irq_fixup(struct pci_dev *pci_dev, struct sn_irq_info *sn_irq_info)
|
|||
spin_lock(&sn_irq_info_lock);
|
||||
list_add_rcu(&sn_irq_info->list, sn_irq_lh[sn_irq_info->irq_irq]);
|
||||
reserve_irq_vector(sn_irq_info->irq_irq);
|
||||
if (sn_irq_info->irq_int_bit != -1)
|
||||
irq_set_handler(sn_irq_info->irq_irq, handle_level_irq);
|
||||
spin_unlock(&sn_irq_info_lock);
|
||||
|
||||
register_intr_pda(sn_irq_info);
|
||||
|
|
|
@ -25,6 +25,7 @@
|
|||
|
||||
#include <linux/fs.h>
|
||||
#include <linux/slab.h>
|
||||
#include <linux/export.h>
|
||||
#include <linux/vmalloc.h>
|
||||
#include <linux/seq_file.h>
|
||||
#include <linux/miscdevice.h>
|
||||
|
|
|
@ -191,6 +191,7 @@ cx_device_register(nasid_t nasid, int part_num, int mfg_num,
|
|||
struct hubdev_info *hubdev, int bt)
|
||||
{
|
||||
struct cx_dev *cx_dev;
|
||||
int r;
|
||||
|
||||
cx_dev = kzalloc(sizeof(struct cx_dev), GFP_KERNEL);
|
||||
DBG("cx_dev= 0x%p\n", cx_dev);
|
||||
|
@ -207,7 +208,11 @@ cx_device_register(nasid_t nasid, int part_num, int mfg_num,
|
|||
cx_dev->dev.bus = &tiocx_bus_type;
|
||||
cx_dev->dev.release = tiocx_bus_release;
|
||||
dev_set_name(&cx_dev->dev, "%d", cx_dev->cx_id.nasid);
|
||||
device_register(&cx_dev->dev);
|
||||
r = device_register(&cx_dev->dev);
|
||||
if (r) {
|
||||
kfree(cx_dev);
|
||||
return r;
|
||||
}
|
||||
get_device(&cx_dev->dev);
|
||||
|
||||
device_create_file(&cx_dev->dev, &dev_attr_cxdev_control);
|
||||
|
|
|
@ -146,6 +146,7 @@ pcibr_bus_fixup(struct pcibus_bussoft *prom_bussoft, struct pci_controller *cont
|
|||
printk(KERN_WARNING
|
||||
"pcibr cannot allocate interrupt for error handler\n");
|
||||
}
|
||||
irq_set_handler(SGI_PCIASIC_ERROR, handle_level_irq);
|
||||
sn_set_err_irq_affinity(SGI_PCIASIC_ERROR);
|
||||
|
||||
/*
|
||||
|
|
|
@ -649,6 +649,7 @@ tioca_bus_fixup(struct pcibus_bussoft *prom_bussoft, struct pci_controller *cont
|
|||
__func__, SGI_TIOCA_ERROR,
|
||||
(int)tioca_common->ca_common.bs_persist_busnum);
|
||||
|
||||
irq_set_handler(SGI_TIOCA_ERROR, handle_level_irq);
|
||||
sn_set_err_irq_affinity(SGI_TIOCA_ERROR);
|
||||
|
||||
/* Setup locality information */
|
||||
|
|
|
@ -1037,6 +1037,7 @@ tioce_bus_fixup(struct pcibus_bussoft *prom_bussoft, struct pci_controller *cont
|
|||
tioce_common->ce_pcibus.bs_persist_segment,
|
||||
tioce_common->ce_pcibus.bs_persist_busnum);
|
||||
|
||||
irq_set_handler(SGI_PCIASIC_ERROR, handle_level_irq);
|
||||
sn_set_err_irq_affinity(SGI_PCIASIC_ERROR);
|
||||
return tioce_common;
|
||||
}
|
||||
|
|
|
@ -743,6 +743,7 @@ static void __init sn_sal_switch_to_interrupts(struct sn_cons_port *port)
|
|||
spin_lock_irqsave(&port->sc_port.lock, flags);
|
||||
port->sc_port.irq = SGI_UART_VECTOR;
|
||||
port->sc_ops = &intr_ops;
|
||||
irq_set_handler(port->sc_port.irq, handle_level_irq);
|
||||
|
||||
/* turn on receive interrupts */
|
||||
ia64_sn_console_intr_enable(SAL_CONSOLE_INTR_RECV);
|
||||
|
|
Загрузка…
Ссылка в новой задаче