* Fix OMAP1 compilation

* OMAP display fixes
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iQIcBAABAgAGBQJRVDTpAAoJEPo9qoy8lh716c8P/3FJhLXxG9bWmHHoK+/l4ymg
 plAdi6Jz/IgPj2QJ/okhorFSmkEZjJ/HZ1vjEBWhpXapBPWIOB+GbCq0/ErEnxrq
 MB35Fikf096Vyl5Iy7nXYM9u6o4IrZZWeNaazqt0quVE+1z0+upBjxfCu/PFOe6+
 /zpgBBvWsX/cxaeraZ2esqeqs4UnCGiyd4uNuCmUCHXxwDtNNARQKbZGQvu4sd3Q
 ieX7QKVE+vsTneA8PwLlhAl2arbeT84B+1noKJx1V9V+RL45zIKl2HJZIH9RBDMS
 3RyBmX10zDGy0cDDoNTH+Wj6+l8l8pZXZbpS5t3KtU+entrNWYrGu3RUaRJfv8Tz
 LviBJHSCEbdYYwcJayAm0R4ANSaxZe8yUI80VzFNqVsQgiLckzUTXwUkSRz76vdU
 /TPOnCfrwBjDKKgvWTYN59/QKZj7jRzbbQTxf5pQ9HrfxaAmcGmXmbxr+HMFOSff
 xf8bINsXEJsqnDolAuf5eV0+QQPbk9kTZrMl6FPLQNqj1vdsrHoB5gz9ru+y9bjh
 V9I0LQya6rXhiijsFt/lC1/eA08jXGXl/F/InZAejQKTLpatjMzt190aZ6QXT7YY
 TxOdSgf11UmllASNE4WJbo7jGXc8+4BNw76u2E/RedxJ+j/rIIsCB29w+6pUV9+c
 YbKtCg5gnfQ41iaU3/Wu
 =CIGs
 -----END PGP SIGNATURE-----

Merge tag 'fbdev-fixes-3.9-rc4' of git://gitorious.org/linux-omap-dss2/linux

Pull fbdev fixes from Tomi Valkeinen:
 "Since Florian is still away/inactive, I volunteered to collect fbdev
  fixes for 3.9 and changes for 3.10.  I didn't receive any other fbdev
  fixes than OMAP yet, but I didn't want to delay this further as
  there's a compilation fix for OMAP1.  So there could be still some
  fbdev fixes on the way a bit later.

  This contains:

   - Fix OMAP1 compilation
   - OMAP display fixes"

* tag 'fbdev-fixes-3.9-rc4' of git://gitorious.org/linux-omap-dss2/linux:
  omapdss: features: fix supported outputs for OMAP4
  OMAPDSS: tpo-td043 panel: fix data passing between SPI/DSS parts
  omapfb: fix broken build on OMAP1
This commit is contained in:
Linus Torvalds 2013-03-28 13:44:40 -07:00
commit 5e248509b6
3 changed files with 15 additions and 6 deletions

View File

@ -32,6 +32,8 @@
#include <linux/omap-dma.h> #include <linux/omap-dma.h>
#include <mach/hardware.h>
#include "omapfb.h" #include "omapfb.h"
#include "lcdc.h" #include "lcdc.h"

View File

@ -63,6 +63,9 @@ struct tpo_td043_device {
u32 power_on_resume:1; u32 power_on_resume:1;
}; };
/* used to pass spi_device from SPI to DSS portion of the driver */
static struct tpo_td043_device *g_tpo_td043;
static int tpo_td043_write(struct spi_device *spi, u8 addr, u8 data) static int tpo_td043_write(struct spi_device *spi, u8 addr, u8 data)
{ {
struct spi_message m; struct spi_message m;
@ -403,7 +406,7 @@ static void tpo_td043_disable(struct omap_dss_device *dssdev)
static int tpo_td043_probe(struct omap_dss_device *dssdev) static int tpo_td043_probe(struct omap_dss_device *dssdev)
{ {
struct tpo_td043_device *tpo_td043 = dev_get_drvdata(&dssdev->dev); struct tpo_td043_device *tpo_td043 = g_tpo_td043;
int nreset_gpio = dssdev->reset_gpio; int nreset_gpio = dssdev->reset_gpio;
int ret = 0; int ret = 0;
@ -440,6 +443,8 @@ static int tpo_td043_probe(struct omap_dss_device *dssdev)
if (ret) if (ret)
dev_warn(&dssdev->dev, "failed to create sysfs files\n"); dev_warn(&dssdev->dev, "failed to create sysfs files\n");
dev_set_drvdata(&dssdev->dev, tpo_td043);
return 0; return 0;
fail_gpio_req: fail_gpio_req:
@ -505,6 +510,9 @@ static int tpo_td043_spi_probe(struct spi_device *spi)
return -ENODEV; return -ENODEV;
} }
if (g_tpo_td043 != NULL)
return -EBUSY;
spi->bits_per_word = 16; spi->bits_per_word = 16;
spi->mode = SPI_MODE_0; spi->mode = SPI_MODE_0;
@ -521,7 +529,7 @@ static int tpo_td043_spi_probe(struct spi_device *spi)
tpo_td043->spi = spi; tpo_td043->spi = spi;
tpo_td043->nreset_gpio = dssdev->reset_gpio; tpo_td043->nreset_gpio = dssdev->reset_gpio;
dev_set_drvdata(&spi->dev, tpo_td043); dev_set_drvdata(&spi->dev, tpo_td043);
dev_set_drvdata(&dssdev->dev, tpo_td043); g_tpo_td043 = tpo_td043;
omap_dss_register_driver(&tpo_td043_driver); omap_dss_register_driver(&tpo_td043_driver);
@ -534,6 +542,7 @@ static int tpo_td043_spi_remove(struct spi_device *spi)
omap_dss_unregister_driver(&tpo_td043_driver); omap_dss_unregister_driver(&tpo_td043_driver);
kfree(tpo_td043); kfree(tpo_td043);
g_tpo_td043 = NULL;
return 0; return 0;
} }

View File

@ -202,12 +202,10 @@ static const enum omap_dss_output_id omap3630_dss_supported_outputs[] = {
static const enum omap_dss_output_id omap4_dss_supported_outputs[] = { static const enum omap_dss_output_id omap4_dss_supported_outputs[] = {
/* OMAP_DSS_CHANNEL_LCD */ /* OMAP_DSS_CHANNEL_LCD */
OMAP_DSS_OUTPUT_DPI | OMAP_DSS_OUTPUT_DBI | OMAP_DSS_OUTPUT_DBI | OMAP_DSS_OUTPUT_DSI1,
OMAP_DSS_OUTPUT_DSI1,
/* OMAP_DSS_CHANNEL_DIGIT */ /* OMAP_DSS_CHANNEL_DIGIT */
OMAP_DSS_OUTPUT_VENC | OMAP_DSS_OUTPUT_HDMI | OMAP_DSS_OUTPUT_VENC | OMAP_DSS_OUTPUT_HDMI,
OMAP_DSS_OUTPUT_DPI,
/* OMAP_DSS_CHANNEL_LCD2 */ /* OMAP_DSS_CHANNEL_LCD2 */
OMAP_DSS_OUTPUT_DPI | OMAP_DSS_OUTPUT_DBI | OMAP_DSS_OUTPUT_DPI | OMAP_DSS_OUTPUT_DBI |