/linux/Documentation/devicetree/bindings/soc/mediatek/ |
H A D | mediatek,mutex.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Chun-Kuang Hu <chunkuang.hu@kernel.org> 11 - Philipp Zabel <p.zabel@pengutronix.de> 15 Start Of Frame (SOF) / End Of Frame (EOF) to each sub-modules on the display 27 - mediatek,mt2701-disp-mutex 28 - mediatek,mt2712-disp-mutex 29 - mediatek,mt6795-disp-mutex 30 - mediatek,mt8167-disp-mutex [all …]
|
/linux/Documentation/devicetree/bindings/pwm/ |
H A D | mediatek,pwm-disp.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/pwm/mediatek,pwm-disp.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Jitao Shi <jitao.shi@mediatek.com> 13 - $ref: pwm.yaml# 18 - enum: 19 - mediatek,mt2701-disp-pwm 20 - mediatek,mt6595-disp-pwm 21 - mediatek,mt8173-disp-pwm [all …]
|
/linux/arch/arm64/boot/dts/mediatek/ |
H A D | mt6795.dtsi | 1 // SPDX-License-Identifier: GPL-2.0-only 9 #include <dt-bindings/interrupt-controller/irq.h> 10 #include <dt-bindings/interrupt-controller/arm-gic.h> 11 #include <dt-bindings/clock/mediatek,mt6795-clk.h> 12 #include <dt-bindings/gce/mediatek,mt6795-gce.h> 13 #include <dt-bindings/memory/mt6795-larb-port.h> 14 #include <dt-bindings/pinctrl/mt6795-pinfunc.h> 15 #include <dt-bindings/power/mt6795-power.h> 16 #include <dt-bindings/reset/mediatek,mt6795-resets.h> 20 interrupt-parent = <&sysirq>; [all …]
|
H A D | mt8173.dtsi | 1 // SPDX-License-Identifier: GPL-2.0-only 7 #include <dt-bindings/clock/mt8173-clk.h> 8 #include <dt-bindings/interrupt-controller/irq.h> 9 #include <dt-bindings/interrupt-controller/arm-gic.h> 10 #include <dt-bindings/memory/mt8173-larb-port.h> 11 #include <dt-bindings/phy/phy.h> 12 #include <dt-bindings/power/mt8173-power.h> 13 #include <dt-bindings/reset/mt8173-resets.h> 14 #include <dt-bindings/gce/mt8173-gce.h> 15 #include <dt-bindings/thermal/thermal.h> [all …]
|
H A D | mt8188.dtsi | 1 // SPDX-License-Identifier: GPL-2.0+ 7 /dts-v1/; 8 #include <dt-bindings/clock/mediatek,mt8188-clk.h> 9 #include <dt-bindings/interrupt-controller/arm-gic.h> 10 #include <dt-bindings/interrupt-controller/irq.h> 11 #include <dt-bindings/mailbox/mediatek,mt8188-gce.h> 12 #include <dt-bindings/memory/mediatek,mt8188-memory-port.h> 13 #include <dt-bindings/phy/phy.h> 14 #include <dt-bindings/pinctrl/mediatek,mt8188-pinfunc.h> 15 #include <dt-bindings/power/mediatek,mt8188-power.h> [all …]
|
H A D | mt8186.dtsi | 1 // SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 4 * Author: Allen-KH Cheng <allen-kh.cheng@mediatek.com> 6 /dts-v1/; 7 #include <dt-bindings/clock/mt8186-clk.h> 8 #include <dt-bindings/gce/mt8186-gce.h> 9 #include <dt-bindings/interrupt-controller/arm-gic.h> 10 #include <dt-bindings/interrupt-controller/irq.h> 11 #include <dt-bindings/memory/mt8186-memory-port.h> 12 #include <dt-bindings/pinctrl/mt8186-pinfunc.h> 13 #include <dt-bindings/power/mt8186-power.h> [all …]
|
H A D | mt8183.dtsi | 1 // SPDX-License-Identifier: (GPL-2.0 OR MIT) 8 #include <dt-bindings/clock/mt8183-clk.h> 9 #include <dt-bindings/gce/mt8183-gce.h> 10 #include <dt-bindings/interrupt-controller/arm-gic.h> 11 #include <dt-bindings/interrupt-controller/irq.h> 12 #include <dt-bindings/memory/mt8183-larb-port.h> 13 #include <dt-bindings/power/mt8183-power.h> 14 #include <dt-bindings/reset/mt8183-resets.h> 15 #include <dt-bindings/phy/phy.h> 16 #include <dt-bindings/thermal/thermal.h> [all …]
|
H A D | mt8195.dtsi | 1 // SPDX-License-Identifier: (GPL-2.0 OR MIT) 7 /dts-v1/; 8 #include <dt-bindings/clock/mt8195-clk.h> 9 #include <dt-bindings/gce/mt8195-gce.h> 10 #include <dt-bindings/interrupt-controller/arm-gic.h> 11 #include <dt-bindings/interrupt-controller/irq.h> 12 #include <dt-bindings/memory/mt8195-memory-port.h> 13 #include <dt-bindings/phy/phy.h> 14 #include <dt-bindings/pinctrl/mt8195-pinfunc.h> 15 #include <dt-bindings/power/mt8195-power.h> [all …]
|
H A D | mt8192.dtsi | 1 // SPDX-License-Identifier: (GPL-2.0 OR MIT) 7 /dts-v1/; 8 #include <dt-bindings/clock/mt8192-clk.h> 9 #include <dt-bindings/gce/mt8192-gce.h> 10 #include <dt-bindings/interrupt-controller/arm-gic.h> 11 #include <dt-bindings/interrupt-controller/irq.h> 12 #include <dt-bindings/memory/mt8192-larb-port.h> 13 #include <dt-bindings/pinctrl/mt8192-pinfunc.h> 14 #include <dt-bindings/phy/phy.h> 15 #include <dt-bindings/power/mt8192-power.h> [all …]
|
/linux/Documentation/devicetree/bindings/display/mediatek/ |
H A D | mediatek,split.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Chun-Kuang Hu <chunkuang.hu@kernel.org> 11 - Philipp Zabel <p.zabel@pengutronix.de> 24 - enum: 25 - mediatek,mt8173-disp-split 26 - mediatek,mt8195-mdp3-split 27 - items: 28 - const: mediatek,mt6795-disp-split [all …]
|
H A D | mediatek,wdma.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Chun-Kuang Hu <chunkuang.hu@kernel.org> 11 - Philipp Zabel <p.zabel@pengutronix.de> 24 - enum: 25 - mediatek,mt8173-disp-wdma 26 - items: 27 - const: mediatek,mt6795-disp-wdma 28 - const: mediatek,mt8173-disp-wdma [all …]
|
/linux/drivers/gpu/drm/mediatek/ |
H A D | mtk_drm_drv.c | 1 // SPDX-License-Identifier: GPL-2.0-only 13 #include <linux/dma-mapping.h> 51 if (info->num_planes != 1) in mtk_drm_mode_fb_create() 52 return ERR_PTR(-EINVAL); in mtk_drm_mode_fb_create() 327 .min_width = 2, /* 2-pixel align when ethdr is bypassed */ 332 { .compatible = "mediatek,mt2701-mmsys", 334 { .compatible = "mediatek,mt7623-mmsys", 336 { .compatible = "mediatek,mt2712-mmsys", 338 { .compatible = "mediatek,mt8167-mmsys", 340 { .compatible = "mediatek,mt8173-mmsys", [all …]
|
H A D | mtk_disp_color.c | 1 // SPDX-License-Identifier: GPL-2.0-only 11 #include <linux/soc/mediatek/mtk-cmdq.h> 22 #define DISP_COLOR_START(comp) ((comp)->data->color_offset) 34 * struct mtk_disp_color - DISP_COLOR driver structure 50 return clk_prepare_enable(color->clk); in mtk_color_clk_enable() 57 clk_disable_unprepare(color->clk); in mtk_color_clk_disable() 66 mtk_ddp_write(cmdq_pkt, w, &color->cmdq_reg, color->regs, DISP_COLOR_WIDTH(color)); in mtk_color_config() 67 mtk_ddp_write(cmdq_pkt, h, &color->cmdq_reg, color->regs, DISP_COLOR_HEIGHT(color)); in mtk_color_config() 75 color->regs + DISP_COLOR_CFG_MAIN); in mtk_color_start() 76 writel(0x1, color->regs + DISP_COLOR_START(color)); in mtk_color_start() [all …]
|
H A D | mtk_disp_aal.c | 1 // SPDX-License-Identifier: GPL-2.0-only 12 #include <linux/soc/mediatek/mtk-cmdq.h> 40 * struct mtk_disp_aal - Display Adaptive Ambient Light driver structure 57 return clk_prepare_enable(aal->clk); in mtk_aal_clk_enable() 64 clk_disable_unprepare(aal->clk); in mtk_aal_clk_disable() 77 mtk_ddp_write(cmdq_pkt, sz, &aal->cmdq_reg, aal->regs, DISP_AAL_SIZE); in mtk_aal_config() 78 mtk_ddp_write(cmdq_pkt, sz, &aal->cmdq_reg, aal->regs, DISP_AAL_OUTPUT_SIZE); in mtk_aal_config() 82 * mtk_aal_gamma_get_lut_size() - Get gamma LUT size for AAL 91 if (aal->data && aal->data->has_gamma) in mtk_aal_gamma_get_lut_size() 104 if (!(aal->data && aal->data->has_gamma)) in mtk_aal_gamma_set() [all …]
|
H A D | mtk_disp_rdma.c | 1 // SPDX-License-Identifier: GPL-2.0-only 14 #include <linux/soc/mediatek/mtk-cmdq.h> 52 #define RDMA_FIFO_SIZE(rdma) ((rdma)->data->fifo_size) 78 * struct mtk_disp_rdma - DISP_RDMA driver structure 96 writel(0x0, priv->regs + DISP_REG_RDMA_INT_STATUS); in mtk_disp_rdma_irq_handler() 98 if (!priv->vblank_cb) in mtk_disp_rdma_irq_handler() 101 priv->vblank_cb(priv->vblank_cb_data); in mtk_disp_rdma_irq_handler() 110 unsigned int tmp = readl(rdma->regs + reg); in rdma_update_bits() 113 writel(tmp, rdma->regs + reg); in rdma_update_bits() 122 rdma->vblank_cb = vblank_cb; in mtk_rdma_register_vblank_cb() [all …]
|
H A D | mtk_disp_gamma.c | 1 // SPDX-License-Identifier: GPL-2.0-only 12 #include <linux/soc/mediatek/mtk-cmdq.h> 54 * struct mtk_disp_gamma - Display Gamma driver structure 71 return clk_prepare_enable(gamma->clk); in mtk_gamma_clk_enable() 78 clk_disable_unprepare(gamma->clk); in mtk_gamma_clk_disable() 85 if (gamma && gamma->data) in mtk_gamma_get_lut_size() 86 return gamma->data->lut_size; in mtk_gamma_get_lut_size() 93 int last_entry = lut_size - 1; in mtk_gamma_lut_is_descending() 102 * SoCs supporting 12-bits LUTs are using a new register layout that does 103 * always support (by HW) both 12-bits and 10-bits LUT but, on those, we [all …]
|
H A D | mtk_disp_ovl.c | 1 // SPDX-License-Identifier: GPL-2.0-only 16 #include <linux/soc/mediatek/mtk-cmdq.h> 51 #define DISP_REG_OVL_ADDR(ovl, n) ((ovl)->data->addr + 0x20 * (n)) 52 #define DISP_REG_OVL_HDR_ADDR(ovl, n) ((ovl)->data->addr + 0x20 * (n) + 0x04) 53 #define DISP_REG_OVL_HDR_PITCH(ovl, n) ((ovl)->data->addr + 0x20 * (n) + 0x08) 77 #define OVL_CON_CLRFMT_RGB565(ovl) ((ovl)->data->fmt_rgb565_is_0 ? \ 79 #define OVL_CON_CLRFMT_RGB888(ovl) ((ovl)->data->fmt_rgb565_is_0 ? \ 156 * struct mtk_disp_ovl - DISP_OVL driver structure 175 writel(0x0, priv->regs + DISP_REG_OVL_INTSTA); in mtk_disp_ovl_irq_handler() 177 if (!priv->vblank_cb) in mtk_disp_ovl_irq_handler() [all …]
|
/linux/arch/arm/boot/dts/mediatek/ |
H A D | mt7623n.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 3 * Copyright © 2017-2020 MediaTek Inc. 10 #include <dt-bindings/memory/mt2701-larb-port.h> 19 compatible = "mediatek,mt7623-g3dsys", 20 "mediatek,mt2701-g3dsys", 23 #clock-cells = <1>; 24 #reset-cells = <1>; 28 compatible = "mediatek,mt7623-mali", "arm,mali-450"; 41 interrupt-names = "gp", "gpmmu", "pp0", "ppmmu0", "pp1", 46 clock-names = "bus", "core"; [all …]
|
H A D | mt2701.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 8 #include <dt-bindings/clock/mt2701-clk.h> 9 #include <dt-bindings/phy/phy.h> 10 #include <dt-bindings/power/mt2701-power.h> 11 #include <dt-bindings/interrupt-controller/irq.h> 12 #include <dt-bindings/interrupt-controller/arm-gic.h> 13 #include <dt-bindings/memory/mt2701-larb-port.h> 14 #include <dt-bindings/reset/mt2701-resets.h> 15 #include "mt2701-pinfunc.h" 18 #address-cells = <2>; [all …]
|
/linux/drivers/pwm/ |
H A D | pwm-mtk-disp.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * MediaTek display pulse-width-modulation controller driver. 25 #define PWM_PERIOD_MASK ((1 << PWM_PERIOD_BIT_WIDTH) - 1) 60 void __iomem *address = mdp->base + offset; in mtk_disp_pwm_update_bits() 77 if (state->polarity != PWM_POLARITY_NORMAL) in mtk_disp_pwm_apply() 78 return -EINVAL; in mtk_disp_pwm_apply() 80 if (!state->enabled && mdp->enabled) { in mtk_disp_pwm_apply() 82 mdp->data->enable_mask, 0x0); in mtk_disp_pwm_apply() 83 clk_disable_unprepare(mdp->clk_mm); in mtk_disp_pwm_apply() 84 clk_disable_unprepare(mdp->clk_main); in mtk_disp_pwm_apply() [all …]
|
/linux/drivers/pmdomain/mediatek/ |
H A D | mtk-scpsys.c | 1 // SPDX-License-Identifier: GPL-2.0-only 16 #include <dt-bindings/power/mt2701-power.h> 17 #include <dt-bindings/power/mt2712-power.h> 18 #include <dt-bindings/power/mt6797-power.h> 19 #include <dt-bindings/power/mt7622-power.h> 20 #include <dt-bindings/power/mt7623a-power.h> 21 #include <dt-bindings/power/mt8173-power.h> 28 #define MTK_SCPD_CAPS(_scpd, _x) ((_scpd)->data->caps & (_x)) 37 #define SPM_AUDIO_PWR_CON 0x029c /* MT8173, MT2712 */ 72 #define PWR_STATUS_MFG_2D BIT(22) /* MT8173 */ [all …]
|
/linux/drivers/soc/mediatek/ |
H A D | mtk-mutex.c | 1 // SPDX-License-Identifier: GPL-2.0-only 12 #include <linux/soc/mediatek/mtk-mmsys.h> 13 #include <linux/soc/mediatek/mtk-mutex.h> 14 #include <linux/soc/mediatek/mtk-cmdq.h> 814 if (!mtx->mutex[i].claimed) { in mtk_mutex_get() 815 mtx->mutex[i].claimed = true; in mtk_mutex_get() 816 return &mtx->mutex[i]; in mtk_mutex_get() 819 return ERR_PTR(-EBUSY); in mtk_mutex_get() 826 mutex[mutex->id]); in mtk_mutex_put() 828 WARN_ON(&mtx->mutex[mutex->id] != mutex); in mtk_mutex_put() [all …]
|