s3c24xx.S 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. /* arch/arm/mach-s3c2410/include/mach/debug-macro.S
  2. *
  3. * Debugging macro include header
  4. *
  5. * Copyright (C) 1994-1999 Russell King
  6. * Copyright (C) 2005 Simtec Electronics
  7. *
  8. * Moved from linux/arch/arm/kernel/debug.S by Ben Dooks
  9. *
  10. * This program is free software; you can redistribute it and/or modify
  11. * it under the terms of the GNU General Public License version 2 as
  12. * published by the Free Software Foundation.
  13. */
  14. #include <linux/serial_s3c.h>
  15. #define S3C2410_UART1_OFF (0x4000)
  16. .macro addruart, rp, rv, tmp
  17. ldr \rp, = CONFIG_DEBUG_UART_PHYS
  18. ldr \rv, = CONFIG_DEBUG_UART_VIRT
  19. .endm
  20. .macro fifo_full_s3c2410 rd, rx
  21. ldr \rd, [\rx, # S3C2410_UFSTAT]
  22. tst \rd, #S3C2410_UFSTAT_TXFULL
  23. .endm
  24. .macro fifo_level_s3c2410 rd, rx
  25. ldr \rd, [\rx, # S3C2410_UFSTAT]
  26. and \rd, \rd, #S3C2410_UFSTAT_TXMASK
  27. .endm
  28. /* Select the correct implementation depending on the configuration. The
  29. * S3C2440 will get selected by default, as these are the most widely
  30. * used variants of these
  31. */
  32. #if defined(CONFIG_DEBUG_S3C2410_UART)
  33. #define fifo_full fifo_full_s3c2410
  34. #define fifo_level fifo_level_s3c2410
  35. #endif
  36. /* include the reset of the code which will do the work */
  37. #include <debug/samsung.S>