From: Isaku Yamahata <yamahata@valinux.co.jp>
To: Jan Kiszka <jan.kiszka@siemens.com>
Cc: "adnan@khaleel.us" <adnan@khaleel.us>,
"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>
Subject: Re: [Qemu-devel] [PATCH 00/26] q35 chipset support for native pci express support
Date: Wed, 18 May 2011 11:38:31 +0900 [thread overview]
Message-ID: <20110518023831.GD1705@valinux.co.jp> (raw)
In-Reply-To: <4DD28457.9010604@siemens.com>
On Tue, May 17, 2011 at 04:21:11PM +0200, Jan Kiszka wrote:
> I also succeeded with passing through a PCIe host device. Nicely, the
> full set capabilities showed up on the guest side this way. But GPU
> pass-through did not improve this way (it rather regressed, yet unclear
> why).
Interesting.
> > I had a quick look at your patches.
> > With seabios patch of 94710189f5323034e00b510fe5a0865a7b576a9f,
> > you ignored MCFG area.
> >
> > (start = Q35_HOST_BRIDGE_PCIEXBAR_ADDR, size = 256MB) is used
> > for MCFG (!= pci region), so it can't be used for PCI region.
> > That's why 256M is added to s.
> > And Q35_HOST_BRIDGE_PCIEXBAR_ADDR in dev-q35.h also needs to be adjusted.
>
> Confused. Where was the PCI region located without my hack?
I mean the following patch on top of your tree.
At the moment, I only compiled it.
diff --git a/src/dev-q35.c b/src/dev-q35.c
index c0aa057..eee50c4 100644
--- a/src/dev-q35.c
+++ b/src/dev-q35.c
@@ -36,13 +36,15 @@ void mch_mem_addr_init(u16 bdf, void *arg)
/*
* BUILD_MAX_HIGHMEM == 0xc0000000
- * [0xc000 0000, 0xf000 0000) for MCFG
- * 4GB - 1GB, 4GB - 256MB
+ * [0xc000 0000, 0xd000 0000) for MCFG
+ * 3GB , 3GB + 256MB
+ * [0xd000 0000, 0xf000 0000) for pci memory region
+ * 3GB + 256MB, 4GB - 256MB
* [0xf000 0000, 0xfec0 0000) for DMI interface(subtractive decode)
* 4GB - 256MB, 4GB - 20MB
*/
- s = BUILD_MAX_HIGHMEM;
- e = s + 128 * 1024 * 1024 - 1 + 512 * 1024 * 1024;
+ s = Q35_HOST_BRIDGE_PCIEXBAR_ADDR + Q35_HOST_BRIDGE_PCIEXBAR_SIZE;
+ e = s + 512 * 1024 * 1024 - 1;
pci_region_init(addr->pci_bios_mem_region, s, e);
/* pci_bios_mem_addr + <some value: 128M is used here> */
diff --git a/src/dev-q35.h b/src/dev-q35.h
index f5cae62..0d83dba 100644
--- a/src/dev-q35.h
+++ b/src/dev-q35.h
@@ -8,7 +8,7 @@
#define Q35_HOST_BRIDGE_SMRAM 0x9d
#define Q35_HOST_BRIDGE_PCIEXBAR 0x60
#define Q35_HOST_BRIDGE_PCIEXBAR_SIZE (256 * 1024 * 1024)
-#define Q35_HOST_BRIDGE_PCIEXBAR_ADDR 0xe0000000
+#define Q35_HOST_BRIDGE_PCIEXBAR_ADDR BUILD_MAX_HIGHMEM
#define Q35_HOST_BRIDGE_PCIEXBAREN ((u64)1)
#define Q35_HOST_PCIE_PCI_SEGMENT 0
#define Q35_HOST_PCIE_START_BUS_NUMBER 0
> BTW, the PCI bar mapping failures of VGA or e1000 are independent of
> that seabios commit. You should see them with your tree as well.
Hmm, I'll look into it.
> > After pushing out pci id clean up and once they are accepted,
> > I'll publish rebased/cleaned up one.
>
> Note that I dropped "simply i440fx initialization". It was a premature
> cleanup that caused regressions. The good news: I'm working on PAM/SMRAM
> fixes that will include such a cleanup after removing the need for the
> init function. The bad news: Those patches will force you to rebase
> again (to break out the new PAM/SMRAM code).
Please keep CCed on me.
--
yamahata
next prev parent reply other threads:[~2011-05-18 2:38 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-05-16 21:55 [Qemu-devel] [PATCH 00/26] q35 chipset support for native pci express support Adnan Khaleel
2011-05-17 7:15 ` Jan Kiszka
2011-05-17 13:57 ` Isaku Yamahata
2011-05-17 14:21 ` Jan Kiszka
2011-05-18 2:38 ` Isaku Yamahata [this message]
2011-05-25 7:15 ` Jan Kiszka
2011-05-26 9:00 ` Isaku Yamahata
-- strict thread matches above, loose matches on Subject: below --
2011-05-10 16:58 [Qemu-devel] [PATCH 00/26] q35 chipset support for native pci?express support Adnan Khaleel
2011-04-21 16:52 [Qemu-devel] [PATCH 00/26] q35 chipset support for native?pci?express support Adnan Khaleel
2011-04-21 16:12 [Qemu-devel] [PATCH 00/26] q35 chipset support for native pci?express support Adnan Khaleel
2011-04-21 16:38 ` [Qemu-devel] [PATCH 00/26] q35 chipset support for native?pci?express support Isaku Yamahata
2011-04-20 23:41 [Qemu-devel] [PATCH 00/26] q35 chipset support for native pci express support Adnan Khaleel
2011-04-21 2:07 ` [Qemu-devel] [PATCH 00/26] q35 chipset support for native pci?express support Isaku Yamahata
2011-04-21 2:27 ` Gui Jianfeng
2011-03-16 9:29 [Qemu-devel] [PATCH 00/26] q35 chipset support for native pci express support Isaku Yamahata
2011-04-19 8:28 ` Hu Tao
2011-04-19 8:51 ` Isaku Yamahata
2011-04-19 8:58 ` Hu Tao
2011-04-20 22:46 ` Isaku Yamahata
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20110518023831.GD1705@valinux.co.jp \
--to=yamahata@valinux.co.jp \
--cc=adnan@khaleel.us \
--cc=jan.kiszka@siemens.com \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).