On Mon, Apr 16, 2018 at 11:32:50AM +0530, spanda@xxxxxxxxxxxxxx wrote: > On 2018-04-14 00:59, Sean Paul wrote: > > On Fri, Apr 13, 2018 at 10:53:00AM +0530, Sandeep Panda wrote: > > > Add support for TI's sn65dsi86 dsi2edp bridge chip. > > > The chip converts DSI transmitted signal to eDP signal, > > > which is fed to the connected eDP panel. > > > > > > This chip can be controlled via either i2c interface or > > > dsi interface. Currently in driver all the control registers > > > are being accessed through i2c interface only. > > > Also as of now HPD support has not been added to bridge > > > chip driver. > > > > > > Signed-off-by: Sandeep Panda <spanda@xxxxxxxxxxxxxx> <snip /> > > > +{ > > > + struct mipi_dsi_host *host; > > > + struct mipi_dsi_device *dsi; > > > + struct sn65dsi86 *pdata = bridge_to_sn65dsi86(bridge); > > > + int ret; > > > + const struct mipi_dsi_device_info info = { .type = "sn65dsi86", > > > + .channel = 0, > > > + .node = NULL, > > > + }; > > > + > > > + if (!bridge->encoder) { > > > + DRM_ERROR("Parent encoder object not found"); > > > + return -ENODEV; > > > + } > > > + > > > + /* HPD not supported */ > > > + pdata->connector.polled = 0; > > > + > > > > You'll need to refactor the below to accommodate panels. If you're not > > planning > > on supporting hotplug, you should probably remove all of the > > connector-related > > stuff from this driver, since you will always be using a panel driver. > > > > Thanks for reviewing the patch in detail. > > I have one doubt here. If we remove connector from bridge driver, then how > will detect() > and get_modes() called. If you are suggesting to use panel func's detect() > and get_mode() > then it might not work, because once upstream DSI driver sees an external > bridge is connected > to DSI, then it does not create a connector of it own, it expects the > external bridge > to create the connector node. I think here the external bridge has to create > the connector > and when detect() and get_modes() call come to external bridge then it > should query connected > panel's detect() and get_modes() API. > Right, thanks for setting me straight. You'll need to call the drm_panel_* helper functions if the panel is present for the connector hooks. Sean <snip /> -- Sean Paul, Software Engineer, Google / Chromium OS -- To unsubscribe from this list: send the line "unsubscribe linux-arm-msm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html