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-pxa / ssp.h < prev    next >
Encoding:
C/C++ Source or Header  |  2006-08-11  |  1.3 KB  |  54 lines

  1. /*
  2.  *  ssp.h
  3.  *
  4.  *  Copyright (C) 2003 Russell King, All Rights Reserved.
  5.  *
  6.  * This program is free software; you can redistribute it and/or modify
  7.  * it under the terms of the GNU General Public License version 2 as
  8.  * published by the Free Software Foundation.
  9.  *
  10.  * This driver supports the following PXA CPU/SSP ports:-
  11.  *
  12.  *       PXA250     SSP
  13.  *       PXA255     SSP, NSSP
  14.  *       PXA26x     SSP, NSSP, ASSP
  15.  *       PXA27x     SSP1, SSP2, SSP3
  16.  */
  17.  
  18. #ifndef SSP_H
  19. #define SSP_H
  20.  
  21. /*
  22.  * SSP initialisation flags
  23.  */
  24. #define SSP_NO_IRQ    0x1        /* don't register an irq handler in SSP driver */
  25.  
  26. struct ssp_state {
  27.     u32    cr0;
  28.     u32 cr1;
  29.     u32 to;
  30.     u32 psp;
  31. };
  32.  
  33. struct ssp_dev {
  34.     u32 port;
  35.     u32 mode;
  36.     u32 flags;
  37.     u32 psp_flags;
  38.     u32 speed;
  39.     int irq;
  40. };
  41.  
  42. int ssp_write_word(struct ssp_dev *dev, u32 data);
  43. int ssp_read_word(struct ssp_dev *dev);
  44. void ssp_flush(struct ssp_dev *dev);
  45. void ssp_enable(struct ssp_dev *dev);
  46. void ssp_disable(struct ssp_dev *dev);
  47. void ssp_save_state(struct ssp_dev *dev, struct ssp_state *ssp);
  48. void ssp_restore_state(struct ssp_dev *dev, struct ssp_state *ssp);
  49. int ssp_init(struct ssp_dev *dev, u32 port, u32 init_flags);
  50. int ssp_config(struct ssp_dev *dev, u32 mode, u32 flags, u32 psp_flags, u32 speed);
  51. void ssp_exit(struct ssp_dev *dev);
  52.  
  53. #endif
  54.