debug-macro.S 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  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. #ifdef CONFIG_MACH_QONG
  33. #include <mach/board-qong.h>
  34. #endif
  35. .macro addruart,rx
  36. mrc p15, 0, \rx, c1, c0
  37. tst \rx, #1 @ MMU enabled?
  38. ldreq \rx, =MXC_LL_UART_PADDR @ physical
  39. ldrne \rx, =MXC_LL_UART_VADDR @ virtual
  40. .endm
  41. .macro senduart,rd,rx
  42. str \rd, [\rx, #0x40] @ TXDATA
  43. .endm
  44. .macro waituart,rd,rx
  45. .endm
  46. .macro busyuart,rd,rx
  47. 1002: ldr \rd, [\rx, #0x98] @ SR2
  48. tst \rd, #1 << 3 @ TXDC
  49. beq 1002b @ wait until transmit done
  50. .endm