1/* arch/arm/mach-s3c6400/include/mach/debug-macro.S 2 * 3 * Copyright 2008 Openmoko, Inc. 4 * Copyright 2008 Simtec Electronics 5 * http://armlinux.simtec.co.uk/ 6 * Ben Dooks <ben@simtec.co.uk> 7 * 8 * This program is free software; you can redistribute it and/or modify 9 * it under the terms of the GNU General Public License version 2 as 10 * published by the Free Software Foundation. 11*/ 12 13/* pull in the relevant register and map files. */ 14 15#include <mach/map.h> 16#include <plat/regs-serial.h> 17 18 /* note, for the boot process to work we have to keep the UART 19 * virtual address aligned to an 1MiB boundary for the L1 20 * mapping the head code makes. We keep the UART virtual address 21 * aligned and add in the offset when we load the value here. 22 */ 23 24 .macro addruart, rx, rtmp 25 mrc p15, 0, \rx, c1, c0 26 tst \rx, #1 27 ldreq \rx, = S3C_PA_UART 28 ldrne \rx, = (S3C_VA_UART + S3C_PA_UART & 0xfffff) 29#if CONFIG_DEBUG_S3C_UART != 0 30 add \rx, \rx, #(0x400 * CONFIG_DEBUG_S3C_UART) 31#endif 32 .endm 33 34/* include the reset of the code which will do the work, we're only 35 * compiling for a single cpu processor type so the default of s3c2440 36 * will be fine with us. 37 */ 38 39#include <plat/debug-macro.S> 40