.. | .. |
---|
657 | 657 | return 0; |
---|
658 | 658 | } |
---|
659 | 659 | EXPORT_SYMBOL(rkisp_rockit_get_ispdev); |
---|
| 660 | + |
---|
| 661 | +int rkisp_rockit_get_isp_mode(const char *name) |
---|
| 662 | +{ |
---|
| 663 | + struct rkisp_device *ispdev = NULL; |
---|
| 664 | + int i, ret = -EINVAL; |
---|
| 665 | + |
---|
| 666 | + if (rockit_cfg == NULL) |
---|
| 667 | + goto end; |
---|
| 668 | + |
---|
| 669 | + for (i = 0; i < rockit_cfg->isp_num; i++) { |
---|
| 670 | + if (!strcmp(rockit_cfg->rkisp_dev_cfg[i].isp_name, name)) { |
---|
| 671 | + ispdev = rockit_cfg->rkisp_dev_cfg[i].isp_dev; |
---|
| 672 | + break; |
---|
| 673 | + } |
---|
| 674 | + } |
---|
| 675 | + if (!ispdev) |
---|
| 676 | + goto end; |
---|
| 677 | + |
---|
| 678 | + if (ispdev->is_pre_on) { |
---|
| 679 | + if (IS_HDR_RDBK(ispdev->rd_mode)) |
---|
| 680 | + ret = RKISP_FAST_OFFLINE; |
---|
| 681 | + else |
---|
| 682 | + ret = RKISP_FAST_ONLINE; |
---|
| 683 | + } else { |
---|
| 684 | + if (IS_HDR_RDBK(ispdev->rd_mode)) |
---|
| 685 | + ret = RKISP_NORMAL_OFFLINE; |
---|
| 686 | + else |
---|
| 687 | + ret = RKISP_NORMAL_ONLINE; |
---|
| 688 | + } |
---|
| 689 | + |
---|
| 690 | +end: |
---|
| 691 | + return ret; |
---|
| 692 | +} |
---|
| 693 | +EXPORT_SYMBOL(rkisp_rockit_get_isp_mode); |
---|