mmpfb.h 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. /*
  2. * linux/drivers/video/mmp/fb/mmpfb.h
  3. * Framebuffer driver for Marvell Display controller.
  4. *
  5. * Copyright (C) 2012 Marvell Technology Group Ltd.
  6. * Authors: Zhou Zhu <zzhu3@marvell.com>
  7. *
  8. * This program is free software; you can redistribute it and/or modify it
  9. * under the terms of the GNU General Public License as published by the
  10. * Free Software Foundation; either version 2 of the License, or (at your
  11. * option) any later version.
  12. *
  13. * This program is distributed in the hope that it will be useful, but WITHOUT
  14. * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  15. * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
  16. * more details.
  17. *
  18. * You should have received a copy of the GNU General Public License along with
  19. * this program. If not, see <http://www.gnu.org/licenses/>.
  20. *
  21. */
  22. #ifndef _MMP_FB_H_
  23. #define _MMP_FB_H_
  24. #include <video/mmp_disp.h>
  25. #include <linux/fb.h>
  26. /* LCD controller private state. */
  27. struct mmpfb_info {
  28. struct device *dev;
  29. int id;
  30. const char *name;
  31. struct fb_info *fb_info;
  32. /* basicaly videomode is for output */
  33. struct fb_videomode mode;
  34. int pix_fmt;
  35. void *fb_start;
  36. int fb_size;
  37. dma_addr_t fb_start_dma;
  38. struct mmp_overlay *overlay;
  39. struct mmp_path *path;
  40. struct mutex access_ok;
  41. unsigned int pseudo_palette[16];
  42. int output_fmt;
  43. };
  44. #define MMPFB_DEFAULT_SIZE (PAGE_ALIGN(1920 * 1080 * 4 * 2))
  45. #endif /* _MMP_FB_H_ */