Commit 5e248509b67f82102b9bfbf43d6efa04ba8252aa
Exists in
smarc-l5.0.0_1.0.0-ga
and in
5 other branches
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
Showing 3 changed files Side-by-side Diff
drivers/video/omap/omapfb_main.c
drivers/video/omap2/displays/panel-tpo-td043mtea1.c
... | ... | @@ -63,6 +63,9 @@ |
63 | 63 | u32 power_on_resume:1; |
64 | 64 | }; |
65 | 65 | |
66 | +/* used to pass spi_device from SPI to DSS portion of the driver */ | |
67 | +static struct tpo_td043_device *g_tpo_td043; | |
68 | + | |
66 | 69 | static int tpo_td043_write(struct spi_device *spi, u8 addr, u8 data) |
67 | 70 | { |
68 | 71 | struct spi_message m; |
... | ... | @@ -403,7 +406,7 @@ |
403 | 406 | |
404 | 407 | static int tpo_td043_probe(struct omap_dss_device *dssdev) |
405 | 408 | { |
406 | - struct tpo_td043_device *tpo_td043 = dev_get_drvdata(&dssdev->dev); | |
409 | + struct tpo_td043_device *tpo_td043 = g_tpo_td043; | |
407 | 410 | int nreset_gpio = dssdev->reset_gpio; |
408 | 411 | int ret = 0; |
409 | 412 | |
... | ... | @@ -440,6 +443,8 @@ |
440 | 443 | if (ret) |
441 | 444 | dev_warn(&dssdev->dev, "failed to create sysfs files\n"); |
442 | 445 | |
446 | + dev_set_drvdata(&dssdev->dev, tpo_td043); | |
447 | + | |
443 | 448 | return 0; |
444 | 449 | |
445 | 450 | fail_gpio_req: |
... | ... | @@ -505,6 +510,9 @@ |
505 | 510 | return -ENODEV; |
506 | 511 | } |
507 | 512 | |
513 | + if (g_tpo_td043 != NULL) | |
514 | + return -EBUSY; | |
515 | + | |
508 | 516 | spi->bits_per_word = 16; |
509 | 517 | spi->mode = SPI_MODE_0; |
510 | 518 | |
... | ... | @@ -521,7 +529,7 @@ |
521 | 529 | tpo_td043->spi = spi; |
522 | 530 | tpo_td043->nreset_gpio = dssdev->reset_gpio; |
523 | 531 | dev_set_drvdata(&spi->dev, tpo_td043); |
524 | - dev_set_drvdata(&dssdev->dev, tpo_td043); | |
532 | + g_tpo_td043 = tpo_td043; | |
525 | 533 | |
526 | 534 | omap_dss_register_driver(&tpo_td043_driver); |
527 | 535 | |
... | ... | @@ -534,6 +542,7 @@ |
534 | 542 | |
535 | 543 | omap_dss_unregister_driver(&tpo_td043_driver); |
536 | 544 | kfree(tpo_td043); |
545 | + g_tpo_td043 = NULL; | |
537 | 546 | |
538 | 547 | return 0; |
539 | 548 | } |
drivers/video/omap2/dss/dss_features.c
... | ... | @@ -202,12 +202,10 @@ |
202 | 202 | |
203 | 203 | static const enum omap_dss_output_id omap4_dss_supported_outputs[] = { |
204 | 204 | /* OMAP_DSS_CHANNEL_LCD */ |
205 | - OMAP_DSS_OUTPUT_DPI | OMAP_DSS_OUTPUT_DBI | | |
206 | - OMAP_DSS_OUTPUT_DSI1, | |
205 | + OMAP_DSS_OUTPUT_DBI | OMAP_DSS_OUTPUT_DSI1, | |
207 | 206 | |
208 | 207 | /* OMAP_DSS_CHANNEL_DIGIT */ |
209 | - OMAP_DSS_OUTPUT_VENC | OMAP_DSS_OUTPUT_HDMI | | |
210 | - OMAP_DSS_OUTPUT_DPI, | |
208 | + OMAP_DSS_OUTPUT_VENC | OMAP_DSS_OUTPUT_HDMI, | |
211 | 209 | |
212 | 210 | /* OMAP_DSS_CHANNEL_LCD2 */ |
213 | 211 | OMAP_DSS_OUTPUT_DPI | OMAP_DSS_OUTPUT_DBI | |