Re: [linux-sunxi] Allwinner A13 (Olimex A13SOM) DRM support

2020-12-11 Thread Chen-Yu Tsai
On Sat, Dec 12, 2020 at 3:33 AM Sergio Sota wrote: > > Hi Clement, > > yes, tve0 is only for VGA/CVBS video output (which we don't use right now) > But just in case we have enabled this controller and the result is the same. > > You're probably right about the I2C port (as the binding suggest)

Re: [linux-sunxi] Allwinner A13 (Olimex A13SOM) DRM support

2020-12-11 Thread Sergio Sota
Hi *Clement*, yes, *tve0* is only for *VGA/CVBS* video output (which we don't use right now) But just in case *we have enabled this controller and the result is the same*. You're probably right about the *I2C* port (as the binding suggest) The thing is we are using the *olimex olinuxino tft

Re: [linux-sunxi] Allwinner A13 (Olimex A13SOM) DRM support

2020-12-11 Thread Clément Péron
Hi Sergio, Sorry looks like the tve0 is only required for composite / VGA output. Which LCD Panel do you use ? Looks like the bindings you are using should be declared on a I2C bus.

Re: [linux-sunxi] Allwinner A13 (Olimex A13SOM) DRM support

2020-12-11 Thread Clément Péron
Hi Sergio, Maybe you missed enabling tve0 ? https://elixir.bootlin.com/linux/v5.9.13/source/arch/arm/boot/dts/sun5i.dtsi#L244 Also could you send the bootlog is this doesn't fix your issue. Clement On Fri, 11 Dec 2020 at 17:13, Sergio Sota wrote: > > Hi Clement, > > this week we have had no

Re: [linux-sunxi] Allwinner A13 (Olimex A13SOM) DRM support

2020-12-11 Thread Sergio Sota
Hi* Clement,* this week we have had no luck with *Allwinner A13* *video decoding*, here you can find my *device tree*. We have added *panel description* (before we used an uboot configuration) *front-end*, *back-end* and *tcon*. Also on linux mainline kernel (5.9.11) we have selected

[linux-sunxi] [PATCH v3 15/15] MAINTAINERS: Add entry for the Allwinner A83T MIPI CSI-2 bridge

2020-12-11 Thread Paul Kocialkowski
Add myself as maintainer of the A83T MIPI CSI-2 bridge media driver. Signed-off-by: Paul Kocialkowski --- MAINTAINERS | 8 1 file changed, 8 insertions(+) diff --git a/MAINTAINERS b/MAINTAINERS index a1352171778b..3b48612657b6 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -717,6

[linux-sunxi] [PATCH v3 14/15] ARM: dts: sun8i: a83t: Add MIPI CSI-2 controller node

2020-12-11 Thread Paul Kocialkowski
MIPI CSI-2 is supported on the A83T with a dedicated controller that covers both the protocol and D-PHY. It can be connected to the CSI interface as a V4L2 subdev through the fwnode graph. This is not done by default since connecting the bridge without a subdev attached to it will cause a failure

[linux-sunxi] [PATCH v3 13/15] media: sunxi: Add support for the A83T MIPI CSI-2 controller

2020-12-11 Thread Paul Kocialkowski
The A83T supports MIPI CSI-2 with a composite controller, covering both the protocol logic and the D-PHY implementation. This controller seems to be found on the A83T only and probably was abandoned since. This implementation splits the protocol and D-PHY registers and uses the PHY framework

[linux-sunxi] [PATCH v3 12/15] dt-bindings: media: Add A83T MIPI CSI-2 bindings documentation

2020-12-11 Thread Paul Kocialkowski
This introduces YAML bindings documentation for the A83T MIPI CSI-2 controller. Signed-off-by: Paul Kocialkowski Reviewed-by: Rob Herring --- .../media/allwinner,sun8i-a83t-mipi-csi2.yaml | 147 ++ 1 file changed, 147 insertions(+) create mode 100644

[linux-sunxi] [PATCH v3 11/15] MAINTAINERS: Add entry for the Allwinner A31 MIPI CSI-2 bridge

2020-12-11 Thread Paul Kocialkowski
Add myself as maintainer of the A31 MIPI CSI-2 bridge media driver. Signed-off-by: Paul Kocialkowski --- MAINTAINERS | 8 1 file changed, 8 insertions(+) diff --git a/MAINTAINERS b/MAINTAINERS index 0644128640fb..a1352171778b 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -709,6

[linux-sunxi] [PATCH v3 10/15] ARM: dts: sun8i: v3s: Add nodes for MIPI CSI-2 support

2020-12-11 Thread Paul Kocialkowski
MIPI CSI-2 is supported on the V3s with an A31-based MIPI CSI-2 bridge controller. The controller uses a separate D-PHY, which is the same that is otherwise used for MIPI DSI, but used in Rx mode. On the V3s, the CSI0 controller is dedicated to MIPI CSI-2 as it does not have access to any

[linux-sunxi] [PATCH v3 09/15] media: sunxi: Add support for the A31 MIPI CSI-2 controller

2020-12-11 Thread Paul Kocialkowski
The A31 MIPI CSI-2 controller is a dedicated MIPI CSI-2 bridge found on Allwinner SoCs such as the A31 and V3/V3s. It is a standalone block, connected to the CSI controller on one side and to the MIPI D-PHY block on the other. It has a dedicated address space, interrupt line and clock. It is

[linux-sunxi] [PATCH v3 08/15] dt-bindings: media: Add A31 MIPI CSI-2 bindings documentation

2020-12-11 Thread Paul Kocialkowski
This introduces YAML bindings documentation for the A31 MIPI CSI-2 controller. Signed-off-by: Paul Kocialkowski --- .../media/allwinner,sun6i-a31-mipi-csi2.yaml | 149 ++ 1 file changed, 149 insertions(+) create mode 100644

[linux-sunxi] [PATCH v3 07/15] media: sun6i-csi: Add support for MIPI CSI-2 bridge input

2020-12-11 Thread Paul Kocialkowski
The A31 CSI controller supports a MIPI CSI-2 bridge input, which has its own dedicated port in the fwnode graph. Support for this input is added with this change: - two pads are defined for the media entity instead of one and only one needs to be connected at a time; - the pads currently match

[linux-sunxi] [PATCH v3 06/15] dt-bindings: media: sun6i-a31-csi: Add MIPI CSI-2 input port

2020-12-11 Thread Paul Kocialkowski
The A31 CSI controller supports two distinct input interfaces: parallel and an external MIPI CSI-2 bridge. The parallel interface is often connected to a set of hardware pins while the MIPI CSI-2 bridge is an internal FIFO-ish link. As a result, these two inputs are distinguished as two different

[linux-sunxi] [PATCH v3 05/15] media: sun6i-csi: Only configure the interface data width for parallel

2020-12-11 Thread Paul Kocialkowski
Bits related to the interface data width are only applicable to the parallel interface and are irrelevant when the CSI controller is taking input from the MIPI CSI-2 controller. In prevision of adding support for this case, set these bits conditionally so there is no ambiguity. The conditional

[linux-sunxi] [PATCH v3 04/15] media: sun6i-csi: Use common V4L2 format info for storage bpp

2020-12-11 Thread Paul Kocialkowski
V4L2 has a common helper which can be used for calculating the number of stored bits per pixels of a given (stored) image format. Use the helper-returned structure instead of our own switch/case list. Note that a few formats are not in that list so we keep them as special cases. The custom

[linux-sunxi] [PATCH v3 03/15] phy: allwinner: phy-sun6i-mipi-dphy: Support D-PHY Rx mode for MIPI CSI-2

2020-12-11 Thread Paul Kocialkowski
The Allwinner A31 D-PHY supports both Rx and Tx modes. While the latter is already supported and used for MIPI DSI this adds support for the former, to be used with MIPI CSI-2. This implementation is inspired by Allwinner's V3s Linux SDK implementation, which was used as a documentation base.

[linux-sunxi] [PATCH v3 02/15] phy: Distinguish between Rx and Tx for MIPI D-PHY with submodes

2020-12-11 Thread Paul Kocialkowski
As some D-PHY controllers support both Rx and Tx mode, we need a way for users to explicitly request one or the other. For instance, Rx mode can be used along with MIPI CSI-2 while Tx mode can be used with MIPI DSI. Introduce new MIPI D-PHY PHY submodes to use with PHY_MODE_MIPI_DPHY. The default

[linux-sunxi] [PATCH v3 01/15] docs: phy: Add a part about PHY mode and submode

2020-12-11 Thread Paul Kocialkowski
Besides giving pointers to the relevant functions for PHY mode and submode configuration, this clarifies the need to set them before powering on the PHY. Signed-off-by: Paul Kocialkowski Reviewed-by: Maxime Ripard --- Documentation/driver-api/phy/phy.rst | 18 ++ 1 file

[linux-sunxi] [PATCH v3 00/15] Allwinner MIPI CSI-2 support for A31/V3s/A83T

2020-12-11 Thread Paul Kocialkowski
This series introduces support for MIPI CSI-2, with the A31 controller that is found on most SoCs (A31, V3s and probably V5) as well as the A83T-specific controller. While the former uses the same MIPI D-PHY that is already supported for DSI, the latter embeds its own D-PHY. In order to