fb.h 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. /* linux/include/asm-arm/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. #ifndef __ASM_ARM_FB_H
  12. #define __ASM_ARM_FB_H
  13. #include <asm/arch/regs-lcd.h>
  14. struct s3c2410fb_val {
  15. unsigned int defval;
  16. unsigned int min;
  17. unsigned int max;
  18. };
  19. struct s3c2410fb_hw {
  20. unsigned long lcdcon1;
  21. unsigned long lcdcon2;
  22. unsigned long lcdcon3;
  23. unsigned long lcdcon4;
  24. unsigned long lcdcon5;
  25. };
  26. struct s3c2410fb_mach_info {
  27. unsigned char fixed_syncs; /* do not update sync/border */
  28. /* Screen size */
  29. int width;
  30. int height;
  31. /* Screen info */
  32. struct s3c2410fb_val xres;
  33. struct s3c2410fb_val yres;
  34. struct s3c2410fb_val bpp;
  35. /* lcd configuration registers */
  36. struct s3c2410fb_hw regs;
  37. /* GPIOs */
  38. unsigned long gpcup;
  39. unsigned long gpcup_mask;
  40. unsigned long gpccon;
  41. unsigned long gpccon_mask;
  42. unsigned long gpdup;
  43. unsigned long gpdup_mask;
  44. unsigned long gpdcon;
  45. unsigned long gpdcon_mask;
  46. /* lpc3600 control register */
  47. unsigned long lpcsel;
  48. };
  49. extern void __init s3c24xx_fb_set_platdata(struct s3c2410fb_mach_info *);
  50. #endif /* __ASM_ARM_FB_H */