Re: [PATCH 06/11] dt-bindings: display: sun4i-drm: Add A83T HDMI pipeline
From: Icenowy Zheng <icenowy@aosc.io>
Date: 2018-01-05 02:49:45
Also in:
dri-devel, linux-arm-kernel, linux-clk, lkml
于 2018年1月5日 GMT+08:00 上午2:52:10, Maxime Ripard [off-list ref] 写到:
On Wed, Jan 03, 2018 at 10:32:26PM +0100, Jernej Škrabec wrote:quoted
Hi Rob, Dne sreda, 03. januar 2018 ob 21:21:54 CET je Rob Herring napisal(a):quoted
On Sat, Dec 30, 2017 at 10:01:58PM +0100, Jernej Skrabec wrote:quoted
This commit adds all necessary compatibles and descriptionsneeded toquoted
quoted
quoted
implement A83T HDMI pipeline. Mixer is already properly described, so only compatible is added. However, A83T TCON1, which is connected to HDMI, doesn't havechannel 0,quoted
quoted
quoted
contrary to all TCONs currently described. Because of that, TCON documentation is extended. A83T features Synopsys DW HDMI controller with a custom PHY whichlooksquoted
quoted
quoted
like Synopsys Gen2 PHY with few additions. Since there is no documentation, needed properties were found out throughexperimentationquoted
quoted
quoted
and reading BSP code. At the end, example is added for newer SoCs, which features DE2and DWquoted
quoted
quoted
HDMI. Signed-off-by: Jernej Skrabec <redacted> --- .../bindings/display/sunxi/sun4i-drm.txt | 188 ++++++++++++++++++++- 1 file changed, 181 insertions(+), 7deletions(-)quoted
quoted
quoted
diff --gita/Documentation/devicetree/bindings/display/sunxi/sun4i-drm.txtquoted
quoted
quoted
b/Documentation/devicetree/bindings/display/sunxi/sun4i-drm.txtindexquoted
quoted
quoted
9f073af4c711..3eca258096a5 100644 ---a/Documentation/devicetree/bindings/display/sunxi/sun4i-drm.txtquoted
quoted
quoted
+++b/Documentation/devicetree/bindings/display/sunxi/sun4i-drm.txtquoted
quoted
quoted
@@ -64,6 +64,40 @@ Required properties: first port should be the input endpoint. The second shouldbe thequoted
quoted
quoted
output, usually to an HDMI connector. +DWC HDMI TX Encoder +----------------------------- + +The HDMI transmitter is a Synopsys DesignWare HDMI 1.4 TXcontroller IPquoted
quoted
quoted
+with Allwinner's own PHY IP. It supports audio and video outputsand CEC.quoted
quoted
quoted
+ +These DT bindings follow the Synopsys DWC HDMI TX bindingsdefined inquoted
quoted
quoted
+Documentation/devicetree/bindings/display/bridge/dw_hdmi.txtwith thequoted
quoted
quoted
+following device-specific properties. + +Required properties: + + - compatible: value must be one of: + * "allwinner,sun8i-a83t-dw-hdmi" + - reg: two pairs of base address and size of memory-mappedregion,quoted
quoted
quoted
first + for controller and second for PHY + registers.Seems like the phy should be a separate node and use the phybinding.quoted
quoted
You can use the phy binding even if you don't use the kernel phy framework...Unfortunately, it's not so straighforward. Phy is actually accessedthroughquoted
I2C implemented in HDMI controller. Second memory region in this casehasquoted
small influence on phy. However, it has big influence on controller.Forquoted
example, magic number has to be written in one register in secondmemoryquoted
region in order to unlock read access to any register from firstmemory regionquoted
(controller). However, they shouldn't be merged to one region,because firstquoted
memory region requires byte access while second memory region can beaccessedquoted
per byte or word. To complicate things more, later I want to add support for anotherSoC whichquoted
has same glue layer (unlocking read access, etc.) and uses memorymapped phyquoted
registers in second memory region. I think current binding is the least complicated way to representthis. I agree with Rob here. I did a similar thing for the DSI patches I've sent a few monthes ago and it turned out to not be that difficult, so I'm sure you can come up with something :)
In A83T/H3/A64/H5/R40 this part is not purely a PHY. It controls the access of main controller's register (e.g. read/write lock and register obfuscation). So it should be called a "glue" with PHY part (and on A83T seems a pure glue) but not a simple PHY.
Maxime -- Maxime Ripard, Free Electrons Embedded Linux and Kernel engineering http://free-electrons.com _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel