/linux/drivers/media/platform/mediatek/mdp3/ |
H A D | mtk-mdp3-core.c | 101 int mdp_vpu_get_locked(struct mdp_dev *mdp) in mdp_vpu_get_locked() argument 105 if (mdp->vpu_count++ == 0) { in mdp_vpu_get_locked() 106 ret = rproc_boot(mdp->rproc_handle); in mdp_vpu_get_locked() 108 dev_err(&mdp->pdev->dev, in mdp_vpu_get_locked() 112 ret = mdp_vpu_register(mdp); in mdp_vpu_get_locked() 114 dev_err(&mdp->pdev->dev, in mdp_vpu_get_locked() 118 ret = mdp_vpu_dev_init(&mdp->vpu, mdp->scp, &mdp->vpu_lock); in mdp_vpu_get_locked() 120 dev_err(&mdp->pdev->dev, in mdp_vpu_get_locked() 128 mdp_vpu_unregister(mdp); in mdp_vpu_get_locked() 131 mdp->vpu_count--; in mdp_vpu_get_locked() [all …]
|
H A D | mtk-mdp3-cmdq.c | 105 static struct img_config *__get_config_offset(struct mdp_dev *mdp, in __get_config_offset() argument 109 const int p_id = mdp->mdp_data->mdp_plat_id; in __get_config_offset() 110 struct device *dev = &mdp->pdev->dev; in __get_config_offset() 112 long bound = mdp->vpu.config_size; in __get_config_offset() 114 if (pp_idx >= mdp->mdp_data->pp_used) in __get_config_offset() 131 if ((long)cfg_n - (long)mdp->vpu.config > bound) { in __get_config_offset() 261 static int mdp_path_ctx_init(struct mdp_dev *mdp, struct mdp_path *path) in mdp_path_ctx_init() argument 263 const int p_id = mdp->mdp_data->mdp_plat_id; in mdp_path_ctx_init() 290 ret = mdp_comp_ctx_config(mdp, &path->comps[index], in mdp_path_ctx_init() 391 static int mdp_path_config(struct mdp_dev *mdp, struct mdp_cmdq_cmd *cmd, in mdp_path_config() argument [all …]
|
H A D | mtk-mdp3-m2m.c | 96 "VPU MDP process failed: %d\n", ret); in mdp_m2m_device_run() 566 struct mdp_dev *mdp = video_get_drvdata(vdev); in mdp_m2m_open() local 568 struct device *dev = &mdp->pdev->dev; in mdp_m2m_open() 571 const struct mdp_limit *limit = mdp->mdp_data->def_limit; in mdp_m2m_open() 577 if (mutex_lock_interruptible(&mdp->m2m_lock)) { in mdp_m2m_open() 582 ret = ida_alloc(&mdp->mdp_ida, GFP_KERNEL); in mdp_m2m_open() 587 ctx->mdp_dev = mdp; in mdp_m2m_open() 600 ctx->m2m_ctx = v4l2_m2m_ctx_init(mdp->m2m_dev, ctx, mdp_m2m_queue_init); in mdp_m2m_open() 609 ret = mdp_frameparam_init(mdp, &ctx->curr_param); in mdp_m2m_open() 611 dev_err(dev, "Failed to initialize mdp parameter\n"); in mdp_m2m_open() [all …]
|
H A D | mtk-mdp3-vpu.c | 115 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 …]
|
H A D | mtk-mdp3-regs.c | 116 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 bool mdp_check_pp_enable(struct mdp_dev *mdp, struct mdp_frame *frame) in mdp_check_pp_enable() argument 311 if (!mdp || !frame) in mdp_check_pp_enable() 314 if (!mdp->mdp_data->pp_criteria) in mdp_check_pp_enable() 317 s = mdp->mdp_data->pp_criteria->width * in mdp_check_pp_enable() 318 mdp->mdp_data->pp_criteria->height; in mdp_check_pp_enable() [all …]
|
H A D | mtk-mdp3-core.h | 80 /* MDP parallel pipe control */ 146 int mdp_vpu_get_locked(struct mdp_dev *mdp); 147 void mdp_vpu_put_locked(struct mdp_dev *mdp); 148 int mdp_vpu_register(struct mdp_dev *mdp); 149 void mdp_vpu_unregister(struct mdp_dev *mdp);
|
H A D | mtk-mdp3-comp.c | 1614 static int mdp_comp_get_id(struct mdp_dev *mdp, enum mdp_comp_type type, u32 alias_id) in mdp_comp_get_id() argument 1618 for (i = 0; i < mdp->mdp_data->comp_data_len; i++) in mdp_comp_get_id() 1619 if (mdp->mdp_data->comp_data[i].match.type == type && in mdp_comp_get_id() 1620 mdp->mdp_data->comp_data[i].match.alias_id == alias_id) in mdp_comp_get_id() 1733 static int mdp_get_subsys_id(struct mdp_dev *mdp, struct device *dev, in mdp_get_subsys_id() argument 1752 index = mdp->mdp_data->comp_data[comp->public_id].info.dts_reg_ofst; in mdp_get_subsys_id() 1767 static void __mdp_comp_init(struct mdp_dev *mdp, struct device_node *node, in __mdp_comp_init() argument 1774 index = mdp->mdp_data->comp_data[comp->public_id].info.dts_reg_ofst; in __mdp_comp_init() 1780 comp->mdp_dev = mdp; in __mdp_comp_init() 1785 static int mdp_comp_init(struct mdp_dev *mdp, struct device_node *node, in mdp_comp_init() argument [all …]
|
H A D | mtk-mdp3-m2m.h | 39 /* 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);
|
/linux/drivers/pwm/ |
H A D | pwm-mtk-disp.c | 57 static void mtk_disp_pwm_update_bits(struct mtk_disp_pwm *mdp, u32 offset, in mtk_disp_pwm_update_bits() argument 60 void __iomem *address = mdp->base + offset; in mtk_disp_pwm_update_bits() 72 struct mtk_disp_pwm *mdp = to_mtk_disp_pwm(chip); in mtk_disp_pwm_apply() local 80 if (!state->enabled && mdp->enabled) { in mtk_disp_pwm_apply() 81 mtk_disp_pwm_update_bits(mdp, DISP_PWM_EN, 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() 86 mdp->enabled = false; in mtk_disp_pwm_apply() 90 if (!mdp->enabled) { in mtk_disp_pwm_apply() [all …]
|
/linux/drivers/media/platform/mediatek/mdp/ |
H A D | mtk_mdp_core.c | 25 /* 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 …]
|
H A D | mtk_mdp_m2m.c | 176 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 …]
|
H A D | Makefile | 2 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
|
H A D | mtk_mdp_comp.h | 11 * 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/drivers/net/ethernet/renesas/ |
H A D | sh_eth.c | 349 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/drivers/gpu/drm/msm/disp/dpu1/ |
H A D | dpu_hw_top.h | 47 * @mdp: top level status 51 u8 mdp; member 78 * struct dpu_hw_mdp_ops - interface to the MDP TOP Hw driver functions 87 * @mdp : mdp top context driver 90 void (*setup_split_pipe)(struct dpu_hw_mdp *mdp, 95 * @mdp : mdp top context driver 98 void (*setup_traffic_shaper)(struct dpu_hw_mdp *mdp, 103 * @mdp: mdp top context driver 108 bool (*setup_clk_force_ctrl)(struct dpu_hw_mdp *mdp, 113 * @mdp: mdp top context driver [all …]
|
H A D | dpu_hw_top.c | 32 static void dpu_hw_setup_split_pipe(struct dpu_hw_mdp *mdp, in dpu_hw_setup_split_pipe() argument 39 if (!mdp || !cfg) in dpu_hw_setup_split_pipe() 42 c = &mdp->hw; in dpu_hw_setup_split_pipe() 70 static bool dpu_hw_setup_clk_force_ctrl(struct dpu_hw_mdp *mdp, in dpu_hw_setup_clk_force_ctrl() argument 73 if (!mdp) in dpu_hw_setup_clk_force_ctrl() 79 return dpu_hw_clk_force_ctrl(&mdp->hw, &mdp->caps->clk_ctrls[clk_ctrl], enable); in dpu_hw_setup_clk_force_ctrl() 83 static void dpu_hw_get_danger_status(struct dpu_hw_mdp *mdp, in dpu_hw_get_danger_status() argument 89 if (!mdp || !status) in dpu_hw_get_danger_status() 92 c = &mdp->hw; in dpu_hw_get_danger_status() 95 status->mdp = (value >> 0) & 0x3; in dpu_hw_get_danger_status() [all …]
|
/linux/Documentation/devicetree/bindings/media/ |
H A D | mediatek-mdp.txt | 6 - 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/drivers/gpu/drm/msm/disp/ |
H A D | mdp_kms.h | 57 /* For transiently registering for different MDP irqs that various parts 81 /* MDP capabilities */ 87 /* MDP pipe capabilities */ 96 /* MDP layer mixer caps */
|
/linux/drivers/scsi/aic94xx/ |
H A D | aic94xx_dump.c | 11 * 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/include/dt-bindings/gce/ |
H A D | mt8186-gce.h | 66 /* 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/Documentation/devicetree/bindings/display/msm/ |
H A D | qcom,sm6115-dpu.yaml | 20 - description: MDP register set 25 - const: mdp 65 reg-names = "mdp", "vbif";
|
H A D | qcom,qcm2290-dpu.yaml | 20 - description: Address offset and size for mdp register set 25 - const: mdp 63 reg-names = "mdp", "vbif";
|
H A D | qcom,sc7280-dpu.yaml | 20 - description: Address offset and size for mdp register set 25 - const: mdp 66 reg-names = "mdp", "vbif";
|
H A D | qcom,sm8150-dpu.yaml | 20 - description: Address offset and size for mdp register set 25 - const: mdp 56 reg-names = "mdp", "vbif";
|
H A D | qcom,sdm845-dpu.yaml | 22 - description: Address offset and size for mdp register set 27 - const: mdp 65 reg-names = "mdp", "vbif";
|