sa1100fb.h 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. /*
  2. * StrongARM 1100 LCD Controller Frame Buffer Device
  3. *
  4. * Copyright (C) 1999 Eric A. Thomas
  5. * Based on acornfb.c Copyright (C) Russell King.
  6. *
  7. * This file is subject to the terms and conditions of the GNU General Public
  8. * License. See the file COPYING in the main directory of this archive
  9. * for more details.
  10. */
  11. #ifndef _VIDEO_SA1100FB_H
  12. #define _VIDEO_SA1100FB_H
  13. #include <linux/fb.h>
  14. #include <linux/types.h>
  15. #define RGB_4 0
  16. #define RGB_8 1
  17. #define RGB_16 2
  18. #define NR_RGB 3
  19. /* These are the bitfields for each display depth that we support. */
  20. struct sa1100fb_rgb {
  21. struct fb_bitfield red;
  22. struct fb_bitfield green;
  23. struct fb_bitfield blue;
  24. struct fb_bitfield transp;
  25. };
  26. /* This structure describes the machine which we are running on. */
  27. struct sa1100fb_mach_info {
  28. u_long pixclock;
  29. u_short xres;
  30. u_short yres;
  31. u_char bpp;
  32. u_char hsync_len;
  33. u_char left_margin;
  34. u_char right_margin;
  35. u_char vsync_len;
  36. u_char upper_margin;
  37. u_char lower_margin;
  38. u_char sync;
  39. u_int cmap_greyscale:1,
  40. cmap_inverse:1,
  41. cmap_static:1,
  42. unused:29;
  43. u_int lccr0;
  44. u_int lccr3;
  45. /* Overrides for the default RGB maps */
  46. const struct sa1100fb_rgb *rgb[NR_RGB];
  47. void (*backlight_power)(int);
  48. void (*lcd_power)(int);
  49. void (*set_visual)(u32);
  50. };
  51. #endif