linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Direct PCI access broken in 2.4.10-pre
@ 2001-09-19 11:55 David Woodhouse
  2001-09-19 12:31 ` [PATCH] " Brian Gerst
  2001-09-19 14:51 ` David Woodhouse
  0 siblings, 2 replies; 3+ messages in thread
From: David Woodhouse @ 2001-09-19 11:55 UTC (permalink / raw)
  To: Andy Grover; +Cc: jgarzik, linux-kernel


2.4.10-pre3 and later fail to boot on my Compaq XL box. It claims that PCI 
isn't supported. This board doesn't use the PCI BIOS because the entry 
point is in high memory.

'cvs up -r v2_4_10-pre2 arch/i386/boot/pci-pc.c' fixes it.

A happy boot with the old pci-pc.c:
PCI: BIOS32 entry (0xc00fa000) in high memory, cannot use.
PCI: Using configuration type 2
PCI: Probing PCI hardware

An unhappy boot with the new one:
PCI: BIOS32 entry (0xc00fa000) in high memory, cannot use.
PCI: System does not support PCI

An unhappy boot with the new one and 'pci=conf2':
PCI: Using configuration type 2
PCI: Probing PCI hardware
PCI: device 00:01.0 has unknown header type 7f, ignoring.
PCI: device 00:02.0 has unknown header type 7f, ignoring.
PCI: device 00:03.0 has unknown header type 7f, ignoring.
PCI: device 00:04.0 has unknown header type 7f, ignoring.
PCI: device 00:05.0 has unknown header type 7f, ignoring.
PCI: device 00:06.0 has unknown header type 7f, ignoring.
PCI: device 00:07.0 has unknown header type 7f, ignoring.
PCI: device 00:08.0 has unknown header type 7f, ignoring.
PCI: device 00:09.0 has unknown header type 7f, ignoring.
PCI: device 00:0a.0 has unknown header type 7f, ignoring.
PCI: device 00:0e.2 has unknown header type 7f, ignoring.
PCI: device 00:0e.3 has unknown header type 7f, ignoring.
PCI: device 00:0e.4 has unknown header type 7f, ignoring.
PCI: device 00:0e.5 has unknown header type 7f, ignoring.
PCI: device 00:0e.6 has unknown header type 7f, ignoring.
PCI: device 00:0e.7 has unknown header type 7f, ignoring.
PCI: Cannot allocate resource region 0 of device 00:0e.0
PCI: Cannot allocate resource region 1 of device 00:0e.1
PCI: Cannot allocate resource region 2 of device 00:0e.1
PCI: Cannot allocate resource region 3 of device 00:0e.1
isapnp: Scanning for PnP cards...
isapnp: No Plug & Play device found
Linux NET4.0 for Linux 2.4
Based upon Swansea University Computer Society NET3.039
 <deadlock>

--
dwmw2



^ permalink raw reply	[flat|nested] 3+ messages in thread

* [PATCH] Re: Direct PCI access broken in 2.4.10-pre
  2001-09-19 11:55 Direct PCI access broken in 2.4.10-pre David Woodhouse
@ 2001-09-19 12:31 ` Brian Gerst
  2001-09-19 14:51 ` David Woodhouse
  1 sibling, 0 replies; 3+ messages in thread
From: Brian Gerst @ 2001-09-19 12:31 UTC (permalink / raw)
  To: David Woodhouse; +Cc: linux-kernel

[-- Attachment #1: Type: text/plain, Size: 663 bytes --]

David Woodhouse wrote:
> 
> 2.4.10-pre3 and later fail to boot on my Compaq XL box. It claims that PCI
> isn't supported. This board doesn't use the PCI BIOS because the entry
> point is in high memory.
> 
> 'cvs up -r v2_4_10-pre2 arch/i386/boot/pci-pc.c' fixes it.
> 
> A happy boot with the old pci-pc.c:
> PCI: BIOS32 entry (0xc00fa000) in high memory, cannot use.
> PCI: Using configuration type 2
> PCI: Probing PCI hardware
> 
> An unhappy boot with the new one:
> PCI: BIOS32 entry (0xc00fa000) in high memory, cannot use.
> PCI: System does not support PCI

Patch attached that fixes typecasting problems with PCI Type 2 accesses.

-- 

						Brian Gerst

[-- Attachment #2: diff-pcipc --]
[-- Type: text/plain, Size: 897 bytes --]

diff -urN linux-2.4.10-pre10/arch/i386/kernel/pci-pc.c linux/arch/i386/kernel/pci-pc.c
--- linux-2.4.10-pre10/arch/i386/kernel/pci-pc.c	Mon Sep 17 13:20:14 2001
+++ linux/arch/i386/kernel/pci-pc.c	Wed Sep 19 08:07:29 2001
@@ -261,18 +261,14 @@
 	u32 data;
 	result = pci_conf2_read(0, dev->bus->number, PCI_SLOT(dev->devfn), 
 		PCI_FUNC(dev->devfn), where, 2, &data);
-	*value = (u8)data;
+	*value = (u16)data;
 	return result;
 }
 
 static int pci_conf2_read_config_dword(struct pci_dev *dev, int where, u32 *value)
 {
-	int result; 
-	u32 data;
-	result = pci_conf2_read(0, dev->bus->number, PCI_SLOT(dev->devfn), 
-		PCI_FUNC(dev->devfn), where, 4, &data);
-	*value = (u8)data;
-	return result;
+	return pci_conf2_read(0, dev->bus->number, PCI_SLOT(dev->devfn), 
+		PCI_FUNC(dev->devfn), where, 4, value);
 }
 
 static int pci_conf2_write_config_byte(struct pci_dev *dev, int where, u8 value)

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] Re: Direct PCI access broken in 2.4.10-pre
  2001-09-19 11:55 Direct PCI access broken in 2.4.10-pre David Woodhouse
  2001-09-19 12:31 ` [PATCH] " Brian Gerst
@ 2001-09-19 14:51 ` David Woodhouse
  1 sibling, 0 replies; 3+ messages in thread
From: David Woodhouse @ 2001-09-19 14:51 UTC (permalink / raw)
  To: Brian Gerst; +Cc: linux-kernel


bgerst@didntduck.org said:
>  Patch attached that fixes typecasting problems with PCI Type 2
> accesses.

That appears to fix it. Thanks.

--
dwmw2



^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2001-09-19 14:51 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2001-09-19 11:55 Direct PCI access broken in 2.4.10-pre David Woodhouse
2001-09-19 12:31 ` [PATCH] " Brian Gerst
2001-09-19 14:51 ` David Woodhouse

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).