[U-Boot] help - u-boot on powerpc qemu

hello,i am using u-boot on powerpc qemu,my u-boot version is u-boot-2016.01-rc2,i make uboot as below:
cd u-boot-2016.01-rc2 make clean make ARCH=powerpc CROSS_COMPILE=powerpc-linux-gnu- qemu-ppce500_defconfig make ARCH=powerpc CROSS_COMPILE=powerpc-linux-gnu-
then ,t execute u-boot bay qemu as below:
qemu-system-ppc -M ppce500 -serial stdio -kernel u-boot -m 1024
uboot show some msg as below:
U-Boot 2016.01-rc2 (Dec 13 2015 - 19:54:13 +0800)
CPU: Unknown, Version: 0.0, (0x00000000) Core: e500, Version: 3.0, (0x80210030) Clock Configuration: CPU0:400 MHz, CCB:400 MHz, DDR:200 MHz (400 MT/s data rate), LBC: unknown (LCRR[CLKDIV] = 0x00) L1: D-cache 32 KiB enabled I-cache 32 KiB enabled DRAM: 1 GiB L2: disabled Using default environment
PCI: base address e0008000 00:01.0 - 1af4:1000 - Network controller PCI1: Bus 00 - 00
In: serial Out: serial Err: serial Net: No ethernet found. Hit any key to stop autoboot: 0 WARNING: adjusting available memory to 30000000 Wrong Image Format for bootm command ERROR: can't get kernel image! =>
why no net card? can you help me?
thanks you!!!

2015-12-13 20:29 GMT+08:00 吴红青 hqwu@fiberhome.com.cn:
hello,i am using u-boot on powerpc qemu,my u-boot version is u-boot-2016.01-rc2,i make uboot as below:
cd u-boot-2016.01-rc2 make clean make ARCH=powerpc CROSS_COMPILE=powerpc-linux-gnu- qemu-ppce500_defconfig make ARCH=powerpc CROSS_COMPILE=powerpc-linux-gnu-
then ,t execute u-boot bay qemu as below:
qemu-system-ppc -M ppce500 -serial stdio -kernel u-boot -m 1024
uboot show some msg as below:
U-Boot 2016.01-rc2 (Dec 13 2015 - 19:54:13 +0800)
CPU: Unknown, Version: 0.0, (0x00000000) Core: e500, Version: 3.0, (0x80210030) Clock Configuration: CPU0:400 MHz, CCB:400 MHz, DDR:200 MHz (400 MT/s data rate), LBC: unknown (LCRR[CLKDIV] = 0x00) L1: D-cache 32 KiB enabled I-cache 32 KiB enabled DRAM: 1 GiB L2: disabled Using default environment
PCI: base address e0008000 00:01.0 - 1af4:1000 - Network controller PCI1: Bus 00 - 00
In: serial Out: serial Err: serial Net: No ethernet found. Hit any key to stop autoboot: 0 WARNING: adjusting available memory to 30000000 Wrong Image Format for bootm command ERROR: can't get kernel image! =>
why no net card? can you help me?
Because you didn't specify any emulated NIC in qemu command line.
Here's a link maybe you can refer:
https://www.suse.com/documentation/sles11/book_kvm/data/cha_qemu_running_net...
See the "Defining a Network Interface Card" section. The commonly used model with U-Boot should be e1000 or rtl8139 (rtl8139 is not converted to driver model though)
Miao
thanks you!!!
U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot

thank MiaoYan! i try to do something as you said ,now can found e1000-nic,but when i ping another ipaddr,an error msg show as below:
U-Boot 2016.01-rc2 (Dec 13 2015 - 21:06:24 +0800)
CPU: Unknown, Version: 0.0, (0x00000000) Core: e500, Version: 2.2, (0x80210022) Clock Configuration: CPU0:400 MHz, CCB:400 MHz, DDR:200 MHz (400 MT/s data rate), LBC: unknown (LCRR[CLKDIV] = 0x00) L1: D-cache 32 KiB enabled I-cache 32 KiB enabled DRAM: 1 GiB L2: disabled Using default environment
PCI: base address e0008000 00:01.0 - 8086:100e - Network controller PCI1: Bus 00 - 00
In: serial Out: serial Err: serial Net: e1000: 00:00:00:00:00:00 e1000#0 Error: e1000#0 address not set.
Hit any key to stop autoboot: 0 WARNING: adjusting available memory to 30000000 Wrong Image Format for bootm command ERROR: can't get kernel image! => setenv ipAddr 10.33.152.222 => ping 10.33.152.2 e1000: e1000#0: ERROR: Hardware Initialization Failed ping failed; host 10.33.152.2 is not alive =>
==============================================================================
在 2015年12月14日 10:23, Miao Yan 写道:
2015-12-13 20:29 GMT+08:00 吴红青 hqwu@fiberhome.com.cn:
hello,i am using u-boot on powerpc qemu,my u-boot version is u-boot-2016.01-rc2,i make uboot as below:
cd u-boot-2016.01-rc2 make clean make ARCH=powerpc CROSS_COMPILE=powerpc-linux-gnu- qemu-ppce500_defconfig make ARCH=powerpc CROSS_COMPILE=powerpc-linux-gnu-
then ,t execute u-boot bay qemu as below:
qemu-system-ppc -M ppce500 -serial stdio -kernel u-boot -m 1024
uboot show some msg as below:
U-Boot 2016.01-rc2 (Dec 13 2015 - 19:54:13 +0800)
CPU: Unknown, Version: 0.0, (0x00000000) Core: e500, Version: 3.0, (0x80210030) Clock Configuration: CPU0:400 MHz, CCB:400 MHz, DDR:200 MHz (400 MT/s data rate), LBC: unknown (LCRR[CLKDIV] = 0x00) L1: D-cache 32 KiB enabled I-cache 32 KiB enabled DRAM: 1 GiB L2: disabled Using default environment
PCI: base address e0008000 00:01.0 - 1af4:1000 - Network controller PCI1: Bus 00 - 00
In: serial Out: serial Err: serial Net: No ethernet found. Hit any key to stop autoboot: 0 WARNING: adjusting available memory to 30000000 Wrong Image Format for bootm command ERROR: can't get kernel image! =>
why no net card? can you help me?
Because you didn't specify any emulated NIC in qemu command line.
Here's a link maybe you can refer:
https://www.suse.com/documentation/sles11/book_kvm/data/cha_qemu_running_net...
See the "Defining a Network Interface Card" section. The commonly used model with U-Boot should be e1000 or rtl8139 (rtl8139 is not converted to driver model though)
Miao
thanks you!!!
U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot

2015-12-18 9:12 GMT+08:00 吴红青 hqwu@fiberhome.com.cn:
thank MiaoYan! i try to do something as you said ,now can found e1000-nic,but when i ping another ipaddr,an error msg show as below:
I tried this today and could reproduce the error.
U-Boot 2016.01-rc2 (Dec 13 2015 - 21:06:24 +0800)
CPU: Unknown, Version: 0.0, (0x00000000) Core: e500, Version: 2.2, (0x80210022) Clock Configuration: CPU0:400 MHz, CCB:400 MHz, DDR:200 MHz (400 MT/s data rate), LBC: unknown (LCRR[CLKDIV] = 0x00) L1: D-cache 32 KiB enabled I-cache 32 KiB enabled DRAM: 1 GiB L2: disabled Using default environment
PCI: base address e0008000 00:01.0 - 8086:100e - Network controller PCI1: Bus 00 - 00
In: serial Out: serial Err: serial Net: e1000: 00:00:00:00:00:00 e1000#0 Error: e1000#0 address not set.
Hit any key to stop autoboot: 0 WARNING: adjusting available memory to 30000000 Wrong Image Format for bootm command ERROR: can't get kernel image! => setenv ipAddr 10.33.152.222 => ping 10.33.152.2 e1000: e1000#0: ERROR: Hardware Initialization Failed
This is because e1000 pci configuration space is not properly programmed:
=> pci Scanning PCI devices on bus 0 BusDevFun VendorId DeviceId Device Class Sub-Class _____________________________________________________________ 00.01.00 0x8086 0x100e Network controller 0x00 => pci display 00.01.00 00000000: 100e8086 00000006 02000003 00000008 00000010: 00000000 00000001 00000000 00000000 00000020: 00000000 00000000 00000000 11001af4 00000030: 00040000 00000000 00000000 00000100 =>
Look at offset 0x10 which is BAR0, all zero is not a valid pci address which causes the error when e1000 driver tries to remap it.
It seems U-boot writes address larger than 4GB (the physical address is taken from device tree prepared by qemu and the board enables 36bit addressing) to bar0 while e1000 only supports 32bit pci bar, which result in 0 being written and the upper 32bit address is omitted.
So include the maintainer here for more info.
Note there is another bug in e1000 driver that will hang in BE target, I will send a separate patch to fix that.
ping failed; host 10.33.152.2 is not alive =>
==============================================================================
在 2015年12月14日 10:23, Miao Yan 写道:
2015-12-13 20:29 GMT+08:00 吴红青 hqwu@fiberhome.com.cn:
hello,i am using u-boot on powerpc qemu,my u-boot version is u-boot-2016.01-rc2,i make uboot as below:
cd u-boot-2016.01-rc2 make clean make ARCH=powerpc CROSS_COMPILE=powerpc-linux-gnu- qemu-ppce500_defconfig make ARCH=powerpc CROSS_COMPILE=powerpc-linux-gnu-
then ,t execute u-boot bay qemu as below:
qemu-system-ppc -M ppce500 -serial stdio -kernel u-boot -m 1024
uboot show some msg as below:
U-Boot 2016.01-rc2 (Dec 13 2015 - 19:54:13 +0800)
CPU: Unknown, Version: 0.0, (0x00000000) Core: e500, Version: 3.0, (0x80210030) Clock Configuration: CPU0:400 MHz, CCB:400 MHz, DDR:200 MHz (400 MT/s data rate), LBC: unknown (LCRR[CLKDIV] = 0x00) L1: D-cache 32 KiB enabled I-cache 32 KiB enabled DRAM: 1 GiB L2: disabled Using default environment
PCI: base address e0008000 00:01.0 - 1af4:1000 - Network controller PCI1: Bus 00 - 00
In: serial Out: serial Err: serial Net: No ethernet found. Hit any key to stop autoboot: 0 WARNING: adjusting available memory to 30000000 Wrong Image Format for bootm command ERROR: can't get kernel image! =>
why no net card? can you help me?
Because you didn't specify any emulated NIC in qemu command line.
Here's a link maybe you can refer:
https://www.suse.com/documentation/sles11/book_kvm/data/cha_qemu_running_net...
See the "Defining a Network Interface Card" section. The commonly used model with U-Boot should be e1000 or rtl8139 (rtl8139 is not converted to driver model though)
Miao
thanks you!!!
U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
participants (2)
-
Miao Yan
-
吴红青