[PATCH 2/2] S5PV210: Add MIPI-DSI Driver.
From: InKi Dae <hidden>
Date: 2010-07-03 07:20:16
Also in:
linux-fbdev
oops, sorry. it changed header file name to another. 2010/7/3 InKi Dae [off-list ref]:
Hi, Jaya. below is my answer. 2010/7/3 Jaya Kumar [off-list ref]:quoted
Hi InKi, 2010/7/2 InKi Dae [off-list ref]:quoted
this patch addes MIPI-DSI Driver. to use this driver, some structures below should be added to machine specific file.A quick question. I'm having difficulty understanding the larger picture here. There's the MIPI-DSI host controller driver (which I think is what this patch is) which is specific to this platform. Then there's the MIPI-DSI LCD panels which are supposed to be fully platform independent, right? and would thus ideally have a platform independent MIPI-DSI client driver?hmm, is there any mipi-dsi master framework that it can use commonly in linux kernel? my driver is dependent on platform a little because lcd panel driver should include two header files.quoted
Would I be correct in saying this patch below does not provide such an abstraction and so structures that would be necessary for such a display driver (eg: struct mipi_lcd_driver ) appear to be declared in the samsung platform specific files. In other words, if we wanted to support a particular MIPI-DSI LCD panel, it would require a client driver that is tied intimately to this platform? Could you point us to an example mipi-dsi client driver that is using the patch you provided? ie: something that is calling s5p_dsim_register_lcd_driver. That would help us understand the abstraction that is being made here.Ok, below is example code to mipi-dsi based lcd panel driver. #include <plat/dsim.h> #include <plat/mipi_ddi.h> static struct mipi_lcd_driver xxx_mipi_driver = { ? ? ? ? ? .name ?= "xxx", ? ? ? ? ? .init ?= xxx_init, ? ? ? ? ? .display_on = xxx_displsy_on, ? ? ? ? ? .set_link = xxx_set_link, ? ? ? ? ? .probe = xxx_probe, ? ? ? ? ? .suspend = xxx_suspend, ? ? ? ? ? .resume = xxx_resume, }; static int xxx_init(void) { ? ? ? ? ? s5p_dsim_register_lcd_driver(&xxx_mipi_driver); ? ? ? ? ? return 0; } static void xxx_exit(void) { ? ? ? ? ?return; } module_init(xxx_init); module_exit(xxx_exit); at module_init, xxx_mipi_driver would be registered to mipi master driver through s5p_dsim_register_lcd_driver func and when master driver is probed, xxx_probe would be called by probe func of master driver. I wonder there is mipi-dsi master driver indenpendent on platform fully in linux kernel. if exsiting, I will use it as master driver. of course, the part dependent on platform would be implemented using that framework. Thank you.