sam3u LCD driver is code complete (but untested)

git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@2619 42af7a65-404d-4744-a932-0658087f49c3
This commit is contained in:
patacongo
2010-04-20 02:20:42 +00:00
parent 734fcb88a5
commit fead704f62
8 changed files with 552 additions and 39 deletions
+5 -2
View File
@@ -490,7 +490,10 @@ EXTERN void fb_uninitialize(void);
* If an architecture supports a parallel or serial LCD, then it must
* provide APIs to access the LCD as follows:
*
* up_lcdinitialize - Initialize the LCD video hardware
* up_lcdinitialize - Initialize the LCD video hardware. The initial
* state of the LCD is fully initialized, display
* memory cleared, and the LCD ready to use, but with
* the power setting at 0 (full off).
* up_lcdgetdev - Return a a reference to the LCD object for
* the specified LCD. This allows support for
* multiple LCD devices.
@@ -501,7 +504,7 @@ EXTERN void fb_uninitialize(void);
struct lcd_dev_s; /* See nuttx/lcd.h */
EXTERN int up_lcdinitialize(void);
EXTERN FAR struct lcd_dev_s *up_lcdgetdev(int lcdddev);
EXTERN FAR struct lcd_dev_s *up_lcdgetdev(int lcddev);
EXTERN void up_lcduninitialize(void);
/****************************************************************************
+24 -4
View File
@@ -48,6 +48,24 @@
* Pre-processor Definitions
****************************************************************************/
/* Configuration ************************************************************/
#ifndef CONFIG_LCD_MAXPOWER
# error "CONFIG_LCD_MAXPOWER is not defined"
#endif
#ifndef CONFIG_LCD_MAXCONTRAST
# error "CONFIG_LCD_MAXCONTRAST is not defined"
#endif
/* Friendlier names */
#define LCD_FULL_OFF (0)
#define LCD_FULL_ON CONFIG_LCD_MAXPOWER
#define LCD_MIN_CONTRAST (0)
#define LCD_MAX_CONTRAST CONFIG_LCD_MAXCONTRAST
/****************************************************************************
* Type Definitions
****************************************************************************/
@@ -147,14 +165,16 @@ struct lcd_dev_s
#endif
/* LCD Specific Controls **************************************************/
/* Get the LCD panel power status (0: full off - CONFIG_LCD_MAXPOWER:
* full on
/* Get the LCD panel power status (0: full off - CONFIG_LCD_MAXPOWER: full
* on). On backlit LCDs, this setting may correspond to the backlight
* setting.
*/
int (*getpower)(struct lcd_dev_s *dev);
/* Enable/disable LCD panel power (0: full off - CONFIG_LCD_MAXPOWERL:
* full on)
/* Enable/disable LCD panel power (0: full off - CONFIG_LCD_MAXPOWER: full
* on). On backlit LCDs, this setting may correspond to the backlight
* setting.
*/
int (*setpower)(struct lcd_dev_s *dev, int power);