mirror of https://gitee.com/openkylin/linux.git
45 lines
913 B
C
45 lines
913 B
C
/*
|
|
* linux/include/asm-arm/arch-ebsa110/uncompress.h
|
|
*
|
|
* Copyright (C) 1996,1997,1998 Russell King
|
|
*
|
|
* This program is free software; you can redistribute it and/or modify
|
|
* it under the terms of the GNU General Public License version 2 as
|
|
* published by the Free Software Foundation.
|
|
*/
|
|
|
|
/*
|
|
* This does not append a newline
|
|
*/
|
|
static void putstr(const char *s)
|
|
{
|
|
unsigned long tmp1, tmp2;
|
|
__asm__ __volatile__(
|
|
"ldrb %0, [%2], #1\n"
|
|
" teq %0, #0\n"
|
|
" beq 3f\n"
|
|
"1: strb %0, [%3]\n"
|
|
"2: ldrb %1, [%3, #0x14]\n"
|
|
" and %1, %1, #0x60\n"
|
|
" teq %1, #0x60\n"
|
|
" bne 2b\n"
|
|
" teq %0, #'\n'\n"
|
|
" moveq %0, #'\r'\n"
|
|
" beq 1b\n"
|
|
" ldrb %0, [%2], #1\n"
|
|
" teq %0, #0\n"
|
|
" bne 1b\n"
|
|
"3: ldrb %1, [%3, #0x14]\n"
|
|
" and %1, %1, #0x60\n"
|
|
" teq %1, #0x60\n"
|
|
" bne 3b"
|
|
: "=&r" (tmp1), "=&r" (tmp2)
|
|
: "r" (s), "r" (0xf0000be0) : "cc");
|
|
}
|
|
|
|
/*
|
|
* nothing to do
|
|
*/
|
|
#define arch_decomp_setup()
|
|
#define arch_decomp_wdog()
|