1 #ifndef __UAPI_CAM_CPAS_H__ 2 #define __UAPI_CAM_CPAS_H__ 3 4 #include "cam_defs.h" 5 6 #define CAM_FAMILY_CAMERA_SS 1 7 #define CAM_FAMILY_CPAS_SS 2 8 9 #ifdef CONFIG_BOARD_SUNFISH 10 11 #define CAM_AXI_BW_VOTING_V2 2 12 13 #define CAM_AXI_TRANSACTION_READ 0 14 #define CAM_AXI_TRANSACTION_WRITE 1 15 16 #define CAM_AXI_PATH_DATA_IFE_START_OFFSET 0 17 #define CAM_AXI_PATH_DATA_IFE_LINEAR (CAM_AXI_PATH_DATA_IFE_START_OFFSET + 0) 18 #define CAM_AXI_PATH_DATA_IFE_VID (CAM_AXI_PATH_DATA_IFE_START_OFFSET + 1) 19 #define CAM_AXI_PATH_DATA_IFE_DISP (CAM_AXI_PATH_DATA_IFE_START_OFFSET + 2) 20 #define CAM_AXI_PATH_DATA_IFE_STATS (CAM_AXI_PATH_DATA_IFE_START_OFFSET + 3) 21 #define CAM_AXI_PATH_DATA_IFE_RDI0 (CAM_AXI_PATH_DATA_IFE_START_OFFSET + 4) 22 #define CAM_AXI_PATH_DATA_IFE_RDI1 (CAM_AXI_PATH_DATA_IFE_START_OFFSET + 5) 23 #define CAM_AXI_PATH_DATA_IFE_RDI2 (CAM_AXI_PATH_DATA_IFE_START_OFFSET + 6) 24 #define CAM_AXI_PATH_DATA_IFE_RDI3 (CAM_AXI_PATH_DATA_IFE_START_OFFSET + 7) 25 #define CAM_AXI_PATH_DATA_IFE_PDAF (CAM_AXI_PATH_DATA_IFE_START_OFFSET + 8) 26 #define CAM_AXI_PATH_DATA_IFE_PIXEL_RAW \ 27 (CAM_AXI_PATH_DATA_IFE_START_OFFSET + 9) 28 #define CAM_AXI_PATH_DATA_IFE_MAX_OFFSET \ 29 (CAM_AXI_PATH_DATA_IFE_START_OFFSET + 31) 30 31 #define CAM_AXI_PATH_DATA_IPE_START_OFFSET 32 32 #define CAM_AXI_PATH_DATA_IPE_RD_IN (CAM_AXI_PATH_DATA_IPE_START_OFFSET + 0) 33 #define CAM_AXI_PATH_DATA_IPE_RD_REF (CAM_AXI_PATH_DATA_IPE_START_OFFSET + 1) 34 #define CAM_AXI_PATH_DATA_IPE_WR_VID (CAM_AXI_PATH_DATA_IPE_START_OFFSET + 2) 35 #define CAM_AXI_PATH_DATA_IPE_WR_DISP (CAM_AXI_PATH_DATA_IPE_START_OFFSET + 3) 36 #define CAM_AXI_PATH_DATA_IPE_WR_REF (CAM_AXI_PATH_DATA_IPE_START_OFFSET + 4) 37 #define CAM_AXI_PATH_DATA_IPE_MAX_OFFSET \ 38 (CAM_AXI_PATH_DATA_IPE_START_OFFSET + 31) 39 40 #define CAM_AXI_PATH_DATA_ALL 256 41 42 struct cam_axi_per_path_bw_vote { 43 uint32_t usage_data; 44 uint32_t transac_type; 45 uint32_t path_data_type; 46 uint32_t reserved; 47 uint64_t camnoc_bw; 48 uint64_t mnoc_ab_bw; 49 uint64_t mnoc_ib_bw; 50 uint64_t ddr_ab_bw; 51 uint64_t ddr_ib_bw; 52 }; 53 54 #endif /* CONFIG_BOARD_SUNFISH */ 55 56 struct cam_cpas_query_cap { 57 uint32_t camera_family; 58 uint32_t reserved; 59 struct cam_hw_version camera_version; 60 struct cam_hw_version cpas_version; 61 }; 62 63 #endif /* __UAPI_CAM_CPAS_H__ */ 64