fb.h 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. /* linux/include/asm/arch-s3c2410/fb.h
  2. *
  3. * Copyright (c) 2004 Arnaud Patard <arnaud.patard@rtp-net.org>
  4. *
  5. * Inspired by pxafb.h
  6. *
  7. * This program is free software; you can redistribute it and/or modify
  8. * it under the terms of the GNU General Public License version 2 as
  9. * published by the Free Software Foundation.
  10. *
  11. *
  12. * Changelog:
  13. * 07-Sep-2004 RTP Created file
  14. * 03-Nov-2004 BJD Updated and minor cleanups
  15. * 03-Aug-2005 RTP Renamed to fb.h
  16. * 26-Oct-2005 BJD Changed name of platdata init
  17. */
  18. #ifndef __ASM_ARM_FB_H
  19. #define __ASM_ARM_FB_H
  20. #include <asm/arch/regs-lcd.h>
  21. struct s3c2410fb_val {
  22. unsigned int defval;
  23. unsigned int min;
  24. unsigned int max;
  25. };
  26. struct s3c2410fb_hw {
  27. unsigned long lcdcon1;
  28. unsigned long lcdcon2;
  29. unsigned long lcdcon3;
  30. unsigned long lcdcon4;
  31. unsigned long lcdcon5;
  32. };
  33. struct s3c2410fb_mach_info {
  34. unsigned char fixed_syncs; /* do not update sync/border */
  35. /* Screen size */
  36. int width;
  37. int height;
  38. /* Screen info */
  39. struct s3c2410fb_val xres;
  40. struct s3c2410fb_val yres;
  41. struct s3c2410fb_val bpp;
  42. /* lcd configuration registers */
  43. struct s3c2410fb_hw regs;
  44. /* GPIOs */
  45. unsigned long gpcup;
  46. unsigned long gpcup_mask;
  47. unsigned long gpccon;
  48. unsigned long gpccon_mask;
  49. unsigned long gpdup;
  50. unsigned long gpdup_mask;
  51. unsigned long gpdcon;
  52. unsigned long gpdcon_mask;
  53. /* lpc3600 control register */
  54. unsigned long lpcsel;
  55. };
  56. extern void __init s3c24xx_fb_set_platdata(struct s3c2410fb_mach_info *);
  57. #endif /* __ASM_ARM_FB_H */