Home
last modified time | relevance | path

Searched full:mdp (Results 1 – 25 of 211) sorted by relevance

123456789

/Linux-v6.6/drivers/media/platform/mediatek/mdp3/
Dmtk-mdp3-core.c86 int mdp_vpu_get_locked(struct mdp_dev *mdp) in mdp_vpu_get_locked() argument
90 if (mdp->vpu_count++ == 0) { in mdp_vpu_get_locked()
91 ret = rproc_boot(mdp->rproc_handle); in mdp_vpu_get_locked()
93 dev_err(&mdp->pdev->dev, in mdp_vpu_get_locked()
97 ret = mdp_vpu_register(mdp); in mdp_vpu_get_locked()
99 dev_err(&mdp->pdev->dev, in mdp_vpu_get_locked()
103 ret = mdp_vpu_dev_init(&mdp->vpu, mdp->scp, &mdp->vpu_lock); in mdp_vpu_get_locked()
105 dev_err(&mdp->pdev->dev, in mdp_vpu_get_locked()
113 mdp_vpu_unregister(mdp); in mdp_vpu_get_locked()
116 mdp->vpu_count--; in mdp_vpu_get_locked()
[all …]
Dmtk-mdp3-cmdq.c145 static int mdp_path_ctx_init(struct mdp_dev *mdp, struct mdp_path *path) in mdp_path_ctx_init() argument
147 const int p_id = mdp->mdp_data->mdp_plat_id; in mdp_path_ctx_init()
161 ret = mdp_comp_ctx_config(mdp, &path->comps[index], in mdp_path_ctx_init()
236 static int mdp_path_config(struct mdp_dev *mdp, struct mdp_cmdq_cmd *cmd, in mdp_path_config() argument
239 const int p_id = mdp->mdp_data->mdp_plat_id; in mdp_path_config()
330 struct mdp_dev *mdp; in mdp_auto_release_work() local
334 mdp = cmd->mdp; in mdp_auto_release_work()
336 id = mdp->mdp_data->pipe_info[MDP_PIPE_RDMA0].mutex_id; in mdp_auto_release_work()
337 mtk_mutex_unprepare(mdp->mdp_mutex[id]); in mdp_auto_release_work()
338 mdp_comp_clocks_off(&mdp->pdev->dev, cmd->comps, in mdp_auto_release_work()
[all …]
Dmtk-mdp3-m2m.c93 "VPU MDP process failed: %d\n", ret); in mdp_m2m_device_run()
551 struct mdp_dev *mdp = video_get_drvdata(vdev); in mdp_m2m_open() local
553 struct device *dev = &mdp->pdev->dev; in mdp_m2m_open()
556 const struct mdp_limit *limit = mdp->mdp_data->def_limit; in mdp_m2m_open()
562 if (mutex_lock_interruptible(&mdp->m2m_lock)) { in mdp_m2m_open()
567 ret = ida_alloc(&mdp->mdp_ida, GFP_KERNEL); in mdp_m2m_open()
572 ctx->mdp_dev = mdp; in mdp_m2m_open()
585 ctx->m2m_ctx = v4l2_m2m_ctx_init(mdp->m2m_dev, ctx, mdp_m2m_queue_init); in mdp_m2m_open()
594 ret = mdp_frameparam_init(mdp, &ctx->curr_param); in mdp_m2m_open()
596 dev_err(dev, "Failed to initialize mdp parameter\n"); in mdp_m2m_open()
[all …]
Dmtk-mdp3-vpu.c115 struct mdp_dev *mdp = vpu_to_mdp(vpu); in mdp_vpu_ipi_handle_frame_ack() local
117 dev_err(&mdp->pdev->dev, "VPU MDP failure:%d\n", param->state); in mdp_vpu_ipi_handle_frame_ack()
123 int mdp_vpu_register(struct mdp_dev *mdp) in mdp_vpu_register() argument
126 struct mtk_scp *scp = mdp->scp; in mdp_vpu_register()
127 struct device *dev = &mdp->pdev->dev; in mdp_vpu_register()
158 void mdp_vpu_unregister(struct mdp_dev *mdp) in mdp_vpu_unregister() argument
160 scp_ipi_unregister(mdp->scp, SCP_IPI_MDP_INIT); in mdp_vpu_unregister()
161 scp_ipi_unregister(mdp->scp, SCP_IPI_MDP_DEINIT); in mdp_vpu_unregister()
162 scp_ipi_unregister(mdp->scp, SCP_IPI_MDP_FRAME); in mdp_vpu_unregister()
168 struct mdp_dev *mdp = vpu_to_mdp(vpu); in mdp_vpu_sendmsg() local
[all …]
Dmtk-mdp3-comp.c785 static int mdp_comp_get_id(struct mdp_dev *mdp, enum mdp_comp_type type, u32 alias_id) in mdp_comp_get_id() argument
789 for (i = 0; i < mdp->mdp_data->comp_data_len; i++) in mdp_comp_get_id()
790 if (mdp->mdp_data->comp_data[i].match.type == type && in mdp_comp_get_id()
791 mdp->mdp_data->comp_data[i].match.alias_id == alias_id) in mdp_comp_get_id()
872 static int mdp_get_subsys_id(struct mdp_dev *mdp, struct device *dev, in mdp_get_subsys_id() argument
891 index = mdp->mdp_data->comp_data[comp->public_id].info.dts_reg_ofst; in mdp_get_subsys_id()
906 static void __mdp_comp_init(struct mdp_dev *mdp, struct device_node *node, in __mdp_comp_init() argument
913 index = mdp->mdp_data->comp_data[comp->public_id].info.dts_reg_ofst; in __mdp_comp_init()
919 comp->mdp_dev = mdp; in __mdp_comp_init()
924 static int mdp_comp_init(struct mdp_dev *mdp, struct device_node *node, in mdp_comp_init() argument
[all …]
Dmtk-mdp3-core.h102 int mdp_vpu_get_locked(struct mdp_dev *mdp);
103 void mdp_vpu_put_locked(struct mdp_dev *mdp);
104 int mdp_vpu_register(struct mdp_dev *mdp);
105 void mdp_vpu_unregister(struct mdp_dev *mdp);
Dmtk-mdp3-regs.c116 int mdp_enum_fmt_mplane(struct mdp_dev *mdp, struct v4l2_fmtdesc *f) in mdp_enum_fmt_mplane() argument
120 fmt = mdp_find_fmt_by_index(mdp->mdp_data, f->index, f->type); in mdp_enum_fmt_mplane()
128 const struct mdp_format *mdp_try_fmt_mplane(struct mdp_dev *mdp, in mdp_try_fmt_mplane() argument
141 fmt = mdp_find_fmt(mdp->mdp_data, pix_mp->pixelformat, f->type); in mdp_try_fmt_mplane()
143 fmt = mdp_find_fmt_by_index(mdp->mdp_data, 0, f->type); in mdp_try_fmt_mplane()
307 /* Stride that is accepted by MDP HW */
326 /* Stride that is accepted by MDP HW of format with contiguous planes */
344 /* Plane size that is accepted by MDP HW */
463 int mdp_frameparam_init(struct mdp_dev *mdp, struct mdp_frameparam *param) in mdp_frameparam_init() argument
471 param->limit = mdp->mdp_data->def_limit; in mdp_frameparam_init()
[all …]
Dmtk-mdp3-m2m.h39 /* synchronization protect for mdp m2m context */
43 int mdp_m2m_device_register(struct mdp_dev *mdp);
44 void mdp_m2m_device_unregister(struct mdp_dev *mdp);
Dmtk-mdp3-comp.h83 /* MDP */
143 /* Used to describe the item order in MDP property */
196 int mdp_comp_config(struct mdp_dev *mdp);
197 void mdp_comp_destroy(struct mdp_dev *mdp);
202 int mdp_comp_ctx_config(struct mdp_dev *mdp, struct mdp_comp_ctx *ctx,
/Linux-v6.6/drivers/pwm/
Dpwm-mtk-disp.c58 static void mtk_disp_pwm_update_bits(struct mtk_disp_pwm *mdp, u32 offset, in mtk_disp_pwm_update_bits() argument
61 void __iomem *address = mdp->base + offset; in mtk_disp_pwm_update_bits()
73 struct mtk_disp_pwm *mdp = to_mtk_disp_pwm(chip); in mtk_disp_pwm_apply() local
81 if (!state->enabled && mdp->enabled) { in mtk_disp_pwm_apply()
82 mtk_disp_pwm_update_bits(mdp, DISP_PWM_EN, in mtk_disp_pwm_apply()
83 mdp->data->enable_mask, 0x0); in mtk_disp_pwm_apply()
84 clk_disable_unprepare(mdp->clk_mm); in mtk_disp_pwm_apply()
85 clk_disable_unprepare(mdp->clk_main); in mtk_disp_pwm_apply()
87 mdp->enabled = false; in mtk_disp_pwm_apply()
91 if (!mdp->enabled) { in mtk_disp_pwm_apply()
[all …]
/Linux-v6.6/drivers/media/platform/mediatek/mdp/
Dmtk_mdp_core.c25 /* MDP debug log level (0-3). 3 shows all the logs. */
33 .compatible = "mediatek,mt8173-mdp-rdma",
36 .compatible = "mediatek,mt8173-mdp-rsz",
39 .compatible = "mediatek,mt8173-mdp-wdma",
42 .compatible = "mediatek,mt8173-mdp-wrot",
49 { .compatible = "mediatek,mt8173-mdp", },
54 static void mtk_mdp_clock_on(struct mtk_mdp_dev *mdp) in mtk_mdp_clock_on() argument
56 struct device *dev = &mdp->pdev->dev; in mtk_mdp_clock_on()
59 list_for_each_entry(comp_node, &mdp->comp_list, node) in mtk_mdp_clock_on()
63 static void mtk_mdp_clock_off(struct mtk_mdp_dev *mdp) in mtk_mdp_clock_off() argument
[all …]
Dmtk_mdp_m2m.c176 struct mtk_mdp_dev *mdp = ctx->mdp_dev; in mtk_mdp_try_fmt_mplane() local
177 struct mtk_mdp_variant *variant = mdp->variant; in mtk_mdp_try_fmt_mplane()
279 struct mtk_mdp_dev *mdp = ctx->mdp_dev; in mtk_mdp_try_crop() local
280 struct mtk_mdp_variant *variant = mdp->variant; in mtk_mdp_try_crop()
473 struct mtk_mdp_dev *mdp = priv; in mtk_mdp_process_done() local
477 ctx = v4l2_m2m_get_curr_priv(mdp->m2m_dev); in mtk_mdp_process_done()
498 struct mtk_mdp_dev *mdp = ctx->mdp_dev; in mtk_mdp_m2m_worker() local
503 dev_err(&mdp->pdev->dev, "ctx is in error state"); in mtk_mdp_m2m_worker()
523 dev_err(&mdp->pdev->dev, "processing failed: %d", ret); in mtk_mdp_m2m_worker()
530 mtk_mdp_process_done(mdp, buf_state); in mtk_mdp_m2m_worker()
[all …]
DMakefile2 mtk-mdp-y += mtk_mdp_core.o
3 mtk-mdp-y += mtk_mdp_comp.o
4 mtk-mdp-y += mtk_mdp_m2m.o
5 mtk-mdp-y += mtk_mdp_regs.o
6 mtk-mdp-y += mtk_mdp_vpu.o
8 obj-$(CONFIG_VIDEO_MEDIATEK_MDP) += mtk-mdp.o
Dmtk_mdp_comp.h11 * enum mtk_mdp_comp_type - the MDP component
25 * struct mtk_mdp_comp - the MDP's function component data
26 * @node: list node to track sibing MDP components
/Linux-v6.6/drivers/net/ethernet/renesas/
Dsh_eth.c349 struct sh_eth_private *mdp = netdev_priv(ndev); in sh_eth_write() local
350 u16 offset = mdp->reg_offset[enum_index]; in sh_eth_write()
355 iowrite32(data, mdp->addr + offset); in sh_eth_write()
360 struct sh_eth_private *mdp = netdev_priv(ndev); in sh_eth_read() local
361 u16 offset = mdp->reg_offset[enum_index]; in sh_eth_read()
366 return ioread32(mdp->addr + offset); in sh_eth_read()
376 static u16 sh_eth_tsu_get_offset(struct sh_eth_private *mdp, int enum_index) in sh_eth_tsu_get_offset() argument
378 return mdp->reg_offset[enum_index]; in sh_eth_tsu_get_offset()
381 static void sh_eth_tsu_write(struct sh_eth_private *mdp, u32 data, in sh_eth_tsu_write() argument
384 u16 offset = sh_eth_tsu_get_offset(mdp, enum_index); in sh_eth_tsu_write()
[all …]
/Linux-v6.6/drivers/gpu/drm/msm/disp/dpu1/
Ddpu_hw_top.h47 * @mdp: top level status
51 u8 mdp; member
71 * struct dpu_hw_mdp_ops - interface to the MDP TOP Hw driver functions
80 * @mdp : mdp top context driver
83 void (*setup_split_pipe)(struct dpu_hw_mdp *mdp,
88 * @mdp : mdp top context driver
91 void (*setup_traffic_shaper)(struct dpu_hw_mdp *mdp,
96 * @mdp: mdp top context driver
101 bool (*setup_clk_force_ctrl)(struct dpu_hw_mdp *mdp,
106 * @mdp: mdp top context driver
[all …]
Ddpu_hw_top.c28 static void dpu_hw_setup_split_pipe(struct dpu_hw_mdp *mdp, in dpu_hw_setup_split_pipe() argument
35 if (!mdp || !cfg) in dpu_hw_setup_split_pipe()
38 c = &mdp->hw; in dpu_hw_setup_split_pipe()
66 static bool dpu_hw_setup_clk_force_ctrl(struct dpu_hw_mdp *mdp, in dpu_hw_setup_clk_force_ctrl() argument
74 if (!mdp) in dpu_hw_setup_clk_force_ctrl()
77 c = &mdp->hw; in dpu_hw_setup_clk_force_ctrl()
82 reg_off = mdp->caps->clk_ctrls[clk_ctrl].reg_off; in dpu_hw_setup_clk_force_ctrl()
83 bit_off = mdp->caps->clk_ctrls[clk_ctrl].bit_off; in dpu_hw_setup_clk_force_ctrl()
100 static void dpu_hw_get_danger_status(struct dpu_hw_mdp *mdp, in dpu_hw_get_danger_status() argument
106 if (!mdp || !status) in dpu_hw_get_danger_status()
[all …]
Ddpu_vbif.c172 struct dpu_hw_mdp *mdp; in dpu_vbif_set_ot_limit() local
177 mdp = dpu_kms->hw_mdp; in dpu_vbif_set_ot_limit()
180 if (!vbif || !mdp) { in dpu_vbif_set_ot_limit()
181 DRM_DEBUG_ATOMIC("invalid arguments vbif %d mdp %d\n", in dpu_vbif_set_ot_limit()
182 vbif != NULL, mdp != NULL); in dpu_vbif_set_ot_limit()
186 if (!mdp->ops.setup_clk_force_ctrl || in dpu_vbif_set_ot_limit()
203 forced_on = mdp->ops.setup_clk_force_ctrl(mdp, params->clk_ctrl, true); in dpu_vbif_set_ot_limit()
216 mdp->ops.setup_clk_force_ctrl(mdp, params->clk_ctrl, false); in dpu_vbif_set_ot_limit()
223 struct dpu_hw_mdp *mdp; in dpu_vbif_set_qos_remap() local
232 mdp = dpu_kms->hw_mdp; in dpu_vbif_set_qos_remap()
[all …]
/Linux-v6.6/Documentation/devicetree/bindings/media/
Dmediatek-mdp.txt6 - compatible: "mediatek,mt8173-mdp"
12 "mediatek,mt8173-mdp-rdma" - read DMA
13 "mediatek,mt8173-mdp-rsz" - resizer
14 "mediatek,mt8173-mdp-wdma" - write DMA
15 "mediatek,mt8173-mdp-wrot" - write DMA with rotation
24 "mediatek,mt8173-mdp-rdma"
25 "mediatek,mt8173-mdp-wdma"
26 "mediatek,mt8173-mdp-wrot"
33 compatible = "mediatek,mt8173-mdp-rdma";
34 "mediatek,mt8173-mdp";
[all …]
/Linux-v6.6/Documentation/devicetree/bindings/iommu/
Dmsm,iommu-v0.txt41 Example: mdp iommu and its bus master
59 mdp: qcom,mdp@5100000 {
60 compatible = "qcom,mdp";
/Linux-v6.6/drivers/scsi/aic94xx/
Daic94xx_dump.c11 * Print all cseq and lseq mip and mdp.
387 asd_printk("MDP 0 >>>>\n"); in asd_dump_cseq_state()
396 asd_printk("MDP 0 Mode 8 >>>>\n"); in asd_dump_cseq_state()
412 asd_printk("MDP 1 Mode 8 >>>>\n"); in asd_dump_cseq_state()
416 asd_printk("MDP 2 Mode 8 >>>>\n"); in asd_dump_cseq_state()
589 asd_printk("LSEQ%d MDP 0 MODE %d >>>>\n", lseq, mode); in asd_dump_lseq_state()
615 asd_printk("LSEQ%d MDP 0 MODE 5 >>>>\n", lseq); in asd_dump_lseq_state()
632 asd_printk("LSEQ%d MDP 0 MODE 0 >>>>\n", lseq); in asd_dump_lseq_state()
644 asd_printk("LSEQ%d MDP 0 MODE 1 >>>>\n", lseq); in asd_dump_lseq_state()
654 asd_printk("LSEQ%d MDP 0 MODE 2 >>>>\n", lseq); in asd_dump_lseq_state()
[all …]
/Linux-v6.6/drivers/gpu/drm/msm/disp/
Dmdp_kms.h56 /* For transiently registering for different MDP irqs that various parts
97 /* MDP capabilities */
103 /* MDP pipe capabilities */
112 /* MDP layer mixer caps */
/Linux-v6.6/include/dt-bindings/gce/
Dmt8186-gce.h66 /* MDP: P1: JPEG dest */
69 /* MDP: PQ color */
71 /* MDP: 2D sharpness */
76 /* MDP: P4: 2D sharpness dst */
218 /* MDP */
388 * MUST NOT CHANGE, these tokens sync with MDP
/Linux-v6.6/Documentation/devicetree/bindings/display/msm/
Dqcom,qcm2290-dpu.yaml20 - description: Address offset and size for mdp register set
25 - const: mdp
63 reg-names = "mdp", "vbif";
Dqcom,sm6115-dpu.yaml20 - description: MDP register set
25 - const: mdp
65 reg-names = "mdp", "vbif";

123456789