An issue[1] related to how the V4L2_FWNODE_BUS_TYPE_PARALLEL flag is mis-used was found in recent addition to the anx7625 driver.
As used currently CPI (camera parallel interface) and DPI (display parallel interface) would share the V4L2_FWNODE_BUS_TYPE_PARALLEL enum. I think that would be perfectly functional, but it is not what V4L2_FWNODE_BUS_TYPE_PARALLEL is documented to represent. As far as I can see it's only intended to represent CPI.
Instead of having V4L2_FWNODE_BUS_TYPE_PARALLEL represent two standards, I think they should be split. And possibly V4L2_FWNODE_BUS_TYPE_PARALLEL should be renamed for CPI, but that is a separate story. This would provide for the neatest and most legible solution. If this solution is implemented, this range would be incorrect. Additionally the snippet reverted in 2/2 of this series would no longer be valid.
As it stands V4L2_FWNODE_BUS_TYPE_PARALLEL was used to represent DPI due to not being caught in the review process.
In order to not introduce this issue into the ABI, let's revert the changes to the anx7625 dt-binding related to this.
[1] https://lore.kernel.org/all/YiTruiCIkyxs3jTC@pendragon.ideasonboard.com/
Robert Foss (2): dt-bindings: drm/bridge: anx7625: Revert DPI support Revert "arm64: dts: mt8183: jacuzzi: Fix bus properties in anx's DSI endpoint"
.../display/bridge/analogix,anx7625.yaml | 19 +------------------ .../dts/mediatek/mt8183-kukui-jacuzzi.dtsi | 2 -- 2 files changed, 1 insertion(+), 20 deletions(-)
Revert DPI support from binding.
DPI support relies on the bus-type enum which does not yet support Mipi DPI, since no v4l2_fwnode_bus_type has been defined for this bus type.
When DPI for anx7625 was initially added, it assumed that V4L2_FWNODE_BUS_TYPE_PARALLEL was the correct bus type for representing DPI, which it is not.
In order to prevent adding this mis-usage to the ABI, let's revert the support.
Signed-off-by: Robert Foss robert.foss@linaro.org Reviewed-by: Laurent Pinchart laurent.pinchart@ideasonboard.com ---
Changes since v1: - Rob: Instead of reverting the entire commit introducing this, do a partial revert of only the relevant parts.
.../display/bridge/analogix,anx7625.yaml | 19 +------------------ 1 file changed, 1 insertion(+), 18 deletions(-)
diff --git a/Documentation/devicetree/bindings/display/bridge/analogix,anx7625.yaml b/Documentation/devicetree/bindings/display/bridge/analogix,anx7625.yaml index 1d3e88daca041..25b5ef3f759ca 100644 --- a/Documentation/devicetree/bindings/display/bridge/analogix,anx7625.yaml +++ b/Documentation/devicetree/bindings/display/bridge/analogix,anx7625.yaml @@ -91,22 +91,7 @@ properties: $ref: /schemas/graph.yaml#/$defs/port-base unevaluatedProperties: false description: - MIPI DSI/DPI input. - - properties: - endpoint: - $ref: /schemas/media/video-interfaces.yaml# - type: object - additionalProperties: false - - properties: - remote-endpoint: true - - bus-type: - enum: [1, 5] - default: 1 - - data-lanes: true + Video port for MIPI DSI input.
port@1: $ref: /schemas/graph.yaml#/properties/port @@ -155,8 +140,6 @@ examples: reg = <0>; anx7625_in: endpoint { remote-endpoint = <&mipi_dsi>; - bus-type = <5>; - data-lanes = <0 1 2 3>; }; };
On Tue, Mar 8, 2022 at 3:49 AM Robert Foss robert.foss@linaro.org wrote:
Revert DPI support from binding.
DPI support relies on the bus-type enum which does not yet support Mipi DPI, since no v4l2_fwnode_bus_type has been defined for this bus type.
When DPI for anx7625 was initially added, it assumed that V4L2_FWNODE_BUS_TYPE_PARALLEL was the correct bus type for representing DPI, which it is not.
In order to prevent adding this mis-usage to the ABI, let's revert the support.
Signed-off-by: Robert Foss robert.foss@linaro.org Reviewed-by: Laurent Pinchart laurent.pinchart@ideasonboard.com
Changes since v1:
- Rob: Instead of reverting the entire commit introducing this, do a partial revert of only the relevant parts.
.../display/bridge/analogix,anx7625.yaml | 19 +------------------ 1 file changed, 1 insertion(+), 18 deletions(-)
Reviewed-by: Rob Herring robh@kernel.org
This reverts commit 32568ae37596b529628ac09b875f4874e614f63f.
Signed-off-by: Robert Foss robert.foss@linaro.org Reviewed-by: Chen-Yu Tsai wenst@chromium.org Reviewed-by: Laurent Pinchart laurent.pinchart@ideasonboard.com --- arch/arm64/boot/dts/mediatek/mt8183-kukui-jacuzzi.dtsi | 2 -- 1 file changed, 2 deletions(-)
diff --git a/arch/arm64/boot/dts/mediatek/mt8183-kukui-jacuzzi.dtsi b/arch/arm64/boot/dts/mediatek/mt8183-kukui-jacuzzi.dtsi index e8f133dc96b95..8f7bf33f607da 100644 --- a/arch/arm64/boot/dts/mediatek/mt8183-kukui-jacuzzi.dtsi +++ b/arch/arm64/boot/dts/mediatek/mt8183-kukui-jacuzzi.dtsi @@ -171,8 +171,6 @@ port@0 {
anx7625_in: endpoint { remote-endpoint = <&dsi_out>; - bus-type = <5>; - data-lanes = <0 1 2 3>; }; };
On 08/03/2022 10:49, Robert Foss wrote:
This reverts commit 32568ae37596b529628ac09b875f4874e614f63f.
Signed-off-by: Robert Foss robert.foss@linaro.org Reviewed-by: Chen-Yu Tsai wenst@chromium.org Reviewed-by: Laurent Pinchart laurent.pinchart@ideasonboard.com
Acked-by: Matthias Brugger matthias.bgg@gmail.com
arch/arm64/boot/dts/mediatek/mt8183-kukui-jacuzzi.dtsi | 2 -- 1 file changed, 2 deletions(-)
diff --git a/arch/arm64/boot/dts/mediatek/mt8183-kukui-jacuzzi.dtsi b/arch/arm64/boot/dts/mediatek/mt8183-kukui-jacuzzi.dtsi index e8f133dc96b95..8f7bf33f607da 100644 --- a/arch/arm64/boot/dts/mediatek/mt8183-kukui-jacuzzi.dtsi +++ b/arch/arm64/boot/dts/mediatek/mt8183-kukui-jacuzzi.dtsi @@ -171,8 +171,6 @@ port@0 {
anx7625_in: endpoint { remote-endpoint = <&dsi_out>;
bus-type = <5>;
};data-lanes = <0 1 2 3>; };
dri-devel@lists.freedesktop.org