Hi, Sebastian, >From: Sebastian Andrzej Siewior <bigeasy at linutronix.de>
>The relocate_new_kernel() code usually disables the MMU and the small code >operates on physicall pages while moving the kernel to its final position. >Book-E doesn't support this so a 1:1 mapping must be created. >This patch adds support for FSL-BOOK-E implementation. >Signed-off-by: Sebastian Andrzej Siewior <bigeasy at linutronix.de> >+ xori r6,r4,1 /* Setup TMP mapping in the other >Address space */ >+ slwi r6,r6,12 >+ oris r6,r6,(MAS1_VALID|MAS1_IPROT)@h >+ ori r6,r6,(MAS1_TSIZE(BOOKE_PAGESZ_1GB))@l >+ mtspr SPRN_MAS1,r6 >......... >+ /* find our address */ >+ addi r7, r30, final_copy_code - relocate_new_kernel >+ >+ mtspr SPRN_SRR0,r7 >+ mtspr SPRN_SRR1,r6 >+ rfi ............................................................................................................................................ In your patch of Booke support for kexec , it setup a 1GB TMP mapping and jump to it. But I saw that, the max size for an e500 entry is 256M,so I changed your code to setup 4*256M entries, and it works well on mpc8541. Howerver,it didn't work on mpc8548(e500 v2) and P2020ds(SMP,e500 v2) , and 'rfi' to final_copy_code failed.(I also setup a 1:1 mapping for serial ,so I can trap the flowchart in relocate_new_kernel) Any suggestions about this ? Thank you very much. regards, wilbur _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev