[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-ppc] QEMU powerpc embedded architecture base address problem
From: |
Alexander Graf |
Subject: |
Re: [Qemu-ppc] QEMU powerpc embedded architecture base address problem |
Date: |
Wed, 12 Jun 2013 16:38:39 +0200 |
On 14.05.2013, at 13:35, Sijia Li wrote:
> On 13/05/13 13:51, Alexander Graf wrote:
>> On 13.05.2013, at 13:34, Sijia Li wrote:
>>
>>> On 13/05/13 11:24, Alexander Graf wrote:
>>>> On 13.05.2013, at 11:18, 李思嘉 wrote:
>>>>
>>>>> Thanks a lot.
>>>> Please don't top post. Please always keep qemu-ppc CC'ed.
>>>>
>>>>> I am using the newest version of QEMU, which is QEMU 1.5.0. I want to
>>>>> test my network card driver for NE2000. But it seems like it doesn't
>>>>> support NE2000 when I add attribute -M ref405ep -cpu 401100c4 or -M taihu
>>>>> -cpu 401100c4. Because after running the virtual machine, there warning
>>>>> shows up:
>>>>>
>>>>> Warning: hub port hub0port1 has no peer
>>>>> Warning: vlan 0 with no nics
>>>>> Warning: netdev hub0port1 has no peer
>>>>> Warning: requested NIC (anonymous, model ne2k_pci) was not created (not
>>>>> supported by this machine?)
>>>>>
>>>>> I read the QEMU Emulator User Documentation, it said the user can add
>>>>> attribute "-net nic, model=?" to get the list of available devices for
>>>>> the specific target.
>>>>> But it doesn't work.
>>>>>
>>>>> So what can I do for creating a NIC in ref405ep or taihu platform? Or if
>>>>> both of these platforms can't add NIC, what else platforms which runs
>>>>> with CPU powerpc 405 can add a NE2000 NIC or other network card?
>>>> It looks as if the 40x machine models don't spawn NICs according to the
>>>> -net configuration then. As mentioned in my earlier email, they aren't
>>>> actively developed anymore. Currently actively developed targets are:
>>>> e500plat, mpc8544ds, bamboo, prep, g3beige, mac99, pseries.
>>>>
>>>> You can try to spawn the ne2k device manually using -netdev and -device.
>>>> If the PCI adapter on the respective SoCs has been qdev'ified, that should
>>>> work despite the -net hickups.
>>>>
>>>> http://wiki.qemu.org/Documentation/Networking
>>>>
>>>>
>>>> Alex
>>> Sorry for the top post. From now, I will reply email from the end of the
>>> mail.
>>>
>>> I added attributes " -device ppc4xx-pcihost -device
>> This means that the machine doesn't spawn a PCI host controller. Does the
>> board even have PCI?
>>
>>> ne2k_pci -net tap".
>>>
>>> Two problems happened:
>>> 1. After running the emulator, I use telnet to monitor the VM. When I input
>>> the command "info qtree", the result is as following.
>>> QEMU 1.4.91 monitor - type 'help' for more information
>>> (qemu) info qtree
>>> bus: main-system-bus
>>> type System
>>> dev: ppc4xx-pcihost, id ""
>>> irq 4
>>> mmio ffffffffffffffff/0000000000800040
>>> bus: pci.0
>>> type PCI
>>> dev: ne2k_pci, id ""
>>> mac = 52:54:00:12:34:56
>>> vlan = <null>
>>> netdev = <null>
>>> bootindex = -1
>>> addr = 01.0
>>> romfile = "efi-ne2k_pci.rom"
>>> rombar = 1
>>> multifunction = off
>>> command_serr_enable = on
>>> class Ethernet controller, addr 00:01.0, pci id 10ec:8029 (sub
>>> 1af4:1100)
>>> bar 0: i/o at 0xffffffffffffffff [0xfe]
>>> bar 6: mem at 0xffffffffffffffff [0x3fffe]
>>> dev: ppc4xx-host-bridge, id ""
>>> addr = 00.0
>>> romfile = <null>
>>> rombar = 1
>>> multifunction = off
>>> command_serr_enable = on
>>> class Bridge, addr 00:00.0, pci id 1014:027f (sub 1af4:1100)
>>> dev: m48t59, id ""
>>> size = 8192
>>> model = 8
>>> io_base = 0x0
>>> irq 1
>>> mmio 00000000f0000000/0000000000002000
>>>
>>> And the result of "info mtree" is as following:
>>> (qemu) info mtree
>>> memory
>>> 0000000000000000-7ffffffffffffffe (prio 0, RW): system
>>> 0000000000000000-0000000007ffffff (prio 0, RW): sdram-containers
>>> 0000000000000000-0000000007ffffff (prio 0, RW): ef405ep.ram
>>> 00000000ef600000-00000000ef6000d3 (prio 0, RW): gpt
>>> 00000000ef600300-00000000ef600307 (prio 0, RW): serial
>>> 00000000ef600500-00000000ef600510 (prio 0, RW): i2c
>>> 00000000ef600600-00000000ef600601 (prio 0, RW): opba
>>> 00000000ef600700-00000000ef600737 (prio 0, RW): pgio
>>> 00000000f0000000-00000000f0001fff (prio 0, RW): m48t59.nvram
>>> 00000000f0300000-00000000f03000ff (prio 0, RW): fpga
>>> 00000000fff00000-00000000fff7ffff (prio 0, RW): ef405ep.sram
>>> 00000000fff80000-000000010017ffff (prio 0, R-): ef405ep.bios
>>> I/O
>>> 0000000000000000-000000000000ffff (prio 0, RW): io
>>> aliases
>>>
>>> Could you help me to find the base address of my NIC "ne2k_pci"?
>> The base address is defined through the BAR registers that your OS needs to
>> set up inside of the PCI host controller.
>>
>>> 2. Warning: vlan 0 with no nics
>>> Warning: nic ne2k_pci.0 has no peer
>>> Two warnings show when I ran the emulator.
>>> How can I fix these two warning?
>> Just pass -net none to qemu.
>>
>>
>> Alex
>>
> Since our embedded operating system is developed for Virtex 4 platform,
> so there is no PCI host controller right now. If the network card will
> not work in this architecture, I will try to implement a PCI host
> controller for the operating system.
>
> Then what's meaning of [0xfe] and {0x3fffe] in the PCI result?
>
> bar 0: i/o at 0xffffffffffffffff [0xfe]
> bar 6: mem at 0xffffffffffffffff [0x3fffe]
IIRC that's the length of the region. These should be the equivalent of the len
field being all ONEs.
Alex
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- Re: [Qemu-ppc] QEMU powerpc embedded architecture base address problem,
Alexander Graf <=