Skip to content

Commit

Permalink
Merge branch '3.8/misc-2'
Browse files Browse the repository at this point in the history
Merge omapdss miscellaneous patches.
  • Loading branch information
Tomi Valkeinen committed Nov 5, 2012
2 parents f8fb7d7 + ffc81fc commit 9296dbd
Show file tree
Hide file tree
Showing 27 changed files with 315 additions and 664 deletions.
15 changes: 10 additions & 5 deletions arch/arm/mach-omap2/display.c
Original file line number Diff line number Diff line change
Expand Up @@ -100,17 +100,20 @@ static const struct omap_dss_hwmod_data omap4_dss_hwmod_data[] __initconst = {
{ "dss_hdmi", "omapdss_hdmi", -1 },
};

static void __init omap4_hdmi_mux_pads(enum omap_hdmi_flags flags)
static void __init omap4_tpd12s015_mux_pads(void)
{
u32 reg;
u16 control_i2c_1;

omap_mux_init_signal("hdmi_cec",
OMAP_PIN_INPUT_PULLUP);
omap_mux_init_signal("hdmi_ddc_scl",
OMAP_PIN_INPUT_PULLUP);
omap_mux_init_signal("hdmi_ddc_sda",
OMAP_PIN_INPUT_PULLUP);
}

static void __init omap4_hdmi_mux_pads(enum omap_hdmi_flags flags)
{
u32 reg;
u16 control_i2c_1;

/*
* CONTROL_I2C_1: HDMI_DDC_SDA_PULLUPRESX (bit 28) and
Expand Down Expand Up @@ -161,8 +164,10 @@ static int omap4_dsi_mux_pads(int dsi_id, unsigned lanes)

int __init omap_hdmi_init(enum omap_hdmi_flags flags)
{
if (cpu_is_omap44xx())
if (cpu_is_omap44xx()) {
omap4_hdmi_mux_pads(flags);
omap4_tpd12s015_mux_pads();
}

return 0;
}
Expand Down
23 changes: 0 additions & 23 deletions drivers/video/omap2/displays/panel-acx565akm.c
Original file line number Diff line number Diff line change
Expand Up @@ -710,27 +710,6 @@ static void acx_panel_disable(struct omap_dss_device *dssdev)
dssdev->state = OMAP_DSS_DISPLAY_DISABLED;
}

static int acx_panel_suspend(struct omap_dss_device *dssdev)
{
dev_dbg(&dssdev->dev, "%s\n", __func__);
acx_panel_power_off(dssdev);
dssdev->state = OMAP_DSS_DISPLAY_SUSPENDED;
return 0;
}

static int acx_panel_resume(struct omap_dss_device *dssdev)
{
int r;

dev_dbg(&dssdev->dev, "%s\n", __func__);
r = acx_panel_power_on(dssdev);
if (r)
return r;

dssdev->state = OMAP_DSS_DISPLAY_ACTIVE;
return 0;
}

static void acx_panel_set_timings(struct omap_dss_device *dssdev,
struct omap_video_timings *timings)
{
Expand All @@ -752,8 +731,6 @@ static struct omap_dss_driver acx_panel_driver = {

.enable = acx_panel_enable,
.disable = acx_panel_disable,
.suspend = acx_panel_suspend,
.resume = acx_panel_resume,

.set_timings = acx_panel_set_timings,
.check_timings = acx_panel_check_timings,
Expand Down
36 changes: 0 additions & 36 deletions drivers/video/omap2/displays/panel-generic-dpi.c
Original file line number Diff line number Diff line change
Expand Up @@ -688,40 +688,6 @@ static void generic_dpi_panel_disable(struct omap_dss_device *dssdev)
mutex_unlock(&drv_data->lock);
}

static int generic_dpi_panel_suspend(struct omap_dss_device *dssdev)
{
struct panel_drv_data *drv_data = dev_get_drvdata(&dssdev->dev);

mutex_lock(&drv_data->lock);

generic_dpi_panel_power_off(dssdev);

dssdev->state = OMAP_DSS_DISPLAY_SUSPENDED;

mutex_unlock(&drv_data->lock);

return 0;
}

static int generic_dpi_panel_resume(struct omap_dss_device *dssdev)
{
struct panel_drv_data *drv_data = dev_get_drvdata(&dssdev->dev);
int r;

mutex_lock(&drv_data->lock);

r = generic_dpi_panel_power_on(dssdev);
if (r)
goto err;

dssdev->state = OMAP_DSS_DISPLAY_ACTIVE;

err:
mutex_unlock(&drv_data->lock);

return r;
}

static void generic_dpi_panel_set_timings(struct omap_dss_device *dssdev,
struct omap_video_timings *timings)
{
Expand Down Expand Up @@ -769,8 +735,6 @@ static struct omap_dss_driver dpi_driver = {

.enable = generic_dpi_panel_enable,
.disable = generic_dpi_panel_disable,
.suspend = generic_dpi_panel_suspend,
.resume = generic_dpi_panel_resume,

.set_timings = generic_dpi_panel_set_timings,
.get_timings = generic_dpi_panel_get_timings,
Expand Down
34 changes: 0 additions & 34 deletions drivers/video/omap2/displays/panel-lgphilips-lb035q02.c
Original file line number Diff line number Diff line change
Expand Up @@ -143,46 +143,12 @@ static void lb035q02_panel_disable(struct omap_dss_device *dssdev)
mutex_unlock(&ld->lock);
}

static int lb035q02_panel_suspend(struct omap_dss_device *dssdev)
{
struct lb035q02_data *ld = dev_get_drvdata(&dssdev->dev);

mutex_lock(&ld->lock);

lb035q02_panel_power_off(dssdev);
dssdev->state = OMAP_DSS_DISPLAY_SUSPENDED;

mutex_unlock(&ld->lock);
return 0;
}

static int lb035q02_panel_resume(struct omap_dss_device *dssdev)
{
struct lb035q02_data *ld = dev_get_drvdata(&dssdev->dev);
int r;

mutex_lock(&ld->lock);

r = lb035q02_panel_power_on(dssdev);
if (r)
goto err;
dssdev->state = OMAP_DSS_DISPLAY_ACTIVE;

mutex_unlock(&ld->lock);
return 0;
err:
mutex_unlock(&ld->lock);
return r;
}

static struct omap_dss_driver lb035q02_driver = {
.probe = lb035q02_panel_probe,
.remove = lb035q02_panel_remove,

.enable = lb035q02_panel_enable,
.disable = lb035q02_panel_disable,
.suspend = lb035q02_panel_suspend,
.resume = lb035q02_panel_resume,

.driver = {
.name = "lgphilips_lb035q02_panel",
Expand Down
50 changes: 0 additions & 50 deletions drivers/video/omap2/displays/panel-n8x0.c
Original file line number Diff line number Diff line change
Expand Up @@ -574,54 +574,6 @@ static void n8x0_panel_disable(struct omap_dss_device *dssdev)
mutex_unlock(&ddata->lock);
}

static int n8x0_panel_suspend(struct omap_dss_device *dssdev)
{
struct panel_drv_data *ddata = get_drv_data(dssdev);

dev_dbg(&dssdev->dev, "suspend\n");

mutex_lock(&ddata->lock);

rfbi_bus_lock();

n8x0_panel_power_off(dssdev);

rfbi_bus_unlock();

dssdev->state = OMAP_DSS_DISPLAY_SUSPENDED;

mutex_unlock(&ddata->lock);

return 0;
}

static int n8x0_panel_resume(struct omap_dss_device *dssdev)
{
struct panel_drv_data *ddata = get_drv_data(dssdev);
int r;

dev_dbg(&dssdev->dev, "resume\n");

mutex_lock(&ddata->lock);

rfbi_bus_lock();

r = n8x0_panel_power_on(dssdev);

rfbi_bus_unlock();

if (r) {
mutex_unlock(&ddata->lock);
return r;
}

dssdev->state = OMAP_DSS_DISPLAY_ACTIVE;

mutex_unlock(&ddata->lock);

return 0;
}

static void n8x0_panel_get_resolution(struct omap_dss_device *dssdev,
u16 *xres, u16 *yres)
{
Expand Down Expand Up @@ -683,8 +635,6 @@ static struct omap_dss_driver n8x0_panel_driver = {

.enable = n8x0_panel_enable,
.disable = n8x0_panel_disable,
.suspend = n8x0_panel_suspend,
.resume = n8x0_panel_resume,

.update = n8x0_panel_update,
.sync = n8x0_panel_sync,
Expand Down
24 changes: 0 additions & 24 deletions drivers/video/omap2/displays/panel-nec-nl8048hl11-01b.c
Original file line number Diff line number Diff line change
Expand Up @@ -236,28 +236,6 @@ static void nec_8048_panel_disable(struct omap_dss_device *dssdev)
dssdev->state = OMAP_DSS_DISPLAY_DISABLED;
}

static int nec_8048_panel_suspend(struct omap_dss_device *dssdev)
{
nec_8048_panel_power_off(dssdev);

dssdev->state = OMAP_DSS_DISPLAY_SUSPENDED;

return 0;
}

static int nec_8048_panel_resume(struct omap_dss_device *dssdev)
{
int r;

r = nec_8048_panel_power_on(dssdev);
if (r)
return r;

dssdev->state = OMAP_DSS_DISPLAY_ACTIVE;

return 0;
}

static int nec_8048_recommended_bpp(struct omap_dss_device *dssdev)
{
return 16;
Expand All @@ -268,8 +246,6 @@ static struct omap_dss_driver nec_8048_driver = {
.remove = nec_8048_panel_remove,
.enable = nec_8048_panel_enable,
.disable = nec_8048_panel_disable,
.suspend = nec_8048_panel_suspend,
.resume = nec_8048_panel_resume,
.get_recommended_bpp = nec_8048_recommended_bpp,

.driver = {
Expand Down
44 changes: 0 additions & 44 deletions drivers/video/omap2/displays/panel-picodlp.c
Original file line number Diff line number Diff line change
Expand Up @@ -503,47 +503,6 @@ static void picodlp_panel_disable(struct omap_dss_device *dssdev)
dev_dbg(&dssdev->dev, "disabling picodlp panel\n");
}

static int picodlp_panel_suspend(struct omap_dss_device *dssdev)
{
struct picodlp_data *picod = dev_get_drvdata(&dssdev->dev);

mutex_lock(&picod->lock);
/* Turn off DLP Power */
if (dssdev->state != OMAP_DSS_DISPLAY_ACTIVE) {
mutex_unlock(&picod->lock);
dev_err(&dssdev->dev, "unable to suspend picodlp panel,"
" panel is not ACTIVE\n");
return -EINVAL;
}

picodlp_panel_power_off(dssdev);

dssdev->state = OMAP_DSS_DISPLAY_SUSPENDED;
mutex_unlock(&picod->lock);

dev_dbg(&dssdev->dev, "suspending picodlp panel\n");
return 0;
}

static int picodlp_panel_resume(struct omap_dss_device *dssdev)
{
struct picodlp_data *picod = dev_get_drvdata(&dssdev->dev);
int r;

mutex_lock(&picod->lock);
if (dssdev->state != OMAP_DSS_DISPLAY_SUSPENDED) {
mutex_unlock(&picod->lock);
dev_err(&dssdev->dev, "unable to resume picodlp panel,"
" panel is not ACTIVE\n");
return -EINVAL;
}

r = picodlp_panel_power_on(dssdev);
mutex_unlock(&picod->lock);
dev_dbg(&dssdev->dev, "resuming picodlp panel\n");
return r;
}

static void picodlp_get_resolution(struct omap_dss_device *dssdev,
u16 *xres, u16 *yres)
{
Expand All @@ -560,9 +519,6 @@ static struct omap_dss_driver picodlp_driver = {

.get_resolution = picodlp_get_resolution,

.suspend = picodlp_panel_suspend,
.resume = picodlp_panel_resume,

.driver = {
.name = "picodlp_panel",
.owner = THIS_MODULE,
Expand Down
17 changes: 0 additions & 17 deletions drivers/video/omap2/displays/panel-sharp-ls037v7dw01.c
Original file line number Diff line number Diff line change
Expand Up @@ -194,29 +194,12 @@ static void sharp_ls_panel_disable(struct omap_dss_device *dssdev)
dssdev->state = OMAP_DSS_DISPLAY_DISABLED;
}

static int sharp_ls_panel_suspend(struct omap_dss_device *dssdev)
{
sharp_ls_power_off(dssdev);
dssdev->state = OMAP_DSS_DISPLAY_SUSPENDED;
return 0;
}

static int sharp_ls_panel_resume(struct omap_dss_device *dssdev)
{
int r;
r = sharp_ls_power_on(dssdev);
dssdev->state = OMAP_DSS_DISPLAY_ACTIVE;
return r;
}

static struct omap_dss_driver sharp_ls_driver = {
.probe = sharp_ls_panel_probe,
.remove = __exit_p(sharp_ls_panel_remove),

.enable = sharp_ls_panel_enable,
.disable = sharp_ls_panel_disable,
.suspend = sharp_ls_panel_suspend,
.resume = sharp_ls_panel_resume,

.driver = {
.name = "sharp_ls_panel",
Expand Down
Loading

0 comments on commit 9296dbd

Please sign in to comment.