media: rockchip: isp: fix size for multi isp composite mode

Change-Id: I18dd3c58e043246a4899e0388c8289f093290577
Signed-off-by: Cai YiWei <cyw@rock-chips.com>
This commit is contained in:
Cai YiWei
2022-09-01 18:13:21 +08:00
committed by Tao Huang
parent 996e337caf
commit 55a9d1b059
3 changed files with 18 additions and 18 deletions

View File

@@ -3854,7 +3854,7 @@ multi_overflow:
*
* case1: bigmode special reg cfg
* _________ max width:4096
* | sensor0 | max size:1920*1080*2 mode=0 index=0
* | sensor0 | max size:3840*2160 mode=0 index=0
* |_________|
* |_sensor1_| max size:1920*1080 mode=2 index=2
* |_sensor2_| max size:1920*1080 mode=2 index=3
@@ -3874,7 +3874,7 @@ multi_overflow:
if (k) {
is_bigmode = true;
if (k != 1 ||
(hw->isp_size[idx1[0]].size > ISP21_VIR4_MAX_SIZE * 2)) {
(hw->isp_size[idx1[0]].size > ISP21_VIR2_MAX_SIZE)) {
dev_warn(dev, "isp%d %dx%d over three vir isp max:1920x1080\n",
idx1[0], hw->isp_size[idx1[0]].h, hw->isp_size[idx1[0]].w);
hw->is_multi_overflow = true;
@@ -3908,8 +3908,8 @@ multi_overflow:
*
* case1: bigmode special reg cfg
* _________ max width:4096
* | sensor0 | max size:1920*1080*3 mode=0 index=0
* | |
* | sensor0 | max size: mode=0 index=0
* | | 3840*2160+1920*1080
* |_________|
* |_sensor1_| max size:1920*1080 mode=2 index=3
* max width:1920
@@ -3932,7 +3932,7 @@ multi_overflow:
if (k) {
is_bigmode = true;
if (k == 2 || j ||
hw->isp_size[idx1[k - 1]].size > ISP21_VIR4_MAX_SIZE * 3) {
hw->isp_size[idx1[k - 1]].size > (ISP21_VIR4_MAX_SIZE + ISP21_VIR2_MAX_SIZE)) {
dev_warn(dev, "isp%d %dx%d over two vir isp max:3840x2160\n",
idx1[k - 1], hw->isp_size[idx1[k - 1]].w, hw->isp_size[idx1[k - 1]].h);
hw->is_multi_overflow = true;

View File

@@ -4238,7 +4238,7 @@ multi_overflow:
*
* case1: bigmode special reg cfg
* _________ max width:3072
* | sensor0 | max size:1280*800*2 mode=0 index=0
* | sensor0 | max size:1920*1080 mode=0 index=0
* |_________|
* |_sensor1_| max size:1280*800 mode=2 index=2
* |_sensor2_| max size:1280*800 mode=2 index=3
@@ -4258,7 +4258,7 @@ multi_overflow:
if (k) {
is_bigmode = true;
if (k != 1 ||
(hw->isp_size[idx1[0]].size > ISP32_VIR4_MAX_SIZE * 2)) {
(hw->isp_size[idx1[0]].size > ISP32_VIR2_MAX_SIZE)) {
dev_warn(dev, "isp%d %dx%d over three vir isp max:1280x800\n",
idx1[0], hw->isp_size[idx1[0]].w, hw->isp_size[idx1[0]].h);
hw->is_multi_overflow = true;
@@ -4284,16 +4284,16 @@ multi_overflow:
ispdev->multi_index = ispdev->dev_id;
ispdev->multi_mode = 1;
/* case0: bigmode nobigmode
* _________ max width:1920 max width:1920
* | sensor0 | max size:1920*1080 max size:1920*1080
* _________ max width:1920 max width:960
* | sensor0 | max size:1920*1080 max size:960*540
* |_________|
* | sensor1 | max size:1920*1080 max size:1920*1080
* | sensor1 | max size:1920*1080 max size:960*540
* |_________|
*
* case1: bigmode special reg cfg
* _________ max width:3072
* | sensor0 | max size:1280*800*3 mode=0 index=0
* | |
* | sensor0 | max size: mode=0 index=0
* | | 1920*1080+1280*800
* |_________|
* |_sensor1_| max size:1280*800 mode=2 index=3
* max width:1280
@@ -4316,7 +4316,7 @@ multi_overflow:
if (k) {
is_bigmode = true;
if (k == 2 || j ||
hw->isp_size[idx1[k - 1]].size > ISP32_VIR4_MAX_SIZE * 3) {
hw->isp_size[idx1[k - 1]].size > (ISP32_VIR4_MAX_SIZE + ISP32_VIR2_MAX_SIZE)) {
dev_warn(dev, "isp%d %dx%d over two vir isp max:1920x1080\n",
idx1[k - 1], hw->isp_size[idx1[k - 1]].w, hw->isp_size[idx1[k - 1]].h);
hw->is_multi_overflow = true;

View File

@@ -4272,7 +4272,7 @@ multi_overflow:
*
* case1: bigmode special reg cfg
* _________ max width:4672
* | sensor0 | max size:2560*1536*2 mode=0 index=0
* | sensor0 | max size:3840*2160 mode=0 index=0
* |_________|
* |_sensor1_| max size:2560*1536 mode=2 index=2
* |_sensor2_| max size:2560*1536 mode=2 index=3
@@ -4292,7 +4292,7 @@ multi_overflow:
if (k) {
is_bigmode = true;
if (k != 1 ||
(hw->isp_size[idx1[0]].size > ISP3X_VIR4_MAX_SIZE * 2)) {
(hw->isp_size[idx1[0]].size > ISP3X_VIR2_MAX_SIZE)) {
dev_warn(dev, "isp%d %dx%d over three vir isp max:%dx1536\n",
idx1[0], hw->isp_size[idx1[0]].w, hw->isp_size[idx1[0]].h,
hw->is_unite ? (2560 - RKMOUDLE_UNITE_EXTEND_PIXEL) * 2 : 2560);
@@ -4327,8 +4327,8 @@ multi_overflow:
*
* case1: bigmode special reg cfg
* _________ max width:4672
* | sensor0 | max size:2560*2160*3 mode=0 index=0
* | |
* | sensor0 | max size: mode=0 index=0
* | | 3840*2160+2560*2160
* |_________|
* |_sensor1_| max size:2560*1536 mode=2 index=3
* max width:2560
@@ -4351,7 +4351,7 @@ multi_overflow:
if (k) {
is_bigmode = true;
if (k == 2 || j ||
hw->isp_size[idx1[k - 1]].size > ISP3X_VIR4_MAX_SIZE * 3) {
hw->isp_size[idx1[k - 1]].size > (ISP3X_VIR4_MAX_SIZE + ISP3X_VIR2_MAX_SIZE)) {
dev_warn(dev, "isp%d %dx%d over two vir isp max:%dx2160\n",
idx1[k - 1], hw->isp_size[idx1[k - 1]].w, hw->isp_size[idx1[k - 1]].h,
hw->is_unite ? (3840 - RKMOUDLE_UNITE_EXTEND_PIXEL) * 2 : 3840);