diff options
author | Matthew Wilcox <willy@parisc-linux.org> | 2006-01-10 20:48:06 -0500 |
---|---|---|
committer | Kyle McMartin <kyle@duet.int.mcmartin.ca> | 2006-01-10 21:53:14 -0500 |
commit | f45adcf977ac3c5512c17fd97b073bda99c81232 (patch) | |
tree | b6dedae336721d6f55836b17b27115ca66874352 | |
parent | 4d62ce5d2a85976a2e6f2732980e59b21b2aa8d2 (diff) |
[PARISC] Fix Dino reporting on J2240
Fix Dino reporting on J2240. This particular machine thought it
had a Cujo. Also add J2240 Dino chip to the hp_hardware_list.
Signed-off-by: Matthew Wilcox <willy@parisc-linux.org>
Signed-off-by: Kyle McMartin <kyle@parisc-linux.org>
-rw-r--r-- | arch/parisc/kernel/hardware.c | 1 | ||||
-rw-r--r-- | drivers/parisc/dino.c | 8 |
2 files changed, 5 insertions, 4 deletions
diff --git a/arch/parisc/kernel/hardware.c b/arch/parisc/kernel/hardware.c index 2071b5bba15c..3058bffd8a2c 100644 --- a/arch/parisc/kernel/hardware.c +++ b/arch/parisc/kernel/hardware.c | |||
@@ -551,6 +551,7 @@ static struct hp_hardware hp_hardware_list[] __initdata = { | |||
551 | {HPHW_BCPORT, 0x804, 0x0000C, 0x10, "REO I/O BC Merced Port"}, | 551 | {HPHW_BCPORT, 0x804, 0x0000C, 0x10, "REO I/O BC Merced Port"}, |
552 | {HPHW_BCPORT, 0x782, 0x0000C, 0x00, "REO I/O BC Ropes Port"}, | 552 | {HPHW_BCPORT, 0x782, 0x0000C, 0x00, "REO I/O BC Ropes Port"}, |
553 | {HPHW_BCPORT, 0x784, 0x0000C, 0x00, "Pluto I/O BC Ropes Port"}, | 553 | {HPHW_BCPORT, 0x784, 0x0000C, 0x00, "Pluto I/O BC Ropes Port"}, |
554 | {HPHW_BRIDGE, 0x05D, 0x0000A, 0x00, "SummitHawk Dino PCI Bridge"}, | ||
554 | {HPHW_BRIDGE, 0x680, 0x0000A, 0x00, "Dino PCI Bridge"}, | 555 | {HPHW_BRIDGE, 0x680, 0x0000A, 0x00, "Dino PCI Bridge"}, |
555 | {HPHW_BRIDGE, 0x682, 0x0000A, 0x00, "Cujo PCI Bridge"}, | 556 | {HPHW_BRIDGE, 0x682, 0x0000A, 0x00, "Cujo PCI Bridge"}, |
556 | {HPHW_BRIDGE, 0x782, 0x0000A, 0x00, "Elroy PCI Bridge"}, | 557 | {HPHW_BRIDGE, 0x782, 0x0000A, 0x00, "Elroy PCI Bridge"}, |
diff --git a/drivers/parisc/dino.c b/drivers/parisc/dino.c index 45a1a494c1cc..216d1d859326 100644 --- a/drivers/parisc/dino.c +++ b/drivers/parisc/dino.c | |||
@@ -83,7 +83,8 @@ | |||
83 | ** bus number for each dino. | 83 | ** bus number for each dino. |
84 | */ | 84 | */ |
85 | 85 | ||
86 | #define is_card_dino(id) ((id)->hw_type == HPHW_A_DMA) | 86 | #define is_card_dino(id) ((id)->hw_type == HPHW_A_DMA) |
87 | #define is_cujo(id) ((id)->hversion == 0x682) | ||
87 | 88 | ||
88 | #define DINO_IAR0 0x004 | 89 | #define DINO_IAR0 0x004 |
89 | #define DINO_IODC_ADDR 0x008 | 90 | #define DINO_IODC_ADDR 0x008 |
@@ -682,7 +683,6 @@ dino_fixup_bus(struct pci_bus *bus) | |||
682 | printk(KERN_WARNING "Device %s has unassigned IRQ\n", pci_name(dev)); | 683 | printk(KERN_WARNING "Device %s has unassigned IRQ\n", pci_name(dev)); |
683 | #endif | 684 | #endif |
684 | } else { | 685 | } else { |
685 | |||
686 | /* Adjust INT_LINE for that busses region */ | 686 | /* Adjust INT_LINE for that busses region */ |
687 | dino_assign_irq(dino_dev, dev->irq, &dev->irq); | 687 | dino_assign_irq(dino_dev, dev->irq, &dev->irq); |
688 | } | 688 | } |
@@ -888,7 +888,7 @@ static int __init dino_common_init(struct parisc_device *dev, | |||
888 | 888 | ||
889 | /* allocate I/O Port resource region */ | 889 | /* allocate I/O Port resource region */ |
890 | res = &dino_dev->hba.io_space; | 890 | res = &dino_dev->hba.io_space; |
891 | if (dev->id.hversion == 0x680 || is_card_dino(&dev->id)) { | 891 | if (!is_cujo(&dev->id)) { |
892 | res->name = "Dino I/O Port"; | 892 | res->name = "Dino I/O Port"; |
893 | } else { | 893 | } else { |
894 | res->name = "Cujo I/O Port"; | 894 | res->name = "Cujo I/O Port"; |
@@ -943,7 +943,7 @@ static int __init dino_probe(struct parisc_device *dev) | |||
943 | if (is_card_dino(&dev->id)) { | 943 | if (is_card_dino(&dev->id)) { |
944 | version = "3.x (card mode)"; | 944 | version = "3.x (card mode)"; |
945 | } else { | 945 | } else { |
946 | if(dev->id.hversion == 0x680) { | 946 | if (!is_cujo(&dev->id)) { |
947 | if (dev->id.hversion_rev < 4) { | 947 | if (dev->id.hversion_rev < 4) { |
948 | version = dino_vers[dev->id.hversion_rev]; | 948 | version = dino_vers[dev->id.hversion_rev]; |
949 | } | 949 | } |