提交 a6ab948e 编写于 作者: L Linus Torvalds

Merge branch 'x86-fixes-for-linus' of...

Merge branch 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip

* 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
  x86: ce4100: Configure IOAPIC pins for USB and SATA to level type
  x86: devicetree: Configure IOAPIC pin only once
  x86, setup: When probing memory with e801, use ax/bx as a pair
...@@ -91,7 +91,7 @@ static int detect_memory_e801(void) ...@@ -91,7 +91,7 @@ static int detect_memory_e801(void)
if (oreg.ax > 15*1024) { if (oreg.ax > 15*1024) {
return -1; /* Bogus! */ return -1; /* Bogus! */
} else if (oreg.ax == 15*1024) { } else if (oreg.ax == 15*1024) {
boot_params.alt_mem_k = (oreg.dx << 6) + oreg.ax; boot_params.alt_mem_k = (oreg.bx << 6) + oreg.ax;
} else { } else {
/* /*
* This ignores memory above 16MB if we have a memory * This ignores memory above 16MB if we have a memory
......
...@@ -150,7 +150,7 @@ void setup_IO_APIC_irq_extra(u32 gsi); ...@@ -150,7 +150,7 @@ void setup_IO_APIC_irq_extra(u32 gsi);
extern void ioapic_and_gsi_init(void); extern void ioapic_and_gsi_init(void);
extern void ioapic_insert_resources(void); extern void ioapic_insert_resources(void);
int io_apic_setup_irq_pin(unsigned int irq, int node, struct io_apic_irq_attr *attr); int io_apic_setup_irq_pin_once(unsigned int irq, int node, struct io_apic_irq_attr *attr);
extern struct IO_APIC_route_entry **alloc_ioapic_entries(void); extern struct IO_APIC_route_entry **alloc_ioapic_entries(void);
extern void free_ioapic_entries(struct IO_APIC_route_entry **ioapic_entries); extern void free_ioapic_entries(struct IO_APIC_route_entry **ioapic_entries);
......
...@@ -128,8 +128,8 @@ static int __init parse_noapic(char *str) ...@@ -128,8 +128,8 @@ static int __init parse_noapic(char *str)
} }
early_param("noapic", parse_noapic); early_param("noapic", parse_noapic);
static int io_apic_setup_irq_pin_once(unsigned int irq, int node, static int io_apic_setup_irq_pin(unsigned int irq, int node,
struct io_apic_irq_attr *attr); struct io_apic_irq_attr *attr);
/* Will be called in mpparse/acpi/sfi codes for saving IRQ info */ /* Will be called in mpparse/acpi/sfi codes for saving IRQ info */
void mp_save_irq(struct mpc_intsrc *m) void mp_save_irq(struct mpc_intsrc *m)
...@@ -3570,7 +3570,7 @@ int arch_setup_ht_irq(unsigned int irq, struct pci_dev *dev) ...@@ -3570,7 +3570,7 @@ int arch_setup_ht_irq(unsigned int irq, struct pci_dev *dev)
} }
#endif /* CONFIG_HT_IRQ */ #endif /* CONFIG_HT_IRQ */
int static int
io_apic_setup_irq_pin(unsigned int irq, int node, struct io_apic_irq_attr *attr) io_apic_setup_irq_pin(unsigned int irq, int node, struct io_apic_irq_attr *attr)
{ {
struct irq_cfg *cfg = alloc_irq_and_cfg_at(irq, node); struct irq_cfg *cfg = alloc_irq_and_cfg_at(irq, node);
...@@ -3585,8 +3585,8 @@ io_apic_setup_irq_pin(unsigned int irq, int node, struct io_apic_irq_attr *attr) ...@@ -3585,8 +3585,8 @@ io_apic_setup_irq_pin(unsigned int irq, int node, struct io_apic_irq_attr *attr)
return ret; return ret;
} }
static int io_apic_setup_irq_pin_once(unsigned int irq, int node, int io_apic_setup_irq_pin_once(unsigned int irq, int node,
struct io_apic_irq_attr *attr) struct io_apic_irq_attr *attr)
{ {
unsigned int id = attr->ioapic, pin = attr->ioapic_pin; unsigned int id = attr->ioapic, pin = attr->ioapic_pin;
int ret; int ret;
......
...@@ -391,7 +391,7 @@ static int ioapic_xlate(struct irq_domain *id, const u32 *intspec, u32 intsize, ...@@ -391,7 +391,7 @@ static int ioapic_xlate(struct irq_domain *id, const u32 *intspec, u32 intsize,
set_io_apic_irq_attr(&attr, idx, line, it->trigger, it->polarity); set_io_apic_irq_attr(&attr, idx, line, it->trigger, it->polarity);
return io_apic_setup_irq_pin(*out_hwirq, cpu_to_node(0), &attr); return io_apic_setup_irq_pin_once(*out_hwirq, cpu_to_node(0), &attr);
} }
static void __init ioapic_add_ofnode(struct device_node *np) static void __init ioapic_add_ofnode(struct device_node *np)
......
...@@ -347,7 +347,7 @@ ...@@ -347,7 +347,7 @@
"pciclass0c03"; "pciclass0c03";
reg = <0x16800 0x0 0x0 0x0 0x0>; reg = <0x16800 0x0 0x0 0x0 0x0>;
interrupts = <22 3>; interrupts = <22 1>;
}; };
usb@d,1 { usb@d,1 {
...@@ -357,7 +357,7 @@ ...@@ -357,7 +357,7 @@
"pciclass0c03"; "pciclass0c03";
reg = <0x16900 0x0 0x0 0x0 0x0>; reg = <0x16900 0x0 0x0 0x0 0x0>;
interrupts = <22 3>; interrupts = <22 1>;
}; };
sata@e,0 { sata@e,0 {
...@@ -367,7 +367,7 @@ ...@@ -367,7 +367,7 @@
"pciclass0106"; "pciclass0106";
reg = <0x17000 0x0 0x0 0x0 0x0>; reg = <0x17000 0x0 0x0 0x0 0x0>;
interrupts = <23 3>; interrupts = <23 1>;
}; };
flash@f,0 { flash@f,0 {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册