
On 11/06/2016 06:21 PM, Alison Wang wrote:
[Alison Wang] Thanks for all your comments.
For the issue about the tree would not be bisect-able, I have a solution. Actually it is the root cause that 64-bit kernel could not boot up when U-Boot is running in EL2. I will move these codes from the third patch to the first patch.
ENTRY(armv8_switch_to_el2) switch_el x5, 1f, 0f, 0f -0: ret
/*
* x3 is kernel entry point or switch_to_el1
* if CONFIG_ARMV8_SWITCH_TO_EL1 is defined.
I guess you meant EL2 here.
* When running in EL2 now, jump to the
* address saved in x3.
*/
+0: br x3 1: armv8_switch_to_el2_m x3, x4, x5 ENDPROC(armv8_switch_to_el2)
ENTRY(armv8_switch_to_el1) switch_el x5, 0f, 1f, 0f -0: ret
/*
* x3 is kernel entry point. When running in EL1
* now, jump to the address saved in x3.
*/
+0: br x3 1: armv8_switch_to_el1_m x3, x4, x5 ENDPROC(armv8_switch_to_el1)
With this re-order, the bitsect issue will be fixed and there is not a point that kernel could not boot up.
If you all agree with this re-order, I will send out the v8 patch includes the first, second and third patches.
Would it be a good idea to setup the simulator and verify booting process?
York