Commit 6559fac5 authored by Linus Torvalds's avatar Linus Torvalds

Import 2.3.44pre5

parent af30c4cd
......@@ -1036,8 +1036,6 @@ static void __init pcibios_irq_peer_trick(struct irq_routing_table *rt)
* table, but unfortunately we have to know the interrupt router chip.
*/
#define ALLOWED_IRQ_MASK 0x0ff8
static char *pcibios_lookup_irq(struct pci_dev *dev, struct irq_routing_table *rt, int pin, int assign)
{
struct irq_info *q;
......@@ -1070,7 +1068,7 @@ static char *pcibios_lookup_irq(struct pci_dev *dev, struct irq_routing_table *r
DBG(" -> PIRQ %02x, mask %04x", pirq, mask);
if (!assign || (dev->class >> 8) == PCI_CLASS_DISPLAY_VGA)
newirq = 0;
else for(newirq = 16; newirq && !(mask & ALLOWED_IRQ_MASK & (1 << newirq)); newirq--)
else for(newirq = 13; newirq && !(mask & (1 << newirq)); newirq--)
;
if (!(router = pci_find_slot(rt->rtr_bus, rt->rtr_devfn))) {
DBG(" -> router not found\n");
......@@ -1175,10 +1173,8 @@ static void __init pcibios_fixup_irqs(void)
/*
* Fix out-of-range IRQ numbers and missing IRQs.
*/
if (dev->irq >= 16) {
DBG("%s: invalid IRQ %d\n", dev->irq);
if (dev->irq >= NR_IRQS)
dev->irq = 0;
}
if (pin && !dev->irq && pirq_table) {
char *msg = pcibios_lookup_irq(dev, pirq_table, pin, 0);
if (msg)
......
......@@ -31,6 +31,7 @@
#define __NO_VERSION__
#include <linux/module.h>
#include <linux/fs.h>
#include <linux/sched.h>
#include <linux/smp_lock.h>
#include <linux/locks.h>
#include <linux/init.h>
......
......@@ -1625,7 +1625,6 @@ int usb_string(struct usb_device *dev, int index, char *buf, size_t size)
err = usb_get_string(dev, dev->string_langid, index, tbuf, 255);
if (err < 0)
goto errout;
info("actual string desc. length = %d", err);
size--; /* leave room for trailing NULL char in output buffer */
for (idx = 0, u = 2; u < err; u += 2) {
......@@ -1729,6 +1728,8 @@ int usb_new_device(struct usb_device *dev)
return -1;
}
info("new device strings: Mfr=%d, Product=%d, SerialNumber=%d",
dev->descriptor.iManufacturer, dev->descriptor.iProduct, dev->descriptor.iSerialNumber);
if (dev->descriptor.iManufacturer)
usb_show_string(dev, "Manufacturer", dev->descriptor.iManufacturer);
if (dev->descriptor.iProduct)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment