Message ID | 1353527332-5216-2-git-send-email-aaro.koskinen@iki.fi (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Hi, On 2012-11-21 21:48, Aaro Koskinen wrote: > Register the DSS driver after SPI probe. This simplifies the > initialization. This is similar to what is being done e.g. > in panel-acx565akm. Is this a fix? The description sounds like it's just a cleanup. The first patch in the series needs to be sent for the next -rc, right? Tomi
On Thu, Nov 22, 2012 at 02:18:57PM +0200, Tomi Valkeinen wrote: > Hi, > > On 2012-11-21 21:48, Aaro Koskinen wrote: > > Register the DSS driver after SPI probe. This simplifies the > > initialization. This is similar to what is being done e.g. > > in panel-acx565akm. > > Is this a fix? The description sounds like it's just a cleanup. Yes, it's a cleanup. I should have sent it separately, sorry. > The first patch in the series needs to be sent for the next -rc, right? Yes, it's fixing regression. There are OMAP2 boards with display configured (e.g. board-apollon) and those will see probe failing. A. -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On 2012-11-22 17:17, Aaro Koskinen wrote: > On Thu, Nov 22, 2012 at 02:18:57PM +0200, Tomi Valkeinen wrote: >> Hi, >> >> On 2012-11-21 21:48, Aaro Koskinen wrote: >>> Register the DSS driver after SPI probe. This simplifies the >>> initialization. This is similar to what is being done e.g. >>> in panel-acx565akm. >> >> Is this a fix? The description sounds like it's just a cleanup. > > Yes, it's a cleanup. I should have sent it separately, sorry. Ok. Did you actually manage to test it? I haven't tested N800 for ages, as I don't have a serial console for my N800, and last times I've tried I didn't manage to get it to boot. >> The first patch in the series needs to be sent for the next -rc, right? > > Yes, it's fixing regression. There are OMAP2 boards with display > configured (e.g. board-apollon) and those will see probe failing. Ok, I'll queue it for next -rc. Tomi
On Thu, Nov 22, 2012 at 05:21:42PM +0200, Tomi Valkeinen wrote: > On 2012-11-22 17:17, Aaro Koskinen wrote: > > On Thu, Nov 22, 2012 at 02:18:57PM +0200, Tomi Valkeinen wrote: > >> On 2012-11-21 21:48, Aaro Koskinen wrote: > >>> Register the DSS driver after SPI probe. This simplifies the > >>> initialization. This is similar to what is being done e.g. > >>> in panel-acx565akm. > >> > >> Is this a fix? The description sounds like it's just a cleanup. > > > > Yes, it's a cleanup. I should have sent it separately, sorry. > > Ok. Did you actually manage to test it? Yes, the patch works but there are still issues and I can't get the display yet alive: [ 4.081390] n8x0_panel display0: invalid s1d1374x revision 00 [ 4.087738] omapfb omapfb: Failed to enable display 'lcd' [ 4.093475] omapfb omapfb: failed to initialize default display For some reason all the blizzard_read_reg()s return just zeroes. I have set up the panel_reset and ctrl_pwrdown GPIOs (30, 15) according to the Maemo kernel, but maybe there's still more initializations I need to do from the board file... > I haven't tested N800 for ages, as I don't have a serial console for > my N800, and last times I've tried I didn't manage to get it to boot. It works. I use busybox/dropbear/USB networking to get a "console". A. -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/drivers/video/omap2/displays/panel-n8x0.c b/drivers/video/omap2/displays/panel-n8x0.c index 3fc5ad0..6cafdd4 100644 --- a/drivers/video/omap2/displays/panel-n8x0.c +++ b/drivers/video/omap2/displays/panel-n8x0.c @@ -702,18 +702,25 @@ static struct omap_dss_driver n8x0_panel_driver = { static int mipid_spi_probe(struct spi_device *spi) { + int r; + dev_dbg(&spi->dev, "mipid_spi_probe\n"); spi->mode = SPI_MODE_0; s_drv_data.spidev = spi; - return 0; + r = omap_dss_register_driver(&n8x0_panel_driver); + if (r) + pr_err("n8x0_panel: dss driver registration failed\n"); + + return r; } static int mipid_spi_remove(struct spi_device *spi) { dev_dbg(&spi->dev, "mipid_spi_remove\n"); + omap_dss_unregister_driver(&n8x0_panel_driver); return 0; } @@ -725,34 +732,6 @@ static struct spi_driver mipid_spi_driver = { .probe = mipid_spi_probe, .remove = __devexit_p(mipid_spi_remove), }; +module_spi_driver(mipid_spi_driver); -static int __init n8x0_panel_drv_init(void) -{ - int r; - - r = spi_register_driver(&mipid_spi_driver); - if (r) { - pr_err("n8x0_panel: spi driver registration failed\n"); - return r; - } - - r = omap_dss_register_driver(&n8x0_panel_driver); - if (r) { - pr_err("n8x0_panel: dss driver registration failed\n"); - spi_unregister_driver(&mipid_spi_driver); - return r; - } - - return 0; -} - -static void __exit n8x0_panel_drv_exit(void) -{ - spi_unregister_driver(&mipid_spi_driver); - - omap_dss_unregister_driver(&n8x0_panel_driver); -} - -module_init(n8x0_panel_drv_init); -module_exit(n8x0_panel_drv_exit); MODULE_LICENSE("GPL");
Register the DSS driver after SPI probe. This simplifies the initialization. This is similar to what is being done e.g. in panel-acx565akm. Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi> --- drivers/video/omap2/displays/panel-n8x0.c | 39 +++++++---------------------- 1 file changed, 9 insertions(+), 30 deletions(-)