.. | .. |
---|
626 | 626 | |
---|
627 | 627 | max_rsz->width = ALIGN(DIV_ROUND_UP(input_win->width, div), 4); |
---|
628 | 628 | max_rsz->height = DIV_ROUND_UP(input_win->height, div); |
---|
629 | | - } else if (dev->hw_dev->is_unite) { |
---|
| 629 | + } else if (dev->hw_dev->unite) { |
---|
630 | 630 | /* scale down only for unite mode */ |
---|
631 | 631 | max_rsz->width = min_t(int, input_win->width, cfg->max_rsz_width); |
---|
632 | 632 | max_rsz->height = min_t(int, input_win->height, cfg->max_rsz_height); |
---|
.. | .. |
---|
1140 | 1140 | |
---|
1141 | 1141 | if (dev->isp_ver != ISP_V32 || |
---|
1142 | 1142 | dev->hw_dev->dev_link_num > 1 || |
---|
1143 | | - !stream->ops->set_wrap) { |
---|
| 1143 | + !stream->ops->set_wrap || |
---|
| 1144 | + dev->hw_dev->unite) { |
---|
1144 | 1145 | v4l2_err(&dev->v4l2_dev, |
---|
1145 | 1146 | "wrap only support for single sensor and mainpath\n"); |
---|
1146 | 1147 | return -EINVAL; |
---|
.. | .. |
---|
1465 | 1466 | const struct v4l2_rect *in) |
---|
1466 | 1467 | { |
---|
1467 | 1468 | struct rkisp_device *dev = stream->ispdev; |
---|
1468 | | - bool is_unite = dev->hw_dev->is_unite; |
---|
| 1469 | + bool is_unite = !!dev->hw_dev->unite; |
---|
1469 | 1470 | u32 align = is_unite ? 4 : 2; |
---|
1470 | 1471 | |
---|
1471 | 1472 | /* Not crop for MP bayer raw data and dmatx path */ |
---|
.. | .. |
---|
1616 | 1617 | if (ispdev->isp_ver != ISP_V32) |
---|
1617 | 1618 | return; |
---|
1618 | 1619 | |
---|
| 1620 | + mutex_lock(&ispdev->hw_dev->dev_lock); |
---|
1619 | 1621 | rkisp_chk_tb_over(ispdev); |
---|
| 1622 | + mutex_unlock(&ispdev->hw_dev->dev_lock); |
---|
1620 | 1623 | if (ispdev->tb_head.complete != RKISP_TB_OK) |
---|
1621 | 1624 | return; |
---|
1622 | 1625 | ret = v4l2_pipeline_pm_get(&stream->vnode.vdev.entity); |
---|
.. | .. |
---|
1733 | 1736 | st_cfg->max_rsz_height = CIF_ISP_INPUT_H_MAX_V21; |
---|
1734 | 1737 | ret = rkisp_register_stream_v21(dev); |
---|
1735 | 1738 | } else if (dev->isp_ver == ISP_V30) { |
---|
1736 | | - st_cfg->max_rsz_width = dev->hw_dev->is_unite ? |
---|
| 1739 | + st_cfg->max_rsz_width = dev->hw_dev->unite ? |
---|
1737 | 1740 | CIF_ISP_INPUT_W_MAX_V30_UNITE : CIF_ISP_INPUT_W_MAX_V30; |
---|
1738 | | - st_cfg->max_rsz_height = dev->hw_dev->is_unite ? |
---|
| 1741 | + st_cfg->max_rsz_height = dev->hw_dev->unite ? |
---|
1739 | 1742 | CIF_ISP_INPUT_H_MAX_V30_UNITE : CIF_ISP_INPUT_H_MAX_V30; |
---|
1740 | 1743 | ret = rkisp_register_stream_v30(dev); |
---|
1741 | 1744 | } else if (dev->isp_ver == ISP_V32) { |
---|
1742 | | - st_cfg->max_rsz_width = CIF_ISP_INPUT_W_MAX_V32; |
---|
1743 | | - st_cfg->max_rsz_height = CIF_ISP_INPUT_H_MAX_V32; |
---|
| 1745 | + st_cfg->max_rsz_width = dev->hw_dev->unite ? |
---|
| 1746 | + CIF_ISP_INPUT_W_MAX_V32_UNITE : CIF_ISP_INPUT_W_MAX_V32; |
---|
| 1747 | + st_cfg->max_rsz_height = dev->hw_dev->unite ? |
---|
| 1748 | + CIF_ISP_INPUT_H_MAX_V32_UNITE : CIF_ISP_INPUT_H_MAX_V32; |
---|
1744 | 1749 | st_cfg = &rkisp_sp_stream_config; |
---|
1745 | | - st_cfg->max_rsz_width = CIF_ISP_INPUT_W_MAX_V32; |
---|
1746 | | - st_cfg->max_rsz_height = CIF_ISP_INPUT_H_MAX_V32; |
---|
| 1750 | + st_cfg->max_rsz_width = dev->hw_dev->unite ? |
---|
| 1751 | + CIF_ISP_INPUT_W_MAX_V32_UNITE : CIF_ISP_INPUT_W_MAX_V32; |
---|
| 1752 | + st_cfg->max_rsz_height = dev->hw_dev->unite ? |
---|
| 1753 | + CIF_ISP_INPUT_H_MAX_V32_UNITE : CIF_ISP_INPUT_H_MAX_V32; |
---|
1747 | 1754 | ret = rkisp_register_stream_v32(dev); |
---|
1748 | 1755 | } else if (dev->isp_ver == ISP_V32_L) { |
---|
1749 | 1756 | st_cfg->max_rsz_width = CIF_ISP_INPUT_W_MAX_V32_L; |
---|