1*4882a593Smuzhiyun /* SPDX-License-Identifier: GPL-2.0 */ 2*4882a593Smuzhiyun /* Copyright (c) 2019 Fuzhou Rockchip Electronics Co., Ltd. */ 3*4882a593Smuzhiyun 4*4882a593Smuzhiyun #ifndef _RKISPP_VERSION_H 5*4882a593Smuzhiyun #define _RKISPP_VERSION_H 6*4882a593Smuzhiyun #include <linux/version.h> 7*4882a593Smuzhiyun #include <linux/rk-ispp-config.h> 8*4882a593Smuzhiyun 9*4882a593Smuzhiyun /* 10*4882a593Smuzhiyun * RKISPP DRIVER VERSION NOTE 11*4882a593Smuzhiyun * 12*4882a593Smuzhiyun * v0.1.0: 13*4882a593Smuzhiyun * 1. First version; 14*4882a593Smuzhiyun * 15*4882a593Smuzhiyun * v0.1.1: 16*4882a593Smuzhiyun * 1. support fbc output format 17*4882a593Smuzhiyun * 2. support fec function 18*4882a593Smuzhiyun * 3. support oneframe mode 19*4882a593Smuzhiyun * 20*4882a593Smuzhiyun * v0.1.2: 21*4882a593Smuzhiyun * 1. support multi virtual device; 22*4882a593Smuzhiyun * 23*4882a593Smuzhiyun * v0.1.3: 24*4882a593Smuzhiyun * 1. fix reg write err for fec 25*4882a593Smuzhiyun * 26*4882a593Smuzhiyun * v0.1.4: 27*4882a593Smuzhiyun * 1. add clk rate set for rv1126 28*4882a593Smuzhiyun * 2. safe to enable shp/fec output 29*4882a593Smuzhiyun * 3. tnr skip input buf if no output buf 30*4882a593Smuzhiyun * 31*4882a593Smuzhiyun * v0.1.5: 32*4882a593Smuzhiyun * 1. add proc fs 33*4882a593Smuzhiyun * 2. add iq part information to procfs 34*4882a593Smuzhiyun * 3. fix config err for stream switch 35*4882a593Smuzhiyun * 36*4882a593Smuzhiyun * v0.1.6: 37*4882a593Smuzhiyun * 1. tnr support dynamic switch 38*4882a593Smuzhiyun * 39*4882a593Smuzhiyun * v0.1.7: 40*4882a593Smuzhiyun * 1. fix cannot change some shadow bits by only config function 41*4882a593Smuzhiyun * 2. fix scl0 format check error 42*4882a593Smuzhiyun * 3. vb2 support cache hints 43*4882a593Smuzhiyun * 44*4882a593Smuzhiyun * v0.1.8: 45*4882a593Smuzhiyun * 1. add monitor to restart if abnormal 46*4882a593Smuzhiyun * 2. isp/ispp procfs add work info 47*4882a593Smuzhiyun * 3. scl add yuyv format 48*4882a593Smuzhiyun * 4. fix config err for tnr init off 49*4882a593Smuzhiyun * 50*4882a593Smuzhiyun * v0.1.9: 51*4882a593Smuzhiyun * 1. isp and ispp sync to power off 52*4882a593Smuzhiyun * 2. fix error status of stream off 53*4882a593Smuzhiyun * 3. use fec share buffer to reduce buffer size 54*4882a593Smuzhiyun * 55*4882a593Smuzhiyun * v1.2.0: 56*4882a593Smuzhiyun * 1. waiting all modules to idle to free buf 57*4882a593Smuzhiyun * 2. enable sharp dma to ddr default 58*4882a593Smuzhiyun * 3. using common dummy buf to save memory 59*4882a593Smuzhiyun * 4. monitor thread to alive during work 60*4882a593Smuzhiyun * 5. fix monitor thread exit 61*4882a593Smuzhiyun * 6. tnr/nr/fec sync to start 62*4882a593Smuzhiyun * 7. fec read yuyv format 63*4882a593Smuzhiyun * 64*4882a593Smuzhiyun * v1.2.1: 65*4882a593Smuzhiyun * 1. fix can't work due to last abnormal exit 66*4882a593Smuzhiyun * 67*4882a593Smuzhiyun * v1.2.2: 68*4882a593Smuzhiyun * 1. isp/ispp add lock for multi dev runtime 69*4882a593Smuzhiyun * 2. fix error state of monitor 70*4882a593Smuzhiyun * 3. fix mmu err due to buf free for multi dev 71*4882a593Smuzhiyun * 4. support output isp/ispp reg on each frame 72*4882a593Smuzhiyun * 5. fix error detected by depmod 73*4882a593Smuzhiyun * 74*4882a593Smuzhiyun * v1.3.0: 75*4882a593Smuzhiyun * 1. fec extend to independent video 76*4882a593Smuzhiyun * 2. reduce buf count 77*4882a593Smuzhiyun * 3. dummy buf map to one page if iommu enable 78*4882a593Smuzhiyun * 4. vb2 dma sg for iommu enable 79*4882a593Smuzhiyun * 80*4882a593Smuzhiyun * v1.4.1 81*4882a593Smuzhiyun * 1. support motion detection mode 82*4882a593Smuzhiyun * 2. fix panic for vmap at interrupt 83*4882a593Smuzhiyun * 3. add virtual video for iqtool 84*4882a593Smuzhiyun * 85*4882a593Smuzhiyun * v1.5.1 86*4882a593Smuzhiyun * 1. add vb2_rdma_sg_memops to support contiguous page 87*4882a593Smuzhiyun * 2. fix config of clk_dbg 88*4882a593Smuzhiyun * 3. check frame id when apply params 89*4882a593Smuzhiyun * 90*4882a593Smuzhiyun * v1.6.0 (match aiq v1.66.0) 91*4882a593Smuzhiyun * 1. limit min clk to 50 92*4882a593Smuzhiyun * 2. check scl stop if fec enable 93*4882a593Smuzhiyun * 3. sync to free buf for multi dev stream off 94*4882a593Smuzhiyun * 4. support output isp/ispp reg in nv12 format 95*4882a593Smuzhiyun * 5. isp and ispp add shutdown 96*4882a593Smuzhiyun * 6. optimize the frame rate of fec en 97*4882a593Smuzhiyun * 7. image input from user 98*4882a593Smuzhiyun * 8. fix input video config 99*4882a593Smuzhiyun * 9. add cru reset 100*4882a593Smuzhiyun * 10. check SHARP_CORE_CTRL after update 101*4882a593Smuzhiyun * 11. add uvnr sd32 self en control 102*4882a593Smuzhiyun * 103*4882a593Smuzhiyun * v1.6.1 104*4882a593Smuzhiyun * 1. reserved memory using rdma_sg ops 105*4882a593Smuzhiyun * 2. destory ispp buffers if start_stream failed 106*4882a593Smuzhiyun * 107*4882a593Smuzhiyun * v1.6.2 108*4882a593Smuzhiyun * 1. fix isp and ispp share dmabuf release fail 109*4882a593Smuzhiyun * 2. fix bug that ispp register isn't included in SEI 110*4882a593Smuzhiyun * 3. frame buffer done early 111*4882a593Smuzhiyun * 4. reset at frame end 112*4882a593Smuzhiyun * 5. fix page fault due to scl exit early 113*4882a593Smuzhiyun * 6. fbc error handle 114*4882a593Smuzhiyun * 7. first frame handle for multi dev 115*4882a593Smuzhiyun * 8. fix driver mode sync with ispserver 116*4882a593Smuzhiyun * 117*4882a593Smuzhiyun * v1.7.0 118*4882a593Smuzhiyun * 1. off unused interrupt 119*4882a593Smuzhiyun * 2. fix monitor switch if don't power off 120*4882a593Smuzhiyun * 3. frame start to check stream output buffer 121*4882a593Smuzhiyun * 4. add frame loss info to procfs 122*4882a593Smuzhiyun * 5. fix monitor no working 123*4882a593Smuzhiyun * 6. disable scl dma write if no output buffer 124*4882a593Smuzhiyun * 125*4882a593Smuzhiyun * v1.8.0 126*4882a593Smuzhiyun * 1. sync alloc buf with dma sg case 127*4882a593Smuzhiyun * 2. remove tnr iir first frame skip 128*4882a593Smuzhiyun * 3. replace iommu detach/attach 129*4882a593Smuzhiyun * 4. solving ispp compilation problems 130*4882a593Smuzhiyun * 5. add the stream_v20 131*4882a593Smuzhiyun * 6. add rk3588 config 132*4882a593Smuzhiyun * 7. Make rkispp_module_work_event() static 133*4882a593Smuzhiyun * 8. add the iqtool module 134*4882a593Smuzhiyun */ 135*4882a593Smuzhiyun 136*4882a593Smuzhiyun #define RKISPP_DRIVER_VERSION ISPP_API_VERSION 137*4882a593Smuzhiyun 138*4882a593Smuzhiyun #endif 139