uncompress.h 888 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. /*
  2. * arch/arm/mach-l7200/include/mach/uncompress.h
  3. *
  4. * Copyright (C) 2000 Steve Hill (sjhill@cotw.com)
  5. *
  6. * Changelog:
  7. * 05-01-2000 SJH Created
  8. * 05-13-2000 SJH Filled in function bodies
  9. * 07-26-2000 SJH Removed hard coded baud rate
  10. */
  11. #include <mach/hardware.h>
  12. #define IO_UART IO_START + 0x00044000
  13. #define __raw_writeb(v,p) (*(volatile unsigned char *)(p) = (v))
  14. #define __raw_readb(p) (*(volatile unsigned char *)(p))
  15. static inline void putc(int c)
  16. {
  17. while(__raw_readb(IO_UART + 0x18) & 0x20 ||
  18. __raw_readb(IO_UART + 0x18) & 0x08)
  19. barrier();
  20. __raw_writeb(c, IO_UART + 0x00);
  21. }
  22. static inline void flush(void)
  23. {
  24. }
  25. static __inline__ void arch_decomp_setup(void)
  26. {
  27. __raw_writeb(0x00, IO_UART + 0x08); /* Set HSB */
  28. __raw_writeb(0x00, IO_UART + 0x20); /* Disable IRQs */
  29. __raw_writeb(0x01, IO_UART + 0x14); /* Enable UART */
  30. }
  31. #define arch_decomp_wdog()