After messing around with bcc, as86 and ld86 I finally got the vgabios to 
compile.

Everything works as it should I'm guessing. I've attached the output from lspci 
from the guest. I'll spend sometime looking at the device models and see how I 
can implement a model of what I'm interested in.

Is the overall architecture of any qemu device still similar to how a typical 
qemu pci device is or is there anything I should be aware of?

Thanks again Isaku.

AK
  _____  

From: Isaku Yamahata [mailto:yamah...@valinux.co.jp]
To: Adnan Khaleel [mailto:ad...@khaleel.us]
Cc: qemu-devel@nongnu.org
Sent: Fri, 20 Aug 2010 00:22:03 -0500
Subject: Re: [Qemu-devel] Template for developing a Qemu device with PCIe?and 
MSI-X

On Thu, Aug 19, 2010 at 01:32:42PM -0500, Adnan Khaleel wrote:
  > Isaku,
  > 
  > I'm having some difficulties building the sources, I get the following 
message
  > 
  > *akhal...@yar95 qemu-q35 $ ./configure --help
  > : bad interpreter: No such file or directory
  > 
  > And I get a similar error while compiling seabios as well.
  >
  > What shell are you using or am I missing something? I'm compiling from a
  > typical bash shell and using gcc v4.4.0.
  
  I'm not sure. configure script isn't modified.
  Can you compile normal qemu?
  The first line of the script is #!/bin/sh. I suppose you have /bin/sh.
  
  
  > In vgabios, there is a requirement for bcc. Is that borland C compiler?
  
  No. Most Linux destro has bcc package. Just you need to install it like
  yum install bcc or something.
  
  Thanks,
  
  
  > 
  > Thanks
  > 
  > Adnan
  > 
  >     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
  >     From: Isaku Yamahata [mailto:yamah...@valinux.co.jp]
  >     To: Adnan Khaleel [mailto:ad...@khaleel.us]
  >     Cc: qemu-devel@nongnu.org
  >     Sent: Wed, 18 Aug 2010 22:19:04 -0500
  >     Subject: Re: [Qemu-devel] Template for developing a Qemu device with 
PCIe
  >     and MSI-X
  > 
  >     On Wed, Aug 18, 2010 at 02:10:10PM -0500, Adnan Khaleel wrote:
  >     > Hello Qemu developers,
  >     >
  >     > I'm interested in developing a device model that plugs into Qemu that 
is
  >     based
  >     > on a PCIe interface and uses MSI-X. My goal is to ultimately attach a 
GPU
  >     > simulator to this PCIe interface and use the entire platfom (Qemu + 
GPU
  >     > simulator) for studying cpu, gpu interactions.
  >     >
  >     > I'm not terribly familiar with the Qemu device model and I'm looking 
for
  >     some
  >     > assistance, perhaps a starting template for pcie and msi-x that would
  >     offer the
  >     > basic functionality that I could then build upon.
  >     >
  >     > I have looked at the various devices that already modelled that are
  >     included
  >     > with Qemu (v0.12.5 at least) and I've noticed several a few pci 
devices,
  >     eg;
  >     > ne2k and cirrus-pci etc, however only one device truly seems to 
utilize
  >     both
  >     > the technologies that I'm interested in and that is the virtio-pci.c
  >     >
  >     > I'm not sure what virtio-pci does so I'm not sure if that is a 
suitable
  >     > starting point for me.
  >     >
  >     > Any help, suggestions etc would be extremely helpful and much
  >     appreciated.
  > 
  >     Qemu doesn't support pcie at the moment.
  >     Only partial patches have been merged, still more patches have to
  >     be merged for pcie to fully work. The following repo is available.
  > 
  >     git clone http://people.valinux.co.jp/~yamahata/qemu/q35/qemu
  >     git clone http://people.valinux.co.jp/~yamahata/qemu/q35/seabios
  >     git clone http://people.valinux.co.jp/~yamahata/qemu/q35/vgabios
  > 
  >     Note: patched seabios and vgabios are needed, you have to pass ACPI DSDT
  >     for q35.
  >     example:
  >     qemu-system-x86_64 -M pc_q35 -acpitable 
load_header,data=roms/seabios/src/
  >     q35-acpi-dsdt.aml
  > 
  >     This repo is for those who want to try/develop pcie support,
  >     not for upstream merge. So they include patches unsuitable for upstream.
  >     The repo includes pcie port switch emulator which utilize pcie and
  >     MSI(not MSI-X).
  > 
  >     The difference between PCI device and PCIe device is configuration
  >     space size.
  >     By setting PCIDeviceInfo::is_express = 1, you'll get 4K configuration
  >     space. Helper functions for pcie are found in qemu/hw/pcie.c
  >     For msi-x, see qemu/hw/msix.c.
  > 
  >     Thanks,
  >     --
  >     yamahata
  > 
  
  -- 
  yamahata
    
00:00.0 Host bridge: Intel Corporation 82G33/G31/P35/P31 Express DRAM Controller
00:01.0 VGA compatible controller: Cirrus Logic GD 5446
00:04.0 PCI bridge: Intel Corporation X58 I/O Hub PCI Express Root Port 0 (rev 
02)
00:18.0 PCI bridge: Intel Corporation X58 I/O Hub PCI Express Root Port 0 (rev 
02)
00:18.1 PCI bridge: Intel Corporation X58 I/O Hub PCI Express Root Port 0 (rev 
02)
00:18.2 PCI bridge: Intel Corporation X58 I/O Hub PCI Express Root Port 0 (rev 
02)
00:18.3 PCI bridge: Intel Corporation X58 I/O Hub PCI Express Root Port 0 (rev 
02)
00:18.4 PCI bridge: Intel Corporation X58 I/O Hub PCI Express Root Port 0 (rev 
02)
00:18.5 PCI bridge: Intel Corporation X58 I/O Hub PCI Express Root Port 0 (rev 
02)
00:19.0 PCI bridge: Intel Corporation X58 I/O Hub PCI Express Root Port 0 (rev 
02)
00:1e.0 PCI bridge: Intel Corporation 82801 PCI Bridge (rev 92)
00:1f.0 ISA bridge: Intel Corporation 82801IB (ICH9) LPC Interface Controller 
(rev 02)
00:1f.3 SMBus: Intel Corporation 82801I (ICH9 Family) SMBus Controller (rev 02)
36:00.0 PCI bridge: Texas Instruments Device 8232 (rev 02)
36:00.1 PCI bridge: Texas Instruments Device 8232 (rev 02)
36:00.2 PCI bridge: Texas Instruments Device 8232 (rev 02)
36:00.3 PCI bridge: Texas Instruments Device 8232 (rev 02)
36:00.4 PCI bridge: Texas Instruments Device 8232 (rev 02)
36:00.5 PCI bridge: Texas Instruments Device 8232 (rev 02)
36:00.6 PCI bridge: Texas Instruments Device 8232 (rev 02)
36:00.7 PCI bridge: Texas Instruments Device 8232 (rev 02)
37:00.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
37:01.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
37:02.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
37:03.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
37:04.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
37:05.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
37:06.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
37:07.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
37:08.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
37:09.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
37:0a.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
37:0b.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
37:0c.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
37:0d.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
37:0e.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
37:0f.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
48:00.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
48:01.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
48:02.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
48:03.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
48:04.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
48:05.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
48:06.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
48:07.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
48:08.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
48:09.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
48:0a.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
48:0b.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
48:0c.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
48:0d.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
48:0e.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
48:0f.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
59:00.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
59:01.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
59:02.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
59:03.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
59:04.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
59:05.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
59:06.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
59:07.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
59:08.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
59:09.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
59:0a.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
59:0b.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
59:0c.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
59:0d.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
59:0e.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
59:0f.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
6a:00.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
6a:01.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
6a:02.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
6a:03.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
6a:04.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
6a:05.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
6a:06.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
6a:07.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
6a:08.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
6a:09.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
6a:0a.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
6a:0b.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
6a:0c.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
6a:0d.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
6a:0e.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
6a:0f.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
7b:00.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
7b:01.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
7b:02.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
7b:03.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
7b:04.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
7b:05.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
7b:06.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
7b:07.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
7b:08.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
7b:09.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
7b:0a.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
7b:0b.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
7b:0c.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
7b:0d.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
7b:0e.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
7b:0f.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
8c:00.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
8c:01.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
8c:02.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
8c:03.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
8c:04.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
8c:05.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
8c:06.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
8c:07.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
8c:08.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
8c:09.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
8c:0a.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
8c:0b.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
8c:0c.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
8c:0d.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
8c:0e.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
8c:0f.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
9d:00.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
9d:01.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
9d:02.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
9d:03.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
9d:04.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
9d:05.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
9d:06.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
9d:07.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
9d:08.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
9d:09.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
9d:0a.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
9d:0b.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
9d:0c.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
9d:0d.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
9d:0e.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
9d:0f.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
ae:00.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
ae:01.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
ae:02.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
ae:03.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
ae:04.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
ae:05.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
ae:06.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
ae:07.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
ae:08.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
ae:09.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
ae:0a.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
ae:0b.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
ae:0c.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
ae:0d.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
ae:0e.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
ae:0f.0 PCI bridge: Texas Instruments Device 8233 (rev 01)
c0:00.0 Ethernet controller: Intel Corporation 82540EM Gigabit Ethernet 
Controller (rev 03)
c0:01.0 IDE interface: Intel Corporation 82371SB PIIX3 IDE [Natoma/Triton II]
c0:1c.0 PCI bridge: Digital Equipment Corporation DECchip 21154 (rev 05)
c0:1d.0 PCI bridge: Digital Equipment Corporation DECchip 21154 (rev 05)
c0:1e.0 PCI bridge: Digital Equipment Corporation DECchip 21154 (rev 05)
c0:1f.0 PCI bridge: Digital Equipment Corporation DECchip 21154 (rev 05)

Reply via email to