Message ID | 20241227-a133-display-support-v1-0-abad35b3579c@linumiz.com (mailing list archive) |
---|---|
Headers | show |
Series | Add support for A100/A133 display | expand |
On 12/27/24 6:30 PM, Parthiban Nallathambi wrote: > This series depends on [1] for the eMMC/MMC controller to work and > [2] (lined up for 6.14) which adds support for the sram nodes and > display engine extends it's usage. Idea of this series to get initial > feedback and adjust, which will be rebased for 6.14 once [2] is merged. > > This patch series adds support for A133 display pipeline based on > LVDS. dt-bindigs are organized in the start and later with code > changes. > > PHY is shared between DSI and LVDS, so to control the PHY specific > to DSI/LVDS, phy_ops set_mode is introduced. To enable the DSI > using set_mode, analog control register MIPI Enable is used, which > may not be available for A31 (shares the same driver). > > Otherwise, A133 also got hidden independent display engine i.e > mixer + tcon top to handle parallel display. But this patch series > adds only support for the 1 mixer which is documented. > > [1]: https://lore.kernel.org/linux-sunxi/20241109003739.3440904-1-masterr3c0rd@epochal.quest/ > [2]: https://lore.kernel.org/linux-sunxi/20241218-a100-syscon-v2-0-dae60b9ce192@epochal.quest/ > > Signed-off-by: Parthiban Nallathambi <parthiban@linumiz.com> Apologize for polluting with resend again. My internal mail server got blocked due to volume count, which resulted in incomplete series again. I will fix the mail server issue before resending the series. Sorry. Thanks, Parthiban
This series depends on [1] for the eMMC/MMC controller to work and [2] (lined up for 6.14) which adds support for the sram nodes and display engine extends it's usage. Idea of this series to get initial feedback and adjust, which will be rebased for 6.14 once [2] is merged. This patch series adds support for A133 display pipeline based on LVDS. dt-bindigs are organized in the start and later with code changes. PHY is shared between DSI and LVDS, so to control the PHY specific to DSI/LVDS, phy_ops set_mode is introduced. To enable the DSI using set_mode, analog control register MIPI Enable is used, which may not be available for A31 (shares the same driver). Otherwise, A133 also got hidden independent display engine i.e mixer + tcon top to handle parallel display. But this patch series adds only support for the 1 mixer which is documented. [1]: https://lore.kernel.org/linux-sunxi/20241109003739.3440904-1-masterr3c0rd@epochal.quest/ [2]: https://lore.kernel.org/linux-sunxi/20241218-a100-syscon-v2-0-dae60b9ce192@epochal.quest/ Signed-off-by: Parthiban Nallathambi <parthiban@linumiz.com> --- Parthiban Nallathambi (22): dt-bindings: iommu: sun50i: remove resets from required property dt-bindings: display: sunxi: Add a100/a133 display engine compatibles dt-bindings: clock: sun8i de2 clock: Add PLL com clock dt-bindings: clock: sun8i de2 clock: Add a100/a133 compatible dt-bindings: display: sun4i: add phy property dt-bindings: display: sun4i: add a100/a133 tcon lcd dt-bindings: vendor-prefixes: Shenzhen Baijie Technology dt-bindings: arm: sunxi: document Szbaijie A133 helper board iommu: sun50i: make reset control optional pinctrl: sunxi: add missed lvds pins for a100/a133 drm/sun4i: Add support for a100/a133 display engine drm/sun4i: Add support for a100/a133 mixer drm/sun4i: make tcon top tv0 optional drm/sun4i: add a100/a133 tcon top quirks clk: sunxi-ng: sun8i-de2: add pll-com clock support clk: sunxi-ng: sun8i-de2: Add support for a100/a133 phy: allwinner: phy-sun6i-mipi-dphy: add LVDS support drm/sun4i: tcon: add a100/a133 lcd controller support arm64: dts: allwinner: a100: add iommu clk: sunxi-ng: add missing pll-com binding arm64: dts: allwinner: a100: add display pipeline arm64: dts: allwinner: a133: add szbaijie helper board Documentation/devicetree/bindings/arm/sunxi.yaml | 6 + .../clock/allwinner,sun8i-a83t-de2-clk.yaml | 6 + .../allwinner,sun4i-a10-display-engine.yaml | 2 + .../bindings/display/allwinner,sun4i-a10-tcon.yaml | 7 + .../display/allwinner,sun8i-a83t-de2-mixer.yaml | 1 + .../display/allwinner,sun8i-r40-tcon-top.yaml | 17 ++ .../bindings/iommu/allwinner,sun50i-h6-iommu.yaml | 1 - .../devicetree/bindings/vendor-prefixes.yaml | 2 + arch/arm64/boot/dts/allwinner/Makefile | 1 + arch/arm64/boot/dts/allwinner/sun50i-a100.dtsi | 165 ++++++++++++++++++ .../dts/allwinner/sun50i-a133-helper-board.dts | 129 ++++++++++++++ .../dts/allwinner/sun50i-a133-helper-core.dtsi | 190 +++++++++++++++++++++ drivers/clk/sunxi-ng/ccu-sun8i-de2.c | 23 ++- drivers/gpu/drm/sun4i/sun4i_drv.c | 1 + drivers/gpu/drm/sun4i/sun4i_tcon.c | 23 +++ drivers/gpu/drm/sun4i/sun8i_mixer.c | 13 ++ drivers/gpu/drm/sun4i/sun8i_tcon_top.c | 42 +++-- drivers/iommu/sun50i-iommu.c | 2 +- drivers/phy/allwinner/phy-sun6i-mipi-dphy.c | 23 ++- drivers/pinctrl/sunxi/pinctrl-sun50i-a100.c | 12 ++ include/dt-bindings/clock/sun50i-a100-ccu.h | 1 + 21 files changed, 645 insertions(+), 22 deletions(-) --- base-commit: 6c086b91df8c6619239c6d6d6cbf6ae50da6c110 change-id: 20241126-a133-display-support-ab43af32180a Best regards,