From: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
To: Andrzej Hajda <a.hajda@samsung.com>
Cc: Carsten Behling <carsten.behling@googlemail.com>,
dri-devel@lists.freedesktop.org
Subject: Re: Fwd: DRM MIPI DSI device and I2C device?
Date: Thu, 05 Apr 2018 14:39:44 +0300 [thread overview]
Message-ID: <2777438.tfU50M0jG6@avalon> (raw)
In-Reply-To: <8681b34c-b930-bc89-c0f2-a8097c4ecd76@samsung.com>
Hi Andrzej,
On Thursday, 5 April 2018 14:28:51 EEST Andrzej Hajda wrote:
> On 05.04.2018 12:28, Laurent Pinchart wrote:
> > On Wednesday, 4 April 2018 11:41:05 EEST Carsten Behling wrote:
> >>> Hi,
> >>>
> >>> I would like to write a DRM bridge driver that is an I2C device and a
> >>> DRM MIPI DSI device.
> >>>
> >>> It looks like that both - 'i2c-core.c: of_i2c_register_devices' and
> >>> 'drm_mipi_dsi.c: mipi_dsi_host_register' are registering their devices
> >>> by iterating over devicetree child nodes with
> >>> for_each_available_child_of_node.
> >>>
> >>> Since I can't make the bridge a child node of both, I don't know how to
> >>> resolve it.
> >>
> >> Found the answer myself. adv7533 driver is a good example. Devicetree
> >> exists for qcom apq8016-sbc. No need to make the bridge a MIPI DSI child
> >> node.
> >
> > This is an issue that has largely been ignored so far in Linux. Both DT
> > and the Linux kernel device model organize devices in a tree structure
> > based on the control buses. Devices that are connected to multiple control
> > buses haven't been taken into account in the design and are thus hard to
> > support.
> >
> > As you may know, DSI can work in command mode or data mode. In data mode
> > the DSI bus is only use to transfer video data, while in command mode it
> > is also used to control the device (reading and writing registers).
>
> I am not sure what you mean by data and command mode. MIPI DSI specs
> says about video and command mode - modes to transfer video data. In
> both cases DSI can be used to control the device.
Sorry, I meant pure video mode, when a panel only uses DSI to receive video
data but handles all control communication through a separate control bus.
> > A DSI device operating in data mode and controlled through I2C isn't a
> > problem, as there's a single control bus in that case. The device should
> > be a child of the I2C controller in DT, and will be instantiated through
> > of_i2c_register_devices(). A DSI device operating in command mode without
> > any other control bus isn't a problem either, it will be a child of the
> > DSI master in DT, and will bee instantiated through
> > mipi_dsi_host_register().
> >
> > A DSI device operating in command mode that also require configuration
> > through a separate control bus (such as I2C, but also SPI) is much more
> > problematic to support. Fortunately those devices are rare. Hopefully
> > your device won't fall in this category. If it does, we can discuss how
> > to best support it.
>
> As you have already found adv bridge is a good example. It is not clear
> from the emails if DSI is used only to send video, or also to control?
> And if to control, is it used to pass only specific commands
> or can be used as alternative to i2c interface?
Carsten, could you please provide more information about the panel you're
using ?
--
Regards,
Laurent Pinchart
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel
next prev parent reply other threads:[~2018-04-05 11:39 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-04-03 15:59 DRM MIPI DSI device and I2C device? Carsten Behling
2018-04-04 8:41 ` Fwd: " Carsten Behling
2018-04-05 10:28 ` Laurent Pinchart
2018-04-05 11:28 ` Andrzej Hajda
2018-04-05 11:39 ` Laurent Pinchart [this message]
2018-04-05 11:51 ` Carsten Behling
2018-04-05 12:54 ` Andrzej Hajda
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=2777438.tfU50M0jG6@avalon \
--to=laurent.pinchart@ideasonboard.com \
--cc=a.hajda@samsung.com \
--cc=carsten.behling@googlemail.com \
--cc=dri-devel@lists.freedesktop.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.