.. | .. |
---|
33 | 33 | |
---|
34 | 34 | #define ISP2X_RAWAF_INT_LINE0_EN BIT(27) |
---|
35 | 35 | |
---|
| 36 | +static void isp_module_done(struct rkisp_isp_stats_vdev *stats_vdev, |
---|
| 37 | + u32 reg, u32 value) |
---|
| 38 | +{ |
---|
| 39 | + void __iomem *base = stats_vdev->dev->hw_dev->base_addr; |
---|
| 40 | + |
---|
| 41 | + writel(value, base + reg); |
---|
| 42 | +} |
---|
| 43 | + |
---|
36 | 44 | static int |
---|
37 | 45 | rkisp_stats_get_rawawb_meas_reg(struct rkisp_isp_stats_vdev *stats_vdev, |
---|
38 | 46 | struct rkisp_isp21_stat_buffer *pbuf) |
---|
.. | .. |
---|
789 | 797 | |
---|
790 | 798 | value = rkisp_read(stats_vdev->dev, ISP21_RAWAWB_CTRL, true); |
---|
791 | 799 | if (value & ISP2X_3A_MEAS_DONE) |
---|
792 | | - rkisp_write(stats_vdev->dev, ISP21_RAWAWB_CTRL, value, true); |
---|
| 800 | + isp_module_done(stats_vdev, ISP21_RAWAWB_CTRL, value); |
---|
793 | 801 | return 0; |
---|
794 | 802 | } |
---|
795 | 803 | |
---|
.. | .. |
---|
800 | 808 | |
---|
801 | 809 | value = rkisp_read(stats_vdev->dev, ISP_RAWAF_CTRL, true); |
---|
802 | 810 | if (value & ISP2X_3A_MEAS_DONE) { |
---|
803 | | - rkisp_write(stats_vdev->dev, ISP_RAWAF_CTRL, value, true); |
---|
804 | 811 | rkisp_write(stats_vdev->dev, ISP_RAWAF_INT_STATE, 0, true); |
---|
| 812 | + isp_module_done(stats_vdev, ISP_RAWAF_CTRL, value); |
---|
805 | 813 | } |
---|
806 | 814 | return 0; |
---|
807 | 815 | } |
---|
.. | .. |
---|
828 | 836 | |
---|
829 | 837 | value = rkisp_read(stats_vdev->dev, addr + RAWAE_BIG_CTRL, true); |
---|
830 | 838 | if (value & ISP2X_3A_MEAS_DONE) |
---|
831 | | - rkisp_write(stats_vdev->dev, addr + RAWAE_BIG_CTRL, value, true); |
---|
| 839 | + isp_module_done(stats_vdev, addr + RAWAE_BIG_CTRL, value); |
---|
832 | 840 | return 0; |
---|
833 | 841 | } |
---|
834 | 842 | |
---|
.. | .. |
---|
854 | 862 | |
---|
855 | 863 | value = rkisp_read(stats_vdev->dev, addr + ISP_RAWHIST_BIG_CTRL, true); |
---|
856 | 864 | if (value & ISP2X_3A_MEAS_DONE) |
---|
857 | | - rkisp_write(stats_vdev->dev, addr + ISP_RAWHIST_BIG_CTRL, value, true); |
---|
| 865 | + isp_module_done(stats_vdev, addr + ISP_RAWHIST_BIG_CTRL, value); |
---|
858 | 866 | return 0; |
---|
859 | 867 | } |
---|
860 | 868 | |
---|
.. | .. |
---|
901 | 909 | |
---|
902 | 910 | value = rkisp_read(stats_vdev->dev, ISP_RAWAE_LITE_CTRL, true); |
---|
903 | 911 | if (value & ISP2X_3A_MEAS_DONE) |
---|
904 | | - rkisp_write(stats_vdev->dev, ISP_RAWAE_LITE_CTRL, value, true); |
---|
| 912 | + isp_module_done(stats_vdev, ISP_RAWAE_LITE_CTRL, value); |
---|
905 | 913 | return 0; |
---|
906 | 914 | } |
---|
907 | 915 | |
---|
.. | .. |
---|
912 | 920 | |
---|
913 | 921 | value = rkisp_read(stats_vdev->dev, ISP_RAWHIST_LITE_CTRL, true); |
---|
914 | 922 | if (value & ISP2X_3A_MEAS_DONE) |
---|
915 | | - rkisp_write(stats_vdev->dev, ISP_RAWHIST_LITE_CTRL, value, true); |
---|
| 923 | + isp_module_done(stats_vdev, ISP_RAWHIST_LITE_CTRL, value); |
---|
916 | 924 | return 0; |
---|
917 | 925 | } |
---|
918 | 926 | |
---|
.. | .. |
---|
1092 | 1100 | work.frame_id = cur_frame_id; |
---|
1093 | 1101 | work.isp_ris = temp_isp_ris | isp_ris; |
---|
1094 | 1102 | work.isp3a_ris = temp_isp3a_ris | iq_3a_mask; |
---|
1095 | | - work.timestamp = ktime_get_ns(); |
---|
| 1103 | + work.timestamp = rkisp_time_get_ns(dev); |
---|
1096 | 1104 | |
---|
1097 | 1105 | rkisp_stats_send_meas_v21(stats_vdev, &work); |
---|
1098 | 1106 | } |
---|