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 _input_selector_defs_h 17 #define _input_selector_defs_h 18 19 #ifndef HIVE_ISP_ISEL_SEL_BITS 20 #define HIVE_ISP_ISEL_SEL_BITS 2 21 #endif 22 23 #ifndef HIVE_ISP_CH_ID_BITS 24 #define HIVE_ISP_CH_ID_BITS 2 25 #endif 26 27 #ifndef HIVE_ISP_FMT_TYPE_BITS 28 #define HIVE_ISP_FMT_TYPE_BITS 5 29 #endif 30 31 /* gp_register register id's -- Outputs */ 32 #define HIVE_ISEL_GP_REGS_SYNCGEN_ENABLE_IDX 0 33 #define HIVE_ISEL_GP_REGS_SYNCGEN_FREE_RUNNING_IDX 1 34 #define HIVE_ISEL_GP_REGS_SYNCGEN_PAUSE_IDX 2 35 #define HIVE_ISEL_GP_REGS_SYNCGEN_NR_FRAMES_IDX 3 36 #define HIVE_ISEL_GP_REGS_SYNCGEN_NR_PIX_IDX 4 37 #define HIVE_ISEL_GP_REGS_SYNCGEN_NR_LINES_IDX 5 38 #define HIVE_ISEL_GP_REGS_SYNCGEN_HBLANK_CYCLES_IDX 6 39 #define HIVE_ISEL_GP_REGS_SYNCGEN_VBLANK_CYCLES_IDX 7 40 41 #define HIVE_ISEL_GP_REGS_SOF_IDX 8 42 #define HIVE_ISEL_GP_REGS_EOF_IDX 9 43 #define HIVE_ISEL_GP_REGS_SOL_IDX 10 44 #define HIVE_ISEL_GP_REGS_EOL_IDX 11 45 46 #define HIVE_ISEL_GP_REGS_PRBS_ENABLE 12 47 #define HIVE_ISEL_GP_REGS_PRBS_ENABLE_PORT_B 13 48 #define HIVE_ISEL_GP_REGS_PRBS_LFSR_RESET_VALUE 14 49 50 #define HIVE_ISEL_GP_REGS_TPG_ENABLE 15 51 #define HIVE_ISEL_GP_REGS_TPG_ENABLE_PORT_B 16 52 #define HIVE_ISEL_GP_REGS_TPG_HOR_CNT_MASK_IDX 17 53 #define HIVE_ISEL_GP_REGS_TPG_VER_CNT_MASK_IDX 18 54 #define HIVE_ISEL_GP_REGS_TPG_XY_CNT_MASK_IDX 19 55 #define HIVE_ISEL_GP_REGS_TPG_HOR_CNT_DELTA_IDX 20 56 #define HIVE_ISEL_GP_REGS_TPG_VER_CNT_DELTA_IDX 21 57 #define HIVE_ISEL_GP_REGS_TPG_MODE_IDX 22 58 #define HIVE_ISEL_GP_REGS_TPG_R1_IDX 23 59 #define HIVE_ISEL_GP_REGS_TPG_G1_IDX 24 60 #define HIVE_ISEL_GP_REGS_TPG_B1_IDX 25 61 #define HIVE_ISEL_GP_REGS_TPG_R2_IDX 26 62 #define HIVE_ISEL_GP_REGS_TPG_G2_IDX 27 63 #define HIVE_ISEL_GP_REGS_TPG_B2_IDX 28 64 65 #define HIVE_ISEL_GP_REGS_CH_ID_IDX 29 66 #define HIVE_ISEL_GP_REGS_FMT_TYPE_IDX 30 67 #define HIVE_ISEL_GP_REGS_DATA_SEL_IDX 31 68 #define HIVE_ISEL_GP_REGS_SBAND_SEL_IDX 32 69 #define HIVE_ISEL_GP_REGS_SYNC_SEL_IDX 33 70 #define HIVE_ISEL_GP_REGS_SRST_IDX 37 71 72 #define HIVE_ISEL_GP_REGS_SRST_SYNCGEN_BIT 0 73 #define HIVE_ISEL_GP_REGS_SRST_PRBS_BIT 1 74 #define HIVE_ISEL_GP_REGS_SRST_TPG_BIT 2 75 #define HIVE_ISEL_GP_REGS_SRST_FIFO_BIT 3 76 77 /* gp_register register id's -- Inputs */ 78 #define HIVE_ISEL_GP_REGS_SYNCGEN_HOR_CNT_IDX 34 79 #define HIVE_ISEL_GP_REGS_SYNCGEN_VER_CNT_IDX 35 80 #define HIVE_ISEL_GP_REGS_SYNCGEN_FRAMES_CNT_IDX 36 81 82 /* irq sources isel irq controller */ 83 #define HIVE_ISEL_IRQ_SYNC_GEN_SOF_BIT_ID 0 84 #define HIVE_ISEL_IRQ_SYNC_GEN_EOF_BIT_ID 1 85 #define HIVE_ISEL_IRQ_SYNC_GEN_SOL_BIT_ID 2 86 #define HIVE_ISEL_IRQ_SYNC_GEN_EOL_BIT_ID 3 87 #define HIVE_ISEL_IRQ_NUM_IRQS 4 88 89 #endif /* _input_selector_defs_h */ 90