1b16ed1e6SMirela Rabulea# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 2b16ed1e6SMirela Rabulea%YAML 1.2 3b16ed1e6SMirela Rabulea--- 4b16ed1e6SMirela Rabulea$id: http://devicetree.org/schemas/media/nxp,imx8-jpeg.yaml# 5b16ed1e6SMirela Rabulea$schema: http://devicetree.org/meta-schemas/core.yaml# 6b16ed1e6SMirela Rabulea 7dd3cb467SAndrew Lunntitle: i.MX8QXP/QM JPEG decoder/encoder 8b16ed1e6SMirela Rabulea 9b16ed1e6SMirela Rabuleamaintainers: 10b16ed1e6SMirela Rabulea - Mirela Rabulea <mirela.rabulea@nxp.com> 11b16ed1e6SMirela Rabulea 12b16ed1e6SMirela Rabuleadescription: |- 13b16ed1e6SMirela Rabulea The JPEG decoder/encoder present in iMX8QXP and iMX8QM SoCs is an 14b16ed1e6SMirela Rabulea ISO/IEC 10918-1 JPEG standard compliant decoder/encoder, for Baseline 15b16ed1e6SMirela Rabulea and Extended Sequential DCT modes. 16b16ed1e6SMirela Rabulea 17b16ed1e6SMirela Rabuleaproperties: 18b16ed1e6SMirela Rabulea compatible: 1971822646SMirela Rabulea oneOf: 2071822646SMirela Rabulea - items: 2171822646SMirela Rabulea enum: 22b16ed1e6SMirela Rabulea - nxp,imx8qxp-jpgdec 23b16ed1e6SMirela Rabulea - nxp,imx8qxp-jpgenc 2471822646SMirela Rabulea - items: 25*401fb195SFrank Li - enum: 26*401fb195SFrank Li - nxp,imx8qm-jpgdec 27*401fb195SFrank Li - nxp,imx95-jpgdec 2871822646SMirela Rabulea - const: nxp,imx8qxp-jpgdec 2971822646SMirela Rabulea - items: 30*401fb195SFrank Li - enum: 31*401fb195SFrank Li - nxp,imx8qm-jpgenc 32*401fb195SFrank Li - nxp,imx95-jpgenc 3371822646SMirela Rabulea - const: nxp,imx8qxp-jpgenc 34b16ed1e6SMirela Rabulea 35b16ed1e6SMirela Rabulea reg: 36b16ed1e6SMirela Rabulea maxItems: 1 37b16ed1e6SMirela Rabulea 38e32b4567SFabio Estevam clocks: 39e32b4567SFabio Estevam items: 40e32b4567SFabio Estevam - description: AXI DMA engine clock for fetching JPEG bitstream from memory (per) 41e32b4567SFabio Estevam - description: IP bus clock for register access (ipg) 42e32b4567SFabio Estevam 43b16ed1e6SMirela Rabulea interrupts: 44b16ed1e6SMirela Rabulea description: | 45b16ed1e6SMirela Rabulea There are 4 slots available in the IP, which the driver may use 46b16ed1e6SMirela Rabulea If a certain slot is used, it should have an associated interrupt 47b16ed1e6SMirela Rabulea The interrupt with index i is assumed to be for slot i 48b16ed1e6SMirela Rabulea minItems: 1 # At least one slot is needed by the driver 49b16ed1e6SMirela Rabulea maxItems: 4 # The IP has 4 slots available for use 50b16ed1e6SMirela Rabulea 51b16ed1e6SMirela Rabulea power-domains: 52b16ed1e6SMirela Rabulea description: 53b16ed1e6SMirela Rabulea List of phandle and PM domain specifier as documented in 54b16ed1e6SMirela Rabulea Documentation/devicetree/bindings/power/power_domain.txt 55*401fb195SFrank Li minItems: 1 # Wrapper and all slots 56b16ed1e6SMirela Rabulea maxItems: 5 # Wrapper and 4 slots 57b16ed1e6SMirela Rabulea 58b16ed1e6SMirela Rabulearequired: 59b16ed1e6SMirela Rabulea - compatible 60b16ed1e6SMirela Rabulea - reg 61e32b4567SFabio Estevam - clocks 62b16ed1e6SMirela Rabulea - interrupts 63b16ed1e6SMirela Rabulea - power-domains 64b16ed1e6SMirela Rabulea 65*401fb195SFrank LiallOf: 66*401fb195SFrank Li - if: 67*401fb195SFrank Li properties: 68*401fb195SFrank Li compatible: 69*401fb195SFrank Li contains: 70*401fb195SFrank Li enum: 71*401fb195SFrank Li - nxp,imx95-jpgenc 72*401fb195SFrank Li - nxp,imx95-jpgdec 73*401fb195SFrank Li then: 74*401fb195SFrank Li properties: 75*401fb195SFrank Li power-domains: 76*401fb195SFrank Li maxItems: 1 77*401fb195SFrank Li else: 78*401fb195SFrank Li properties: 79*401fb195SFrank Li power-domains: 80*401fb195SFrank Li minItems: 2 # Wrapper and 1 slot 81*401fb195SFrank Li 82*401fb195SFrank Li 83b16ed1e6SMirela RabuleaadditionalProperties: false 84b16ed1e6SMirela Rabulea 85b16ed1e6SMirela Rabuleaexamples: 86b16ed1e6SMirela Rabulea - | 87e32b4567SFabio Estevam #include <dt-bindings/clock/imx8-lpcg.h> 88b16ed1e6SMirela Rabulea #include <dt-bindings/interrupt-controller/arm-gic.h> 89b16ed1e6SMirela Rabulea #include <dt-bindings/firmware/imx/rsrc.h> 90b16ed1e6SMirela Rabulea 91b16ed1e6SMirela Rabulea jpegdec: jpegdec@58400000 { 92b16ed1e6SMirela Rabulea compatible = "nxp,imx8qxp-jpgdec"; 93b16ed1e6SMirela Rabulea reg = <0x58400000 0x00050000 >; 94e32b4567SFabio Estevam clocks = <&img_jpeg_dec_lpcg IMX_LPCG_CLK_0>, 95e32b4567SFabio Estevam <&img_jpeg_dec_lpcg IMX_LPCG_CLK_4>; 96b16ed1e6SMirela Rabulea interrupts = <GIC_SPI 309 IRQ_TYPE_LEVEL_HIGH>, 97b16ed1e6SMirela Rabulea <GIC_SPI 310 IRQ_TYPE_LEVEL_HIGH>, 98b16ed1e6SMirela Rabulea <GIC_SPI 311 IRQ_TYPE_LEVEL_HIGH>, 99b16ed1e6SMirela Rabulea <GIC_SPI 312 IRQ_TYPE_LEVEL_HIGH>; 100b16ed1e6SMirela Rabulea power-domains = <&pd IMX_SC_R_MJPEG_DEC_MP>, 101b16ed1e6SMirela Rabulea <&pd IMX_SC_R_MJPEG_DEC_S0>, 102b16ed1e6SMirela Rabulea <&pd IMX_SC_R_MJPEG_DEC_S1>, 103b16ed1e6SMirela Rabulea <&pd IMX_SC_R_MJPEG_DEC_S2>, 104b16ed1e6SMirela Rabulea <&pd IMX_SC_R_MJPEG_DEC_S3>; 105b16ed1e6SMirela Rabulea }; 106b16ed1e6SMirela Rabulea 107b16ed1e6SMirela Rabulea jpegenc: jpegenc@58450000 { 10871822646SMirela Rabulea compatible = "nxp,imx8qm-jpgenc", "nxp,imx8qxp-jpgenc"; 109b16ed1e6SMirela Rabulea reg = <0x58450000 0x00050000 >; 110e32b4567SFabio Estevam clocks = <&img_jpeg_enc_lpcg IMX_LPCG_CLK_0>, 111e32b4567SFabio Estevam <&img_jpeg__lpcg IMX_LPCG_CLK_4>; 112b16ed1e6SMirela Rabulea interrupts = <GIC_SPI 305 IRQ_TYPE_LEVEL_HIGH>, 113b16ed1e6SMirela Rabulea <GIC_SPI 306 IRQ_TYPE_LEVEL_HIGH>, 114b16ed1e6SMirela Rabulea <GIC_SPI 307 IRQ_TYPE_LEVEL_HIGH>, 115b16ed1e6SMirela Rabulea <GIC_SPI 308 IRQ_TYPE_LEVEL_HIGH>; 116b16ed1e6SMirela Rabulea power-domains = <&pd IMX_SC_R_MJPEG_ENC_MP>, 117b16ed1e6SMirela Rabulea <&pd IMX_SC_R_MJPEG_ENC_S0>, 118b16ed1e6SMirela Rabulea <&pd IMX_SC_R_MJPEG_ENC_S1>, 119b16ed1e6SMirela Rabulea <&pd IMX_SC_R_MJPEG_ENC_S2>, 120b16ed1e6SMirela Rabulea <&pd IMX_SC_R_MJPEG_ENC_S3>; 121b16ed1e6SMirela Rabulea }; 122b16ed1e6SMirela Rabulea... 123