1 /* SPDX-License-Identifier: GPL-2.0 */ 2 /* 3 * Support for Intel Camera Imaging ISP subsystem. 4 * Copyright (c) 2015, Intel Corporation. 5 * 6 * This program is free software; you can redistribute it and/or modify it 7 * under the terms and conditions of the GNU General Public License, 8 * version 2, as published by the Free Software Foundation. 9 * 10 * This program is distributed in the hope it will be useful, but WITHOUT 11 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 12 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 13 * more details. 14 */ 15 16 #ifndef __CSI_RX_LOCAL_H_INCLUDED__ 17 #define __CSI_RX_LOCAL_H_INCLUDED__ 18 19 #include "csi_rx_global.h" 20 #define N_CSI_RX_BE_MIPI_COMP_FMT_REG 4 21 #define N_CSI_RX_BE_MIPI_CUSTOM_PEC 12 22 #define N_CSI_RX_BE_SHORT_PKT_LUT 4 23 #define N_CSI_RX_BE_LONG_PKT_LUT 8 24 typedef struct csi_rx_fe_ctrl_state_s csi_rx_fe_ctrl_state_t; 25 typedef struct csi_rx_fe_ctrl_lane_s csi_rx_fe_ctrl_lane_t; 26 typedef struct csi_rx_be_ctrl_state_s csi_rx_be_ctrl_state_t; 27 /*mipi_backend_custom_mode_pixel_extraction_config*/ 28 typedef struct csi_rx_be_ctrl_pec_s csi_rx_be_ctrl_pec_t; 29 30 struct csi_rx_fe_ctrl_lane_s { 31 hrt_data termen; 32 hrt_data settle; 33 }; 34 35 struct csi_rx_fe_ctrl_state_s { 36 hrt_data enable; 37 hrt_data nof_enable_lanes; 38 hrt_data error_handling; 39 hrt_data status; 40 hrt_data status_dlane_hs; 41 hrt_data status_dlane_lp; 42 csi_rx_fe_ctrl_lane_t clane; 43 csi_rx_fe_ctrl_lane_t dlane[N_CSI_RX_DLANE_ID]; 44 }; 45 46 struct csi_rx_be_ctrl_state_s { 47 hrt_data enable; 48 hrt_data status; 49 hrt_data comp_format_reg[N_CSI_RX_BE_MIPI_COMP_FMT_REG]; 50 hrt_data raw16; 51 hrt_data raw18; 52 hrt_data force_raw8; 53 hrt_data irq_status; 54 hrt_data custom_mode_enable; 55 hrt_data custom_mode_data_state; 56 hrt_data pec[N_CSI_RX_BE_MIPI_CUSTOM_PEC]; 57 hrt_data custom_mode_valid_eop_config; 58 hrt_data global_lut_disregard_reg; 59 hrt_data packet_status_stall; 60 hrt_data short_packet_lut_entry[N_CSI_RX_BE_SHORT_PKT_LUT]; 61 hrt_data long_packet_lut_entry[N_CSI_RX_BE_LONG_PKT_LUT]; 62 }; 63 #endif /* __CSI_RX_LOCAL_H_INCLUDED__ */ 64