.. | .. |
---|
15 | 15 | #include "isp_external.h" |
---|
16 | 16 | #include "regs.h" |
---|
17 | 17 | |
---|
18 | | -static void get_remote_mipi_sensor(struct rkisp_device *dev, |
---|
| 18 | +void rkisp_get_remote_mipi_sensor(struct rkisp_device *dev, |
---|
19 | 19 | struct v4l2_subdev **sensor_sd, u32 function) |
---|
20 | 20 | { |
---|
21 | 21 | struct media_graph graph; |
---|
.. | .. |
---|
82 | 82 | id = local->index - 1; |
---|
83 | 83 | if (id && id < RKISP_STREAM_DMATX3) |
---|
84 | 84 | stream = &csi->ispdev->cap_dev.stream[id + 1]; |
---|
| 85 | + if (id >= ARRAY_SIZE(csi->sink)) |
---|
| 86 | + return -EINVAL; |
---|
85 | 87 | if (flags & MEDIA_LNK_FL_ENABLED) { |
---|
86 | 88 | if (csi->sink[id].linked) { |
---|
87 | 89 | ret = -EBUSY; |
---|
.. | .. |
---|
210 | 212 | emd_vc = 0xFF; |
---|
211 | 213 | emd_dt = 0; |
---|
212 | 214 | dev->hdr.sensor = NULL; |
---|
213 | | - get_remote_mipi_sensor(dev, &mipi_sensor, MEDIA_ENT_F_CAM_SENSOR); |
---|
| 215 | + rkisp_get_remote_mipi_sensor(dev, &mipi_sensor, MEDIA_ENT_F_CAM_SENSOR); |
---|
214 | 216 | if (mipi_sensor) { |
---|
215 | 217 | ctrl = v4l2_ctrl_find(mipi_sensor->ctrl_handler, |
---|
216 | 218 | CIFISP_CID_EMB_VC); |
---|
.. | .. |
---|
546 | 548 | } |
---|
547 | 549 | return 0; |
---|
548 | 550 | } |
---|
549 | | - get_remote_mipi_sensor(dev, &sd, type); |
---|
| 551 | + rkisp_get_remote_mipi_sensor(dev, &sd, type); |
---|
550 | 552 | if (!sd) { |
---|
551 | 553 | v4l2_err(&dev->v4l2_dev, "%s don't find subdev\n", __func__); |
---|
552 | 554 | return -EINVAL; |
---|
.. | .. |
---|
577 | 579 | memset(&mode, 0, sizeof(mode)); |
---|
578 | 580 | mode.name = dev->name; |
---|
579 | 581 | |
---|
580 | | - get_remote_mipi_sensor(dev, &mipi_sensor, MEDIA_ENT_F_PROC_VIDEO_COMPOSER); |
---|
| 582 | + rkisp_get_remote_mipi_sensor(dev, &mipi_sensor, MEDIA_ENT_F_PROC_VIDEO_COMPOSER); |
---|
581 | 583 | if (!mipi_sensor) |
---|
582 | 584 | return -EINVAL; |
---|
583 | 585 | dev->hdr.op_mode = HDR_NORMAL; |
---|
.. | .. |
---|
626 | 628 | |
---|
627 | 629 | if (!dev->hw_dev->is_mi_update) |
---|
628 | 630 | rkisp_unite_write(dev, CSI2RX_CTRL0, |
---|
629 | | - SW_IBUF_OP_MODE(dev->hdr.op_mode), |
---|
630 | | - true, dev->hw_dev->is_unite); |
---|
| 631 | + SW_IBUF_OP_MODE(dev->hdr.op_mode), true); |
---|
631 | 632 | |
---|
632 | 633 | /* hdr merge */ |
---|
633 | 634 | switch (dev->hdr.op_mode) { |
---|
.. | .. |
---|
651 | 652 | return -EINVAL; |
---|
652 | 653 | } |
---|
653 | 654 | } |
---|
654 | | - rkisp_unite_write(dev, ISP_HDRMGE_BASE, val, false, dev->hw_dev->is_unite); |
---|
| 655 | + rkisp_unite_write(dev, ISP_HDRMGE_BASE, val, false); |
---|
655 | 656 | |
---|
656 | 657 | val = RAW_RD_SIZE_ERR; |
---|
657 | 658 | if (!IS_HDR_RDBK(dev->hdr.op_mode)) |
---|
658 | 659 | val |= ISP21_MIPI_DROP_FRM; |
---|
659 | | - rkisp_unite_set_bits(dev, CSI2RX_MASK_STAT, 0, val, true, dev->hw_dev->is_unite); |
---|
| 660 | + rkisp_unite_set_bits(dev, CSI2RX_MASK_STAT, 0, val, true); |
---|
660 | 661 | } |
---|
661 | 662 | |
---|
662 | 663 | if (IS_HDR_RDBK(dev->hdr.op_mode)) |
---|
663 | | - rkisp_unite_set_bits(dev, CTRL_SWS_CFG, 0, SW_MPIP_DROP_FRM_DIS, |
---|
664 | | - true, dev->hw_dev->is_unite); |
---|
| 664 | + rkisp_unite_set_bits(dev, CTRL_SWS_CFG, 0, SW_MPIP_DROP_FRM_DIS, true); |
---|
665 | 665 | |
---|
666 | 666 | if (dev->isp_ver >= ISP_V30) |
---|
667 | | - rkisp_unite_set_bits(dev, CTRL_SWS_CFG, 0, ISP3X_SW_ACK_FRM_PRO_DIS, |
---|
668 | | - true, dev->hw_dev->is_unite); |
---|
| 667 | + rkisp_unite_set_bits(dev, CTRL_SWS_CFG, 0, ISP3X_SW_ACK_FRM_PRO_DIS, true); |
---|
669 | 668 | /* line counter from isp out, default from mp out */ |
---|
670 | 669 | if (dev->isp_ver == ISP_V32_L) |
---|
671 | | - rkisp_unite_set_bits(dev, CTRL_SWS_CFG, 0, ISP32L_ISP2ENC_CNT_MUX, |
---|
672 | | - true, dev->hw_dev->is_unite); |
---|
| 670 | + rkisp_unite_set_bits(dev, CTRL_SWS_CFG, 0, ISP32L_ISP2ENC_CNT_MUX, true); |
---|
673 | 671 | dev->rdbk_cnt = -1; |
---|
674 | 672 | dev->rdbk_cnt_x1 = -1; |
---|
675 | 673 | dev->rdbk_cnt_x2 = -1; |
---|