On 07/10/2013 06:00 PM, Stefani Seibold wrote: > Am Mittwoch, den 10.07.2013, 16:48 +0800 schrieb tiejun.chen: >> On 07/10/2013 04:39 PM, Stefani Seibold wrote: >>> Hi, >>> >>> i have tried to kexec a 32 bit kernel on a Freescale P2020 dual core CPU >>> (e500v2, revison 5.1 - pvr 8021 1051), but Kexec will hang after the >>> "Bye!". >>> >>> The host and the kexec kernel are the same, based on the current kernel >>> version 3.10. >>> >>> I have tried it with kexec-tools 2.0.4.git released 30 June 2013. >>> >>> Invoking kexec with >>> >>> kexec --command-line "1 maxcpus=1 noirqdistrib reset_devices $(cat /proc/cmdline)" -t elf-ppc --dtb=rs2020.dtb \ >>> --reuse-node="/cpus/PowerPC,P2020 at 0/timebase-frequency" \ >>> --reuse-node="/cpus/PowerPC,P2020 at 0/bus-frequency" \ >>> --reuse-node="/cpus/PowerPC,P2020 at 0/clock-frequency" \ >>> --reuse-node="/cpus/PowerPC,P2020 at 0/next-level-cache" \ >>> --reuse-node="/cpus/PowerPC,P2020 at 1/timebase-frequency" \ >>> --reuse-node="/cpus/PowerPC,P2020 at 1/bus-frequency" \ >>> --reuse-node="/cpus/PowerPC,P2020 at 1/clock-frequency" \ >>> --reuse-node="/cpus/PowerPC,P2020 at 1/next-level-cache" \ >>> --reuse-node="/cpus/PowerPC,P2020 at 1/cpu-release-addr" \ >>> --reuse-node="/cpus/PowerPC,P2020 at 1/enable-method" \ >>> --reuse-node="/soc at ffe00000/bus-frequency" \ >>> --reuse-node="/soc at ffe00000/serial at 4500/clock-frequency" \ >>> --reuse-node="/soc at ffe00000/ethernet at 24000/local-mac-address" \ >>> -d -l -x vmlinux >>> kexec -e >> >> Could you try again with one simple command like, >> >> kexec -l vmlinux --append="`cat /proc/cmdline`";kexec -e >> > > Great, this works. > > I did more test and the issue for the fail is the passing of the device > tree. But the device tree is exact the same as the previous used one. > > Is passing a new device tree not allowed? No, I think this is not interdicted. I suspect you probably don't pass a proper dtb, so you can take a further test to figure out this problem. For example, in the u-boot prompt, you can use the fdt command to get last dtb after that board setup from u-boot, then pass that directly to try. Tiejun