debug-macro.S 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. /* arch/arm/mach-imx/include/mach/debug-macro.S
  2. *
  3. * Debugging macro include header
  4. *
  5. * Copyright (C) 1994-1999 Russell King
  6. * Moved from linux/arch/arm/kernel/debug.S by Ben Dooks
  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. #include <mach/hardware.h>
  14. #ifdef CONFIG_MACH_MX31ADS
  15. #include <mach/board-mx31ads.h>
  16. #endif
  17. #ifdef CONFIG_MACH_PCM037
  18. #include <mach/board-pcm037.h>
  19. #endif
  20. #ifdef CONFIG_MACH_MX31LITE
  21. #include <mach/board-mx31lite.h>
  22. #endif
  23. #ifdef CONFIG_MACH_MX27ADS
  24. #include <mach/board-mx27ads.h>
  25. #endif
  26. #ifdef CONFIG_MACH_PCM038
  27. #include <mach/board-pcm038.h>
  28. #endif
  29. #ifdef CONFIG_MACH_MX31_3DS
  30. #include <mach/board-mx31pdk.h>
  31. #endif
  32. .macro addruart,rx
  33. mrc p15, 0, \rx, c1, c0
  34. tst \rx, #1 @ MMU enabled?
  35. ldreq \rx, =MXC_LL_UART_PADDR @ physical
  36. ldrne \rx, =MXC_LL_UART_VADDR @ virtual
  37. .endm
  38. .macro senduart,rd,rx
  39. str \rd, [\rx, #0x40] @ TXDATA
  40. .endm
  41. .macro waituart,rd,rx
  42. .endm
  43. .macro busyuart,rd,rx
  44. 1002: ldr \rd, [\rx, #0x98] @ SR2
  45. tst \rd, #1 << 3 @ TXDC
  46. beq 1002b @ wait until transmit done
  47. .endm