From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from [140.186.70.92] (port=43003 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1PRT6T-0005qP-JM for qemu-devel@nongnu.org; Sat, 11 Dec 2010 12:19:26 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1PRT6S-0005W3-0k for qemu-devel@nongnu.org; Sat, 11 Dec 2010 12:19:25 -0500 Received: from mail-pv0-f173.google.com ([74.125.83.173]:33493) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1PRT6R-0005Vw-Li for qemu-devel@nongnu.org; Sat, 11 Dec 2010 12:19:23 -0500 Received: by pvh11 with SMTP id 11so1023906pvh.4 for ; Sat, 11 Dec 2010 09:19:22 -0800 (PST) MIME-Version: 1.0 In-Reply-To: <20101211160617.GA9026@redhat.com> References: <1291808109-22563-1-git-send-email-gleb@redhat.com> <20101211160617.GA9026@redhat.com> From: Blue Swirl Date: Sat, 11 Dec 2010 17:19:01 +0000 Message-ID: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Subject: [Qemu-devel] Re: [PATCHv8 00/16] boot order specification List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Gleb Natapov Cc: kevin@koconnor.net, qemu-devel@nongnu.org, kvm@vger.kernel.org, The OpenBIOS Mailinglist On Sat, Dec 11, 2010 at 4:06 PM, Gleb Natapov wrote: > On Sat, Dec 11, 2010 at 03:13:35PM +0000, Blue Swirl wrote: >> On Wed, Dec 8, 2010 at 11:34 AM, Gleb Natapov wrote: >> > Forget to save a couple of buffers before sending version 7 :( >> > >> > Anthony, Blue can this be applied now? >> >> I made some more tests, this time with PPC. I modified OpenBIOS to >> print out the boot device list: >> >> $ qemu-system-ppc -drive if=3Dnone,id=3Dhda,file=3D/dev/null -device >> ide-drive,drive=3Dhda,bootindex=3D1 -drive if=3Dnone,id=3Dcd,file=3D/dev= /null >> -device ide-drive,drive=3Dcd,bootindex=3D0 -nographic -prom-env >> 'auto-boot?=3Dfalse' -L . >> qemu-system-ppc: pci_add_option_rom: failed to find romfile "vgabios-std= vga.bin" >> Could not open option rom 'pxe-ne2k_pci.bin': No such file or directory >> >> >> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D >> >> OpenBIOS 1.0 [Nov 28 2010 19:37] >> >> Configuration device id QEMU version 1 machine id 2 >> >> CPUs: 1 >> >> Memory: 128M >> >> UUID: 00000000-0000-0000-0000-000000000000 >> >> CPU type PowerPC,750 >> >> bootindex /grackle@fec00000/ide@3/drive@1/disk@1 >> >> /grackle@fec00000/ide@3/drive@1/disk@0 >> Welcome to OpenBIOS v1.0 built on Nov 28 2010 19:37 >> >> 0 > show-devs >> 7be6324 / >> 7be6440 /aliases >> 7be64e4 /openprom (BootROM) >> 7bebfa0 /openprom/client-services >> 7be668c /options >> 7be6704 /chosen >> 7be67e8 /builtin >> 7be688c /builtin/console >> 7bebcac /packages >> 7becda8 /packages/cmdline >> 7becee8 /packages/disk-label >> 7bedb58 /packages/terminal-emulator >> 7bee548 /packages/deblocker >> 7bee89c /packages/hfsplus-files >> 7beeb3c /packages/hfs-files >> 7beedd8 /packages/ext2-files >> 7bef010 /packages/iso9660-files >> 7bef248 /packages/grubfs-files >> 7bef480 /packages/mac-parts >> 7bef6b8 /packages/pc-parts >> 7bef8ec /packages/xcoff-loader >> 7bef9b8 /packages/elf-loader >> 7befa80 /packages/bootinfo-loader >> 7bed958 /cpus >> 7bf2fe8 /cpus/PowerPC,750@0 (cpu) >> 7beda58 /memory@0 (memory) >> 7befb4c /pci@80000000 (pci) >> 7beff64 /pci@80000000/QEMU,VGA@1 (display) >> 7bf0438 /pci@80000000/NE2000@2 (network) >> 7bf0814 /pci@80000000/pci-ata@3 (pci-ide) >> 7bf0c50 /pci@80000000/pci-ata@3/ata-1@500 (ata) >> 7bf0dd0 /pci@80000000/pci-ata@3/ata-2@600 (ata) >> 7bf0f50 /pci@80000000/pci-ata@3/ata-2@600/disk@1 (block) >> 7bf131c /pci@80000000/pci-ata@3/ata-2@600/disk@0 (block) >> 7bf1674 /pci@80000000/mac-io@4 (mac-io) >> 7bf1b54 /pci@80000000/mac-io@4/via-cuda@16000 (via-cuda) >> 7bf1d70 /pci@80000000/mac-io@4/via-cuda@16000/adb (adb) >> 7bf1ed8 /pci@80000000/mac-io@4/via-cuda@16000/adb/keyboard@8 (keyboard) >> 7bf2080 /pci@80000000/mac-io@4/via-cuda@16000/adb/mouse@9 (mouse) >> 7bf220c /pci@80000000/mac-io@4/via-cuda@16000/rtc (rtc) >> 7bf23f4 /pci@80000000/mac-io@4/nvram@60000 (nvram) >> 7bf2614 /pci@80000000/mac-io@4/escc@13000 (escc) >> 7bf271c /pci@80000000/mac-io@4/escc@13000/ch-a@13020 (serial) >> 7bf29b4 /pci@80000000/mac-io@4/escc@13000/ch-b@13000 (serial) >> 7bf2c20 /pci@80000000/mac-io@4/ata-3@20000 (ata) >> =C2=A0ok >> >> /grackle@fec00000/ide@3/drive@1/disk@1 does not match >> /pci@80000000/pci-ata@3/ata-2@600/disk@1. >> > hw/ppc_oldworld.c has: > pci_bus =3D pci_grackle_init(0xfec00000, pic); > i.e it registers pci controller at MMIO address 0xfec00000. 0x80000000 > is isa mmio base. Why OpenBIOS uses 80000000 as address of pci > controller? May be on real HW all memory access above 0x80000000 is > redirected to pci controller and it emulates isa? Then we should fix > qemu to do the same. > >> I wonder where '@80000000' comes from. A dump of original g3beige >> device tree is here: >> http://penguinppc.org/historical/dev-trees-html/g3_beige_300.html >> >> But actually the tree generated by OpenBIOS looks more like g3bw one: >> http://penguinppc.org/historical/dev-trees-html/g3bw_400.html >> >> How can we get the names to be more compatible? At least >> s/grackle/pci/ is easy to do in QEMU, but which instance (QEMU or >> OpenBIOS) should handle pci-ata vs ide change? > http://playground.sun.com/pub/p1275/bindings/pci/pci2_1.pdf has table on > page 10 that defines how pci class code should be translated into OF > name. This is what my patch is using. pci-ata does not look spec > compliant (or is there more up-to-date spec?) There could be a FCode Program which sets the name. >> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 What should we do with >> ata-2@600 vs drive@1? > There is no available IDE OF binding spec, so I when with the way > OpenBIOS reports ata on qemu-x86. I have no idea what 600 in ata-2@600 > may mean, but looking at g3_beige_300.html there is no such node there > and looking at any other device tree in http://penguinppc.org/historical/= dev-trees-html/ > I haven't found one that use this kind of addressing for pci-ata. > http://penguinppc.org/historical/dev-trees-html/g3bw_400.html for > instance has pci@80000000/pci-bridge@d/pci-ata@1/ata-4. ata-2@600 kind of > addressing is used by devices on mac-io bus which I do not think we > emulate in qemu. So it looks like OpneBIOS is wrong here. We have PMAC IDE, but this device is CMD646, so mac-io bus addressing rules should not be used. In this tree there are two disks connected to CMD646, named /pci@80000000/pci-bridge@d/pci-ata@1/ata-4/disk and /pci@80000000/pci-bridge@d/pci-ata@1/ata-4/disk@1: http://penguinppc.org/historical/dev-trees-html/g4_pci_350.html