Code/Resource
Windows Develop
Linux-Unix program
Internet-Socket-Network
Web Server
Browser Client
Ftp Server
Ftp Client
Browser Plugins
Proxy Server
Email Server
Email Client
WEB Mail
Firewall-Security
Telnet Server
Telnet Client
ICQ-IM-Chat
Search Engine
Sniffer Package capture
Remote Control
xml-soap-webservice
P2P
WEB(ASP,PHP,...)
TCP/IP Stack
SNMP
Grid Computing
SilverLight
DNS
Cluster Service
Network Security
Communication-Mobile
Game Program
Editor
Multimedia program
Graph program
Compiler program
Compress-Decompress algrithms
Crypt_Decrypt algrithms
Mathimatics-Numerical algorithms
MultiLanguage
Disk/Storage
Java Develop
assembly language
Applications
Other systems
Database system
Embeded-SCM Develop
FlashMX/Flex
source in ebook
Delphi VCL
OS Develop
MiddleWare
MPI
MacOS develop
LabView
ELanguage
Software/Tools
E-Books
Artical/Document
debug-armo.S
Package: linux-2.4.20.tar.gz [view]
Upload User: jlfgdled
Upload Date: 2013-04-10
Package Size: 33168k
Code Size: 1k
Category:
Linux-Unix program
Development Platform:
Unix_Linux
- /*
- * linux/arch/arm/kernel/debug-armo.S
- *
- * Copyright (C) 1999 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.
- *
- * 26-bit debugging code
- */
- #include <linux/linkage.h>
- .macro addruart,rx
- mov rx, #0x03000000
- orr rx, rx, #0x00010000
- orr rx, rx, #0x00000fe0
- .endm
- .macro senduart,rd,rx
- strb rd, [rx]
- .endm
- .macro busyuart,rd,rx
- 1002: ldrb rd, [rx, #0x14]
- and rd, rd, #0x60
- teq rd, #0x60
- bne 1002b
- .endm
- .macro waituart,rd,rx
- 1001: ldrb rd, [rx, #0x18]
- tst rd, #0x10
- beq 1001b
- .endm
- .text
- /*
- * Useful debugging routines
- */
- ENTRY(printhex8)
- mov r1, #8
- b printhex
- ENTRY(printhex4)
- mov r1, #4
- b printhex
- ENTRY(printhex2)
- mov r1, #2
- printhex: ldr r2, =hexbuf
- add r3, r2, r1
- mov r1, #0
- strb r1, [r3]
- 1: and r1, r0, #15
- mov r0, r0, lsr #4
- cmp r1, #10
- addlt r1, r1, #'0'
- addge r1, r1, #'a' - 10
- strb r1, [r3, #-1]!
- teq r3, r2
- bne 1b
- mov r0, r2
- b printascii
- .ltorg
- ENTRY(printascii)
- addruart r3
- b 2f
- 1: waituart r2, r3
- senduart r1, r3
- busyuart r2, r3
- teq r1, #'n'
- moveq r1, #'r'
- beq 1b
- 2: teq r0, #0
- ldrneb r1, [r0], #1
- teqne r1, #0
- bne 1b
- mov pc, lr
- ENTRY(printch)
- addruart r3
- mov r1, r0
- mov r0, #0
- b 1b
- .bss
- hexbuf: .space 16