Path: blob/master/arch/arm/boot/compressed/head-shmobile.S
10819 views
/*1* The head-file for SH-Mobile ARM platforms2*3* Kuninori Morimoto <[email protected]>4* Simon Horman <[email protected]>5*6* This program is free software; you can redistribute it and/or modify7* it under the terms of the GNU General Public License as published by8* the Free Software Foundation; version 2 of the License.9*10* This program is distributed in the hope that it will be useful,11* but WITHOUT ANY WARRANTY; without even the implied warranty of12* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the13* GNU General Public License for more details.14*15* You should have received a copy of the GNU General Public License16* along with this program; if not, write to the Free Software17* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA18*/1920#ifdef CONFIG_ZBOOT_ROM2122.section ".start", "ax"2324/* load board-specific initialization code */25#include <mach/zboot.h>2627#ifdef CONFIG_ZBOOT_ROM_MMCIF28/* Load image from MMC */29adr sp, __tmp_stack + 12830ldr r0, __image_start31ldr r1, __image_end32subs r1, r1, r033ldr r0, __load_base34bl mmcif_loader3536/* Jump to loaded code */37ldr r0, __loaded38ldr r1, __image_start39sub r0, r0, r140ldr r1, __load_base41add pc, r0, r14243__image_start:44.long _start45__image_end:46.long _got_end47__load_base:48.long CONFIG_MEMORY_START + 0x02000000 @ Load at 32Mb into SDRAM49__loaded:50.long __continue51.align52__tmp_stack:53.space 12854__continue:55#endif /* CONFIG_ZBOOT_ROM_MMCIF */5657b 1f58__atags:@ tag #159.long 12 @ tag->hdr.size = tag_size(tag_core);60.long 0x54410001 @ tag->hdr.tag = ATAG_CORE;61.long 0 @ tag->u.core.flags = 0;62.long 0 @ tag->u.core.pagesize = 0;63.long 0 @ tag->u.core.rootdev = 0;64@ tag #265.long 8 @ tag->hdr.size = tag_size(tag_mem32);66.long 0x54410002 @ tag->hdr.tag = ATAG_MEM;67.long CONFIG_MEMORY_SIZE @ tag->u.mem.size = CONFIG_MEMORY_SIZE;68.long CONFIG_MEMORY_START @ @ tag->u.mem.start = CONFIG_MEMORY_START;69@ tag #370.long 0 @ tag->hdr.size = 071.long 0 @ tag->hdr.tag = ATAG_NONE;721:7374/* Set board ID necessary for boot */75ldr r7, 1f @ Set machine type register76adr r8, __atags @ Set atag register77b 2f78791 : .long MACH_TYPE802 :8182#endif /* CONFIG_ZBOOT_ROM */838485