home *** CD-ROM | disk | FTP | other *** search
/ PC Welt 2006 November (DVD) / PCWELT_11_2006.ISO / casper / filesystem.squashfs / usr / src / linux-headers-2.6.17-6 / include / asm-arm / arch-imx / uncompress.h < prev    next >
Encoding:
C/C++ Source or Header  |  2006-08-11  |  1.8 KB  |  72 lines

  1. /*
  2.  *  linux/include/asm-arm/arch-imxads/uncompress.h
  3.  *
  4.  *
  5.  *
  6.  *  Copyright (C) 1999 ARM Limited
  7.  *  Copyright (C) Shane Nay (shane@minirl.com)
  8.  *
  9.  * This program is free software; you can redistribute it and/or modify
  10.  * it under the terms of the GNU General Public License as published by
  11.  * the Free Software Foundation; either version 2 of the License, or
  12.  * (at your option) any later version.
  13.  *
  14.  * This program is distributed in the hope that it will be useful,
  15.  * but WITHOUT ANY WARRANTY; without even the implied warranty of
  16.  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  17.  * GNU General Public License for more details.
  18.  *
  19.  * You should have received a copy of the GNU General Public License
  20.  * along with this program; if not, write to the Free Software
  21.  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
  22.  */
  23.  
  24. #define UART(x) (*(volatile unsigned long *)(serial_port + (x)))
  25.  
  26. #define UART1_BASE 0x206000
  27. #define UART2_BASE 0x207000
  28. #define USR2 0x98
  29. #define USR2_TXFE (1<<14)
  30. #define TXR  0x40
  31. #define UCR1 0x80
  32. #define UCR1_UARTEN 1
  33.  
  34. /*
  35.  * The following code assumes the serial port has already been
  36.  * initialized by the bootloader.  We search for the first enabled
  37.  * port in the most probable order.  If you didn't setup a port in
  38.  * your bootloader then nothing will appear (which might be desired).
  39.  *
  40.  * This does not append a newline
  41.  */
  42. static void putc(int c)
  43. {
  44.     unsigned long serial_port;
  45.  
  46.     do {
  47.         serial_port = UART1_BASE;
  48.         if ( UART(UCR1) & UCR1_UARTEN )
  49.             break;
  50.         serial_port = UART2_BASE;
  51.         if ( UART(UCR1) & UCR1_UARTEN )
  52.             break;
  53.         return;
  54.     } while(0);
  55.  
  56.     while (!(UART(USR2) & USR2_TXFE))
  57.         barrier();
  58.  
  59.     UART(TXR) = c;
  60. }
  61.  
  62. static inline void flush(void)
  63. {
  64. }
  65.  
  66. /*
  67.  * nothing to do
  68.  */
  69. #define arch_decomp_setup()
  70.  
  71. #define arch_decomp_wdog()
  72.