From: InKi Dae on
Hello, all.

this is S6E63M0 AMOLED LCD Panel(480x800) driver using 3-wired SPI interface
also almost features for lcd panel driver has been implemented in here.
and I added new structure common for all the lcd panel drivers to
include/linux/lcd.h file.

the contents are as following.
- LCD Panel driver needs interfaces for controlling device power such as
power on/off and reset. these interfaces are device specific so it should be
implemented to machine code at this time, we should create new structure
for registering these functions as callbacks and also a header file for
that structure and finally registered callback functions would be called
by lcd panel driver.
such header file(including new structure for lcd panel) would be added
for all the lcd panel drivers.

If anyone provides common structure for registering such callback functions
then we could reduce unnecessary header files for lcd panel.
I thought that suitable anyone could be include/linux/lcd.h

I added new structure to lcd.h like following,
struct lcd_platform_data {
/* reset lcd panel device. */
int (*reset)(struct lcd_device *ld);
/* on or off to lcd panel. if 'enable' is 0 then
lcd power off and 1, lcd power on. */
int (*power_on)(struct lcd_device *ld, int enable);

/* it indicates whether lcd panel was enabled
from bootloader or not. */
int lcd_enabled;
/* it means delay for stable time when it becomes low to high
or high to low that is dependent on whether reset gpio is
low active or high active. */
unsigned int reset_delay;
/* stable time needing to become lcd power on. */
unsigned int power_on_delay;
/* stable time needing to become lcd power off. */
unsigned int power_off_delay;

/* it could be used for any purpose. */
void *pdata;
};

Please review this patch and lcd panel driver.

Signed-off-by: InKi Dae <inki.dae(a)samsung.com>
Reviewed-by: KyungMin Park <kyungmin.park.samsung.com>

Best Regards,
InKi Dae.