Hi,
On Mon, Apr 19, 2021 at 12:33:42AM +0800, Kevin Tang wrote:
Maxime Ripard maxime@cerno.tech 于2021年4月15日周四 下午4:42写道:
On Fri, Apr 09, 2021 at 08:23:19AM +0800, Kevin Tang wrote:
Maxime Ripard maxime@cerno.tech 于2021年4月7日周三 下午6:46写道:
On Wed, Mar 31, 2021 at 09:49:14AM +0800, Kevin Tang wrote:
Hi Maxime,
Maxime Ripard maxime@cerno.tech 于2021年3月24日周三 下午7:13写道:
On Mon, Feb 22, 2021 at 09:28:21PM +0800, Kevin Tang wrote: > From: Kevin Tang kevin.tang@unisoc.com > > Adds MIPI DSI Controller > support for Unisoc's display subsystem. > > Cc: Orson Zhai orsonzhai@gmail.com > Cc: Chunyan Zhang zhang.lyra@gmail.com > Signed-off-by: Kevin Tang kevin.tang@unisoc.com > Reviewed-by: Rob Herring robh@kernel.org > --- > .../display/sprd/sprd,sharkl3-dsi-host.yaml | 102
++++++++++++++++++
> 1 file changed, 102 insertions(+) > create mode 100644
Documentation/devicetree/bindings/display/sprd/sprd,sharkl3-dsi-host.yaml
> > diff --git
a/Documentation/devicetree/bindings/display/sprd/sprd,sharkl3-dsi-host.yaml
b/Documentation/devicetree/bindings/display/sprd/sprd,sharkl3-dsi-host.yaml
> new file mode 100644 > index 000000000..d439f688f > --- /dev/null > +++
b/Documentation/devicetree/bindings/display/sprd/sprd,sharkl3-dsi-host.yaml
> @@ -0,0 +1,102 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/display/sprd/sprd,sharkl3-dsi-host.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Unisoc MIPI DSI Controller > + > +maintainers: > + - Kevin Tang kevin.tang@unisoc.com > + > +properties: > + compatible: > + const: sprd,sharkl3-dsi-host > + > + reg: > + maxItems: 1 > + > + interrupts: > + maxItems: 2 > + > + clocks: > + minItems: 1 > + > + clock-names: > + items: > + - const: clk_src_96m > + > + power-domains: > + maxItems: 1 > + > + ports: > + type: object > + > + properties: > + "#address-cells": > + const: 1 > + > + "#size-cells": > + const: 0 > + > + port@0: > + type: object > + description: > + A port node with endpoint definitions as defined in > +
Documentation/devicetree/bindings/media/video-interfaces.txt.
> + That port should be the input endpoint, usually coming
from
> + the associated DPU. > + port@1: > + type: object > + description: > + A port node with endpoint definitions as defined in > +
Documentation/devicetree/bindings/media/video-interfaces.txt.
> + That port should be the output endpoint, usually output to > + the associated panel.
The DSI generic binding asks that peripherals that are controlled through a DCS be a subnode of the MIPI-DSI bus, not through a port endpoint.
Our DSI controller don't support DCS now...
I'm not sure I follow you, you mentionned in the patch 4 that you were testing for a device to be in command mode, how would that work without DCS support?
Sorry, I see DCS as DSC, pls ignore my previous comments.
dsi input node is display controller and dsi output node is panel, I still don't understand what it has to do with dcs? and it seems that other vendors also like this.
can you help provide some cases?
So the device tree is a tree organized through which bus controls which device: Your DSI controller is accessed through a memory-mapped region and is thus a child node of the main bus (I guess?) and then, since the DSI panel is going to be controlled through the DSI controller and MIPI-DCS, it needs to be a child of the display controller.
Yeah, access DSI controller registers is through AHB bus.
I'm a little confused, DSI panel node should be a child of the display controller?
If they are controlled through DSI, yes.
I found a lot of cases are organized like this, we also do like it. https://elixir.bootlin.com/linux/v5.11.15/source/arch/arm/boot/dts/tegra114-...
This is exactly what is being described here: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Docu...
The second port is thus not needed at all
Yeah, dsi_out port is no need, should be detele. Besides, I also have a question, if out dsi-phy is separate driver(eg, dphy have it's own bus) dsi_out port should be "dphy_in"?
You could argue both, but phys are usually represented through the phys property.
Maxime