Problem with PCI cards

I have developed the PCI-device for which it is necessary 128 bytes of ports of input-output, 512 Kb of memory and one interrupt. When I install 4 devices simultaneously, BIOS allocates for them necessary resources, windows 98 allocates resources only for 3 devices. And Windows XP at all it does not want to be loaded ("Blue screen" before installation of drivers).

Reply to
irum4
Loading thread data ...

I have developed the PCI-device for which it is necessary 128 bytes of ports of input-output, 512 Kb of memory and one interrupt. When I install 4 devices simultaneously, BIOS allocates for them necessary resources, windows 98 allocates resources only for 3 devices. And Windows XP at all it does not want to be loaded. Why?

Reply to
irum4

Followup to: By author: snipped-for-privacy@yahoo.com (irum4) In newsgroup: comp.arch.fpga

Check through *all* the bits in the configuration space header to make sure you match the specification.

-hpa

--
 at work,  in private!
If you send me mail in HTML format I will assume it's spam.
"Unix gives you enough rope to shoot yourself in the foot."
Architectures needed: ia64 m68k mips64 ppc ppc64 s390 s390x sh v850 x86-64
Reply to
H. Peter Anvin

Vendor ID & Device ID 0007524d Command &Status 02000187 04800000 00008000 0000bc01 f4400008 00000000 00000000 00000000 00000000 00000000 091e0000 00000000 00000000 00000000 00000103

Reply to
irum4

Um,

You've got completely stupid values for BAR0 and BAR1. Go re-read the PCI spec.

Reply to
Andy Peters

I've developed a couple of debuggers that run on Win98 and Win95 that let you look at (and modify) PCI config registers as well as peek and poke locations in the different BAR address spaces.

Take a look at:

formatting link

The original version, DBG.EXE, has a built-in Forth interpreter that allows you to write sophisticated test scripts/programs without having to learn how to map memory in the X86 architecture.

Unfortunately, Forth is like Pig-Latin to most people, so the newer version of the code has an internal C interpeter to handle test scripts/programs. The newer code is called (surprise) CDBG.

The original DBG gets little support or attention at this point. If you use it and find a bug, I may or may not look into the problem.

CDBG get more attention from me. I'll probably look at re-produceable bugs that are reported to me. I already know that the C interpreter tends to have occasional problems recovering from syntax errors and accesses to pointers out-of-range.

Both tools have been VERY useful in helping me debug PCI cards.

We also have Linux and Win2k versions of CDBG, but these aren't for public consumption yet.

John Providenza

spec.

Reply to
John Providenza

The drivers for XP are different than the drivers for 98. If you put 3 boards in and it works how you want it then the boards and the hardware design work. If you put in more boards and some don't work then you have a driver problem. I can almost guarantee that you will need a new driver for XP.

If you need any consulting let me know...

Steve

Reply to
Steve Casselman

spec.

_Are_ these completely stupid if the host has performed the memory mapping configuration?

BAR0 is IO space mapped to 0xBC00

BAR1 is memory space which is pre-fetchable from

0xF4400000 to 0xF4800000

?

Nial Stewart

------------------------------------------------ Nial Stewart Developments Ltd FPGA and High Speed Digital Design

formatting link

Reply to
Nial Stewart

Followup to: By author: "Nial Stewart" In newsgroup: comp.arch.fpga

It's actually impossible to know without knowing what the powerup values are and which bits are read/write. Just posting a snapshot in time is pretty useless -- you need to go and check the proper semantics of all your bits.

-hpa

--
 at work,  in private!
If you send me mail in HTML format I will assume it's spam.
"Unix gives you enough rope to shoot yourself in the foot."
Architectures needed: ia64 m68k mips64 ppc ppc64 s390 s390x sh v850 x86-64
Reply to
H. Peter Anvin

Aye, but they could be valid values after config OK, couldn't they?

I don't think Andy was correct in saying the BAR0 and BAR1 values are completely stupid without more info.

?

Nial

------------------------------------------------ Nial Stewart Developments Ltd FPGA and High Speed Digital Design

formatting link

Reply to
Nial Stewart

Followup to: By author: "Nial Stewart" In newsgroup: comp.arch.fpga

The BAR0/1 values look plausible, yes.

-hpa

--
 at work,  in private!
If you send me mail in HTML format I will assume it's spam.
"Unix gives you enough rope to shoot yourself in the foot."
Architectures needed: ia64 m68k mips64 ppc ppc64 s390 s390x sh v850 x86-64
Reply to
H. Peter Anvin

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.