pci-bus

What resource would you recommend to learn about programming a PCI bus?

I have to start delving in the details of a PCI bus device driver. What resource (book, website, etc...) would you recommend someone look at to learn more about the PCI bus and how to program it? EDIT: The platform would be both x86 and PowerPC ...

Which Hypervisors allow Raw PCI access?

I am trying to find out which Hypervisor will allow me to grant access to specialized PCI cards (such as a telephony card) to a virtual machine. So far I have tried out VMWare ESXi server and it doesn't seem to allow me to do this. I have heard that Microsoft Virtual Server does allow this, but I haven't been able to find any supporting ...

Finding available LPT (parallel) ports and addresses in Delphi

Hi, I am doing direct I/O on a parallel port which is fine and necessary for speed. I would like to enumerate the available ports to offer the user a choice of ports at setup time rather than a tedious trawl through device manager to read the address manually. Does anyone know a means of doing this please? Many thanks, Brian ...

Java to access pci-modem

Hi, I have a pci-modem in my laptop and I tried to run a program that opens the port and configures it.I get an excepcion while doing it, I think that it can't see the port, even though it is on COM3. Is there any way of doing it in java? The error I get is noClassDefFoundError. It says the SerialPortEventListener class isn't found. I...

Proper way to access registers in a PCI configuration space

When you need to access registers in the PCI configuration space, do you simply need to used built-in BIOS functions to read/write DWORDs into the configuration space? For example, if I am trying to use an IDE controller that is on B0:D31:F1 do I proceed to read/write the configuration register using that BDF as the parameters to the BI...

Is there a definitieve resource that documents navigation of the linux /proc and /sys filesystems?

We use the /proc and /sys file systems in Linux to discover various types of system configuration information. Typically, we spelunk around through the different files and directories until we find the information that we need. I'm wondering if anyone knows of a definitive resource that documents how one would navigate through the /pro...

mmap to overlay VME bus into user space memory over a PCI?

I'm trying to map a VME address space through a PCI bus into user space so I can perform regular read/writes on the memory. I have done this with another PCI device like this :- unsigned long *mapArea(unsigned int barAddr, unsigned int mapSize, int *fd) { unsigned long *mem; *fd = open("/dev/mem", O_RDWR); if ( *fd<0 ) { ...

read chip-id from pci- / pcie-card

A few months ago I had to write a small tool to program the eeprom of a rtl8139-card. It's basically the rtl8139-diag tool stripped down to read/write the eeprom. This tool has to be extend to be able to program the eeprom of rtl8101-cards now. This was not a problem, as the interface to the eeprom is similar to the one of the rtl8139. ...

How to record(reverse-engineer) PCI transactions on Linux

I want to record all read/write PCI transactions of a device driver. Is there a way to do it by a linux command or on software? ...

PCI Tv Tuner IR Sensor::Visual C++

Hi, Here's the thing. I recently bought a PCI Tv Tuner with a remote control (AverMedia Hybrid 007) and i want to use that remote control to control my PC (maybe create a basic media center application using media players that support slave mode, something like mplayer). The way i see it i have two options: Using the existing driver...

Is binding qemu guest cpu like mips/arm/powerpc to x86 host PCI address space possible?

PCI should be architecture independent, so I thought this was possible. Sorry if I've missed anything. ...

any way to trace pci communication on windows ?

I can't change the screen brightness of my laptop screen on Linux, so I thought I might find out what to do by replicating what happens (eg. with setpci -s blabla foo=bar) when I do it on Windows. I've never done any pci debugging, it'd be nice if it's easy to understand. ...

How to interpret the contents of /proc/bus/pci/devices ?

The first few fields of 'cat /proc/bus/pci/devices' are understandable. Field 1 - BusDevFunc Field 2 - Vendor Id + Device Id Field 3 - Interrupt Line Field 4 - BAR 0 and the rest of the BAR registers (0 - 5) after that. After the BAR registers are printed out, what are the other fields? Specifically, what PCI configuration space r...

Direct communication between two PCI devices

I have a NIC card and a HDD both connected on PCIe slots in a Linux machine. Ideally, I'd like to funnel incoming packets to the HDD without involving the CPU, or involving it minimally. Is it possible to set up direct communication along the PCI bus like that? Does anyone have pointers as to what to read up on to get started on a projec...

How to configure PCI-to-PCI bridge device in VxWorks?

I'm working with board support package (BSP) in VxWorks that uses pciAutoConfig() to configure the PCI bus. When I add an Ethernet controller card to the bus the pci display routines do not show the card. Using a bus analyzer I discovered that the Ethernet adapter actually consists of a PCI-to-PCI bridge with two Ethernet controllers ...

How can I read the bandwidth in use over the PCIe bus ?

I'm working on a streaming media application that pushes a lot of data to the graphics card at startup. The CPU is doing very little at the point when the data is being pushed, it idles along at close to zero percent usage. I'd like to monitor which machines struggle at pushing the initial data, and which ones can cope, in order that I...

Determine Physical Location of a PCI Adapter

We have a Windows application that can use multiple PCI adapters. These adapters all have external physical connections to other hardware or cables. Our software is configured to know what the physical connection on each card is connected to. Imagine audio software that supports multiple sound inputs and outputs. The audio software i...