head.S (686B)
1/* SPDX-License-Identifier: GPL-2.0 */ 2 3#include <linux/linkage.h> 4#include <linux/init.h> 5#include <asm/page.h> 6#include <abi/entry.h> 7 8__HEAD 9ENTRY(_start) 10 SETUP_MMU 11 12 /* set stack point */ 13 lrw r6, init_thread_union + THREAD_SIZE 14 mov sp, r6 15 16 jmpi csky_start 17END(_start) 18 19#ifdef CONFIG_SMP 20.align 10 21ENTRY(_start_smp_secondary) 22 SETUP_MMU 23 24#ifdef CONFIG_PAGE_OFFSET_80000000 25 lrw r6, secondary_msa1 26 ld.w r6, (r6, 0) 27 mtcr r6, cr<31, 15> 28#endif 29 30 lrw r6, secondary_pgd 31 ld.w r6, (r6, 0) 32 mtcr r6, cr<28, 15> 33 mtcr r6, cr<29, 15> 34 35 /* set stack point */ 36 lrw r6, secondary_stack 37 ld.w r6, (r6, 0) 38 mov sp, r6 39 40 jmpi csky_start_secondary 41END(_start_smp_secondary) 42#endif