|
@@ -97,11 +97,10 @@ notrace unsigned long __init early_init(unsigned long dt_ptr)
|
|
|
* We do the initial parsing of the flat device-tree and prepares
|
|
|
* for the MMU to be fully initialized.
|
|
|
*/
|
|
|
-extern unsigned int memset_nocache_branch; /* Insn to be replaced by NOP */
|
|
|
-
|
|
|
notrace void __init machine_init(u64 dt_ptr)
|
|
|
{
|
|
|
- unsigned int *addr = &memset_nocache_branch;
|
|
|
+ unsigned int *addr = (unsigned int *)((unsigned long)&patch__memset_nocache +
|
|
|
+ patch__memset_nocache);
|
|
|
unsigned long insn;
|
|
|
|
|
|
/* Configure static keys first, now that we're relocated. */
|
|
@@ -110,7 +109,7 @@ notrace void __init machine_init(u64 dt_ptr)
|
|
|
/* Enable early debugging if any specified (see udbg.h) */
|
|
|
udbg_early_init();
|
|
|
|
|
|
- patch_instruction((unsigned int *)&memcpy, PPC_INST_NOP);
|
|
|
+ patch_instruction_site(&patch__memcpy_nocache, PPC_INST_NOP);
|
|
|
|
|
|
insn = create_cond_branch(addr, branch_target(addr), 0x820000);
|
|
|
patch_instruction(addr, insn); /* replace b by bne cr0 */
|