| /* |
| * Copyright (C) 2017 Amlogic, Inc. All rights reserved. |
| * |
| * This program is free software; you can redistribute it and/or modify |
| * it under the terms of the GNU General Public License as published by |
| * the Free Software Foundation; either version 2 of the License, or |
| * (at your option) any later version. |
| * |
| * This program is distributed in the hope that it will be useful, but WITHOUT |
| * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or |
| * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for |
| * more details. |
| * |
| * You should have received a copy of the GNU General Public License along |
| * with this program; if not, write to the Free Software Foundation, Inc., |
| * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. |
| * |
| * Description: |
| */ |
| /* ----------------------------------------------------------------------*/ |
| /* This file is automatically generated from the script:*/ |
| /**/ |
| /* ./create_stb_define_for_C_code.pl*/ |
| /**/ |
| /* and was applied to the file*/ |
| /**/ |
| /* ./stb_define.h*/ |
| /**/ |
| /* DO NOT EDIT!!!!!*/ |
| /* ----------------------------------------------------------------------*/ |
| /**/ |
| #ifdef C_STB_DEFINE_H |
| #else |
| #define C_STB_DEFINE_H |
| |
| /*=================================================*/ |
| /* STB Registers Start*/ |
| /*=================================================*/ |
| /* -----------------------------------------------*/ |
| /*#define STB_CBUS_BASE 0x1600*/ |
| /* -----------------------------------------------*/ |
| /* There are two instantiations under one CBUS slave. |
| * Each CBUS slave can support*/ |
| /* 256 registers. |
| * Each demux is allocated 128 registers so set the offset in*/ |
| /* the middle*/ |
| /* Copy this define but don't add a base address*/ |
| /*#define DEMUX_1_OFFSET 0x00*/ |
| /*#define DEMUX_2_OFFSET 0x50*/ |
| /*#define DEMUX_3_OFFSET 0xa0*/ |
| /*======================================================*/ |
| /* STB TOP Registers (8'hf0 - 8'hf7)*/ |
| /*======================================================*/ |
| /* bit 30:28 -- ciplus_o_sel*/ |
| /* bit 27:26 -- ciplus_i_sel*/ |
| /* bit 25 -- use FAIL fro TS2*/ |
| /* bit 24 -- use FAIL fro TS1*/ |
| /* bit 23 -- use FAIL fro TS0*/ |
| /* bit 22 -- invert fec_error for S2P1*/ |
| /* bit 21 -- invert fec_data for S2P1*/ |
| /* bit 20 -- invert fec_sync for S2P1*/ |
| /* bit 19 -- invert fec_valid for S2P1*/ |
| /* bit 18 -- invert fec_clk for S2P1*/ |
| /* bit 17:16 -- fec_s_sel for S2P1 |
| * 00 - select TS0, 01 -- select TS1, 10 -- select TS2, 11 - TS3*/ |
| /* Bit 15 -- enable_des_pl_clk*/ |
| /* Bit 14 -- reserved*/ |
| /* Bit 13 -- use FAIL for TS3*/ |
| /* Bit 12:10 -- ts_out_select, |
| * 0-TS0, 1-TS1, 2-TS2, 3-TS3,4-S2P2, 5-S2P1, 6-S2P0, 7-File*/ |
| /* bit 9:8 -- des_i_sel 00 -- select demux0 as des input, |
| * 01 -- select_demux1, 10 -- select_demux2, 11 - reserved*/ |
| /* bit 7 -- enable_des_pl*/ |
| /* bit 6 -- invert fec_error for S2P0*/ |
| /* bit 5 -- invert fec_data for S2P0*/ |
| /* bit 4 -- invert fec_sync for S2P0*/ |
| /* bit 3 -- invert fec_valid for S2P0*/ |
| /* bit 2 -- invert fec_clk for S2P0*/ |
| /* bit 1:0 -- fec_s_sel for S2P0 |
| * 00 - select TS0, 01 -- select TS1, 10 -- select TS2, 11 - reserved*/ |
| /*#define STB_TOP_CONFIG (STB_CBUS_BASE + 0xf0) // 0x16f0*/ |
| /*----------- bit define -----------*/ |
| #define INVERT_S2P1_FEC_ERROR 22 |
| #define INVERT_S2P1_FEC_DATA 21 |
| #define INVERT_S2P1_FEC_SYNC 20 |
| #define INVERT_S2P1_FEC_VALID 19 |
| #define INVERT_S2P1_FEC_CLK 18 |
| #define S2P1_FEC_SERIAL_SEL 16 |
| #define ENABLE_DES_PL_CLK 15 |
| #define FAIL_TS3 13 |
| #define TS_OUTPUT_SOURCE 10 |
| #define DES_INPUT_SEL 8 |
| #define ENABLE_DES_PL 7 |
| #define INVERT_S2P0_FEC_ERROR 6 |
| #define INVERT_S2P0_FEC_DATA 5 |
| #define INVERT_S2P0_FEC_SYNC 4 |
| #define INVERT_S2P0_FEC_VALID 3 |
| #define INVERT_S2P0_FEC_CLK 2 |
| #define S2P0_FEC_SERIAL_SEL 0 |
| |
| //define STB_S2P2_CONFIG |
| #define S2P2_DISABLE 11 |
| #define S2P2_CLK_DIV 7 |
| #define INVERT_S2P2_FEC_ERROR 6 |
| #define INVERT_S2P2_FEC_DATA 5 |
| #define INVERT_S2P2_FEC_SYNC 4 |
| #define INVERT_S2P2_FEC_VALID 3 |
| #define INVERT_S2P2_FEC_CLK 2 |
| #define S2P2_FEC_SERIAL_SEL 0 |
| |
| |
| /* 31:24 -- file_m2ts_skip_bytes_hiu1*/ |
| /* 21 -- ts_hiu_enable_hiu1 */ |
| /*20:16 -- fec_clk_div_hiu1*/ |
| /*15:8 -- TS_package_length_sub_1_hiu1 */ |
| /*7:0 -- fec_sync_byte_hiu1*/ |
| /*#define TS_HIU1_CONFIG (STB_CBUS_BASE + 0x4e)*/ |
| #define FILE_M2TS_SKIP_BYTES_HIU1 24 |
| #define TS_HIU_ENABLE_HIU1 21 |
| #define FEC_CLK_DIV_HIU1 16 |
| #define TS_PACKAGE_LENGTH_SUB_1_HIU1 8 |
| #define FEC_SYNC_BYTE_HIU1 0 |
| |
| /*5:4 -- fec_sel_demux_2, default:2*/ |
| /*3:2 -- fec_sel_demux_1, default:1*/ |
| /*1:0 -- fec_sel_demux_0, default:0*/ |
| /*#define TS_TOP_CONFIG1 (STB_CBUS_BASE + 0x4f)*/ |
| #define FEC_SEL_DEMUX_2 4 |
| #define FEC_SEL_DEMUX_1 2 |
| #define FEC_SEL_DEMUX_0 0 |
| |
| /* 31:28 - s2p1_clk_div*/ |
| /* 27:24 - s2p0_clk_div*/ |
| /* 23 - s2p1_disable*/ |
| /* 22 - s2p0_disable*/ |
| /* 21 - Reserved*/ |
| /* 20 -- TS_OUT_error_INVERT*/ |
| /* 19 -- TS_OUT_data_INVERT*/ |
| /* 18 -- TS_OUT_sync_INVERT*/ |
| /* 17 -- TS_OUT_valid_INVERT*/ |
| /* 16 -- TS_OUT_clk_INVERT*/ |
| /* 15:8 -- TS_package_length_sub_1 (default : 187)*/ |
| /* 7:0 -- fec_sync_byte (default : 0x47)*/ |
| /*#define TS_TOP_CONFIG (STB_CBUS_BASE + 0xf1) // 0x16f1*/ |
| /*----------- bit define -----------*/ |
| #define TS_OUT_CLK_INVERT 16 |
| #define TS_PACKAGE_LENGTH_SUB_1 8 |
| #define FEC_DEFAULT_SYNC_BYTE 0 |
| |
| /* Bit 25:24 -- transport_scrambling_control_odd_2 // should be 3*/ |
| /* Bit 23:16 -- file_m2ts_skip_bytes*/ |
| /* Bit 15:8 -- des_out_dly*/ |
| /* Bit 7:6 -- transport_scrambling_control_odd // should be 3*/ |
| /* Bit 5 -- ts_hiu_enable*/ |
| /* Bit 4:0 -- fec_clk_div*/ |
| /*#define TS_FILE_CONFIG (STB_CBUS_BASE + 0xf2) // 0x16f2*/ |
| /*----------- bit define -----------*/ |
| #define TRANSPORT_SCRAMBLING_CONTROL_ODD_2 24 |
| #define FILE_M2TS_SKIP_BYTES 16 |
| #define DES_OUT_DLY 8 |
| #define TRANSPORT_SCRAMBLING_CONTROL_ODD 6 |
| #define TS_HIU_ENABLE 5 |
| #define FEC_FILE_CLK_DIV 0 |
| |
| /* Bit 19:14 -- des_2 ts pl state -- Read Only*/ |
| /* Bit 13:8 -- des ts pl state -- Read Only*/ |
| /* Bit 3:0 PID index to 8 PID to get key-set*/ |
| /* auto increse after TS_PL_PID_DATA read/write*/ |
| /*#define TS_PL_PID_INDEX (STB_CBUS_BASE + 0xf3) // 0x16f3*/ |
| /*----------- bit define -----------*/ |
| #define DES_TS_PL_STATE 8 |
| #define DES_2_TS_PL_STATE 14 |
| |
| /* Bit 13 -- PID match disble*/ |
| /* Bit 12:0 -- PID*/ |
| /*#define TS_PL_PID_DATA (STB_CBUS_BASE + 0xf4) // 0x16f4*/ |
| /*----------- bit define -----------*/ |
| #define PID_MATCH_DISABLE_HIGH 29 |
| #define PID_MATCH_HIGH 16 |
| #define PID_MATCH_DISABLE_LOW 13 |
| #define PID_MATCH_LOW 0 |
| |
| /*#define COMM_DESC_KEY0 |
| * (STB_CBUS_BASE + 0xf5) // 0x16f5 |
| Common descrambler key (key bits[63:32])*/ |
| /*#define COMM_DESC_KEY1 |
| * (STB_CBUS_BASE + 0xf6) // 0x16f6 |
| Common descrambler key (key bits[31:0])*/ |
| /*#define COMM_DESC_KEY_RW |
| * (STB_CBUS_BASE + 0xf7) // 0x16f7 // bits[3:0] |
| * point to the address to write the key |
| * {COMM_DESC_KEY3,...,COMM_DESC_KEY0}*/ |
| /* Writing this register writes the key to RAM*/ |
| |
| /* bit 15:8 - des_out_dly_2*/ |
| /* bit 7 - reserved*/ |
| /* Bit 6-- enable_des_pl_clk_2*/ |
| /* bit 5 - enable_des_pl_2*/ |
| /* bit 4:2 -- use_des_2 bit[2] -- demux0, bit[3] -- demux1, bit[4] -- demux2*/ |
| /* bit 1:0 -- des_i_sel_2 00 -- select_fec_0, 01 -- select_fec_1, |
| * 10 -- select_fec_2, 11 - reserved*/ |
| /*#define COMM_DESC_2_CTL (STB_CBUS_BASE + 0xff) *//*0x16ff*/ |
| |
| /*=======================================================*/ |
| /* Multiple STB Registers (8'h00 - 8'h45)*/ |
| /*=======================================================*/ |
| /* STB registers are 8'h0x*/ |
| /* Bit 15:0 -- version number : 0x0002 (v0.01)*/ |
| /*#define STB_VERSION |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x00) // 0x1600 // read only*/ |
| /*#define STB_VERSION_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x00) // 0x1650 // read only*/ |
| /*#define STB_VERSION_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x00) // 0x16a0 // read only*/ |
| |
| /*#define STB_TEST_REG |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x01) // 0x1601*/ |
| /*#define STB_TEST_REG_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x01) // 0x1651*/ |
| /*#define STB_TEST_REG_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x01) // 0x16a1*/ |
| |
| /* Bit 15 -- fec_core_select 1 - select descramble output*/ |
| /* Bit 14:12 - fec_select |
| * 0-TS0, 1-TS1, 2-TS2, 3,4-Reserved, 5-S2P1, 6-S2P0, 7-File*/ |
| /* Bit 11 -- FEC_CLK*/ |
| /* Bit 10 -- SOP*/ |
| /* Bit 9 -- D_VALID*/ |
| /* Bit 8 -- D_FAIL*/ |
| /* Bit 7:0 -- D_DATA 7:0*/ |
| /*#define FEC_INPUT_CONTROL |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x02) // 0x1602*/ |
| /*#define FEC_INPUT_CONTROL_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x02) // 0x1652*/ |
| /*#define FEC_INPUT_CONTROL_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x02) // 0x16a2*/ |
| /*----------- bit define -----------*/ |
| #define FEC_SEL_3BIT 16 |
| #define FEC_CORE_SEL 15 |
| #define FEC_SEL 12 |
| #define FEC_INPUT_FEC_CLK 11 |
| #define FEC_INPUT_SOP 10 |
| #define FEC_INPUT_D_VALID 9 |
| #define FEC_INPUT_D_FAIL 8 |
| |
| /*#define FEC_INPUT_DATA |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x03) // 0x1603 // read only*/ |
| /*#define FEC_INPUT_DATA_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x03) // 0x1653 // read only*/ |
| /*#define FEC_INPUT_DATA_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x03) // 0x16a3 // read only*/ |
| |
| /* bit 31 -- enable_free_clk_fec_data_valid*/ |
| /* bit 30 -- enable_free_clk_stb_reg*/ |
| /* bit 29 -- always_use_pes_package_length*/ |
| /* bit 28 -- disable_pre_incomplete_section_fix*/ |
| /* bit 27 -- pointer_field_multi_pre_en*/ |
| /* bit 26 -- ignore_pre_incomplete_section*/ |
| /* bit 25 -- video2_enable*/ |
| /* bit 24:22 -- video2_type*/ |
| /* bit 21 -- do_not_trust_pes_package_length*/ |
| /* bit 20 (bit 4) -- Bypass use recoder path*/ |
| /* bit 19 (bit 3) -- clear_PID_continuity_counter_valid*/ |
| /* bit 18 (bit 2) -- Disable Splicing*/ |
| /* bit 17 (bit 1) -- Insert PES_STRONG_SYNC in Audio PES*/ |
| /* bit 16 (bit 0) -- Insert PES_STRONG_SYNC in Video PES*/ |
| /* Bit 15 - do not trust section length*/ |
| /* Bit 14 - om cmd push even zero*/ |
| /* Bit 13 - reserved*/ |
| /* Bit 12 - SUB, OTHER PES interrupt at beginning of PES*/ |
| /* Bit 11 - discard_av_package -- for ts_recorder use only*/ |
| /* Bit 10 - ts_recorder_select 0:after PID filter 1:before PID filter*/ |
| /* Bit 9 - ts_recorder_enable*/ |
| /* Bit 8 - (table_id == 0xff) means section_end*/ |
| /* Bit 7 - do not send uncomplete section*/ |
| /* Bit 6 - do not discard duplicate package*/ |
| /* Bit 5 - search SOP when trasport_error_indicator*/ |
| /* Bit 4 - stb demux enable*/ |
| /* Bit 3 - do not reset state machine on SOP*/ |
| /* Bit 2 - search SOP when error happened |
| * ( when ignore_fail_n_sop, will have this case)*/ |
| /* Bit 1 - do not use SOP input ( check FEC sync byte instead )*/ |
| /* Bit 0 - ignore fec_error bit when non sop ( check error on SOP only)*/ |
| /*#define DEMUX_CONTROL |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x04) // 0x1604*/ |
| /*#define DEMUX_CONTROL_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x04) // 0x1654*/ |
| /*#define DEMUX_CONTROL_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x04) // 0x16a4*/ |
| /*----------- bit define -----------*/ |
| #define ENABLE_FREE_CLK_FEC_DATA_VALID 31 |
| #define ENABLE_FREE_CLK_STB_REG 30 |
| #define BYPASS_USE_RECODER_PATH 20 |
| #define CLEAR_PID_CONTINUITY_COUNTER_VALID 19 |
| #define DISABLE_SPLICING 18 |
| #define INSERT_AUDIO_PES_STRONG_SYNC 17 |
| #define INSERT_VIDEO_PES_STRONG_SYNC 16 |
| #define SECTION_LENGTH_UNTRUSTY 15 |
| #define OM_CMD_PUSH_EVEN_ZERO 14 |
| #define OTHER_INT_AT_PES_BEGINING 12 |
| #define DISCARD_AV_PACKAGE 11 |
| #define TS_RECORDER_SELECT 10 |
| #define TS_RECORDER_ENABLE 9 |
| #define SECTION_END_WITH_TABLE_ID 8 |
| #define SEND_COMPLETE_SECTION_ONLY 7 |
| #define KEEP_DUPLICATE_PACKAGE 6 |
| #define SEACH_SOP_ON_TRANSPORT_ERROR 5 |
| #define STB_DEMUX_ENABLE 4 |
| #define NO_RESET_ON_SOP 3 |
| #define SEARCH_SOP_ON_ERROR 2 |
| #define NOT_USE_OF_SOP_INPUT 1 |
| #define IGNORE_NONSOP_FEC_ERROR 0 |
| |
| /* bit 15:8 demux package length - 1 ( default : 187 )*/ |
| /* bit 7:0 default is 0x47*/ |
| /*#define FEC_SYNC_BYTE |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x05) // 0x1605*/ |
| /*#define FEC_SYNC_BYTE_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x05) // 0x1655*/ |
| /*#define FEC_SYNC_BYTE_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x05) // 0x16a5*/ |
| |
| /**************************************** |
| * FM Memory Usage : |
| * 0-15 (32 PID filter target) ---- 15:13-PID type 12:0-PID target or force data |
| * (force data : 1 will mask corespoding bit, |
| * 0 will disable this PID filter channel) |
| * advanced setting -- bit 7:0 |
| * bit 7 -- PID bit 12:11 compare result force |
| * bit 6 -- PID bit 10:9 compare result force |
| * bit 5 -- PID bit 8:7 compare result force |
| * bit 4 -- PID bit 6:5 compare result force |
| * bit 3 -- PID bit 4:3 compare result force |
| * bit 2 -- PID bit 2 compare result force |
| * bit 1 -- PID bit 1 compare result force |
| * bit 0 -- PID bit 0 compare result force |
| * 16-255(15x32 Section filter target) |
| * For first byte : Table_ID |
| * ---- 15-Mask High 4-bits |
| * 14-Mask Low 4-bits |
| * 13-disable_PID_check |
| * 12:8-PIDindex |
| * 7:0-section target (always EQ) |
| * For rest of bytes : |
| * ---- 15-Mask 14-EQ/NE 13-disable_PID_check |
| * ----12:8-PIDindex 7:0-section target (or force data) |
| * advanced setting -- bit 7:0 force compare result |
| **************************************************/ |
| /*----------- bit define -----------*/ |
| #define PID_TYPE 13 |
| #define PID_TARGET 0 |
| |
| #define SECTION_FIRSTBYTE_MASKHIGH 15 |
| #define SECTION_FIRSTBYTE_MASKLOW 14 |
| #define SECTION_FIRSTBYTE_DISABLE_PID_CHECK 13 |
| #define SECTION_FIRSTBYTE_PID_INDEX 8 |
| #define SECTION_TARGET 0 |
| |
| #define SECTION_RESTBYTE_MASK 15 |
| #define SECTION_RESTBYTE_MASK_EQ 14 |
| #define SECTION_RESTBYTE_DISABLE_PID_CHECK 13 |
| #define SECTION_RESTBYTE_PID_INDEX 8 |
| |
| /* bit 31:16 -- filter memory write data hi[31:16]*/ |
| /* bit 15:0 -- filter memory write data low [15:0]*/ |
| /*#define FM_WR_DATA |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x06) // 0x1606*/ |
| /*#define FM_WR_DATA_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x06) // 0x1656*/ |
| /*#define FM_WR_DATA_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x06) // 0x16a6*/ |
| /*----------- bit define -----------*/ |
| #define FM_WR_DATA_HI 16 |
| |
| /* bit 31:24 -- advanced setting hi*/ |
| /* bit 23:16 -- advanced setting low*/ |
| /* bit 15 -- filter memory write data request*/ |
| /* bit 7:0 -- filter memory write addr*/ |
| /*#define FM_WR_ADDR |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x07) // 0x1607*/ |
| /*#define FM_WR_ADDR_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x07) // 0x1657*/ |
| /*#define FM_WR_ADDR_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x07) // 0x16a7*/ |
| /*----------- bit define -----------*/ |
| #define FM_ADVANCED_SETTING_HI 24 |
| #define FM_ADVANCED_SETTING_LO 16 |
| #define FM_WR_DATA_REQUEST 15 |
| |
| /* bit 13:8 demux state -- read only*/ |
| /* bit 7:4 -- maxnum section filter compare address*/ |
| /* bit 3:0 -- maxnum PID filter compare address*/ |
| /*#define MAX_FM_COMP_ADDR |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x08) // 0x1608*/ |
| /*#define MAX_FM_COMP_ADDR_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x08) // 0x1658*/ |
| /*#define MAX_FM_COMP_ADDR_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x08) // 0x16a8*/ |
| /*----------- bit define -----------*/ |
| #define DEMUX_STATE 8 |
| #define MAX_FM_SECTION_FILTER_COMP_ADDR 4 |
| |
| /* bit 15 - transport_error_indicator*/ |
| /* bit 14 - payload_unit_start_indicator*/ |
| /* bit 13 - transport_priority*/ |
| /* bit 12:0 - PID*/ |
| /*#define TS_HEAD_0 |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x09) // 0x1609*/ |
| /*#define TS_HEAD_0_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x09) // 0x1659*/ |
| /*#define TS_HEAD_0_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x09) // 0x16a9*/ |
| /*----------- bit define -----------*/ |
| #define TRANSPORT_ERROR_INDICATOR 15 |
| #define PAYLOAD_UNIT_START_INDICATOR 14 |
| #define TRANSPORT_PRIORITY 13 |
| |
| /* bit 7:6 transport_scrambling_control*/ |
| /* bit 5:4 adaptation_field_control*/ |
| /* bit 3:0 continuity_counter*/ |
| /*#define TS_HEAD_1 |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x0a) // 0x160a*/ |
| /*#define TS_HEAD_1_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x0a) // 0x165a*/ |
| /*#define TS_HEAD_1_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x0a) // 0x16aa*/ |
| /*----------- bit define -----------*/ |
| #define TRANSPORT_SCRAMBLING_CONTROL 6 |
| #define ADAPTATION_FIELD_CONTROL 4 |
| |
| /* bit 15:12 -- om_cmd_count (read only)*/ |
| /* bit 11:9 -- overflow_count // bit 11:9 -- om_cmd_wr_ptr (read only)*/ |
| /* bit 8:6 -- om_overwrite_count // bit 8:6 -- om_cmd_rd_ptr (read only)*/ |
| /* bit 5:3 -- type_stb_om_w_rd (read only)*/ |
| /* bit 2 -- unit_start_stb_om_w_rd (read only)*/ |
| /* bit 1 -- om_cmd_overflow (read only)*/ |
| /* bit 0 -- om_cmd_pending (read)*/ |
| /* bit 0 -- om_cmd_read_finished (write)*/ |
| /*#define OM_CMD_STATUS |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x0b) // 0x160b*/ |
| /*#define OM_CMD_STATUS_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x0b) // 0x165b*/ |
| /*#define OM_CMD_STATUS_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x0b) // 0x16ab*/ |
| /*----------- bit define -----------*/ |
| #define OM_CMD_COUNT 12 |
| #define OM_OVERFLOW_COUNT 9 |
| #define OM_OVERWRITE_COUNT 6 |
| #define TYPE_STB_OM_W_RD 3 |
| #define UNIT_START_STB_OM_W_RD 2 |
| #define OM_CMD_OVERFLOW 1 |
| |
| /* bit 15:9 -- count_stb_om_w_rd (read only)*/ |
| /* bit 8:0 -- start_stb_om_wa_rd (read only)*/ |
| /*#define OM_CMD_DATA |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x0c) // 0x160c*/ |
| /*#define OM_CMD_DATA_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x0c) // 0x165c*/ |
| /*#define OM_CMD_DATA_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x0c) // 0x16ac*/ |
| /*----------- bit define -----------*/ |
| #define COUNT_STB_OM_W_RD 9 |
| |
| /* bit 11:0 -- offset for section data*/ |
| /*#define OM_CMD_DATA2 |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x0d) // 0x160d*/ |
| /*#define OM_CMD_DATA2_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x0d) // 0x165d*/ |
| /*#define OM_CMD_DATA2_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x0d) // 0x16ad*/ |
| |
| /* bit 31:16 -- base address for section buffer group 0 |
| * (*0x400 to get real address)*/ |
| /* bit 15:0 -- base address for section buffer group 1 |
| * (*0x400 to get real address)*/ |
| /*#define SEC_BUFF_01_START |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x0e) // 0x160e*/ |
| /*#define SEC_BUFF_01_START_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x0e) // 0x165e*/ |
| /*#define SEC_BUFF_01_START_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x0e) // 0x16ae*/ |
| /*----------- bit define -----------*/ |
| #define SEC_BUFF_0_BASE_ADDR 16 |
| |
| /* bit 31:16 -- base address for section buffer group 2 |
| * (*0x400 to get real address)*/ |
| /* bit 15:0 -- base address for section buffer group 3 |
| * (*0x400 to get real address)*/ |
| /*#define SEC_BUFF_23_START |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x0f) // 0x160f*/ |
| /*#define SEC_BUFF_23_START_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x0f) // 0x165f*/ |
| /*#define SEC_BUFF_23_START_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x0f) // 0x16af*/ |
| /*----------- bit define -----------*/ |
| #define SEC_BUFF_2_BASE_ADDR 16 |
| |
| /* bit 15:12 -- section buffer size for group 3*/ |
| /* bit 11:8 -- section buffer size for group 2*/ |
| /* bit 7:4 -- section buffer size for group 1*/ |
| /* bit 3:0 -- section buffer size for group 0 |
| * (bit used, for example, 10 means 1K)*/ |
| /*#define SEC_BUFF_SIZE |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x10) // 0x1610*/ |
| /*#define SEC_BUFF_SIZE_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x10) // 0x1660*/ |
| /*#define SEC_BUFF_SIZE_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x10) // 0x16b0*/ |
| /*----------- bit define -----------*/ |
| #define SEC_BUFF_3_SIZE 12 |
| #define SEC_BUFF_2_SIZE 8 |
| #define SEC_BUFF_1_SIZE 4 |
| |
| /* section buffer busy status for buff 31:0 ( Read Only )*/ |
| /*#define SEC_BUFF_BUSY |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x11) // 0x1611*/ |
| /*#define SEC_BUFF_BUSY_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x11) // 0x1661*/ |
| /*#define SEC_BUFF_BUSY_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x11) // 0x16b1*/ |
| |
| /* section buffer write status for buff 31:0 -- Read*/ |
| /* clear buffer status ( buff READY and BUSY ) -- write*/ |
| /*#define SEC_BUFF_READY |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x12) // 0x1612*/ |
| /*#define SEC_BUFF_READY_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x12) // 0x1662*/ |
| /*#define SEC_BUFF_READY_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x12) // 0x16b2*/ |
| |
| /* bit 15 -- section_reset_busy (Read Only)*/ |
| /* bit 14 -- output_section_buffer_valid*/ |
| /* bit 12:8 -- SEC_BUFFER_NUMBER for the INDEX buffer Read_Only*/ |
| /* bit 4:0 -- SEC_BUFFER_INDEX RW*/ |
| /*#define SEC_BUFF_NUMBER |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x13) // 0x1613*/ |
| /*#define SEC_BUFF_NUMBER_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x13) // 0x1663*/ |
| /*#define SEC_BUFF_NUMBER_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x13) // 0x16b3*/ |
| /*----------- bit define -----------*/ |
| #define SECTION_RESET_BUSY 15 |
| #define OUTPUT_SECTION_BUFFER_VALID 14 |
| #define INDEXED_SEC_BUFF_NUMBER 8 |
| |
| /* bit 9:5 -- BYPASS PID number*/ |
| /* bit 4:0 -- PCR PID number*/ |
| /*#define ASSIGN_PID_NUMBER |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x14) // 0x1614*/ |
| /*#define ASSIGN_PID_NUMBER_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x14) // 0x1664*/ |
| /*#define ASSIGN_PID_NUMBER_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x14) // 0x16b4*/ |
| /*----------- bit define -----------*/ |
| #define BYPASS_PID_NUMBER 5 |
| |
| /* bit 15:0 -- stream_id filter bit enable*/ |
| /* bit 7:0 -- stream_id filter target*/ |
| /*#define VIDEO_STREAM_ID |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x15) // 0x1615*/ |
| /*#define VIDEO_STREAM_ID_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x15) // 0x1665*/ |
| /*#define VIDEO_STREAM_ID_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x15) // 0x16b5*/ |
| |
| /*#define AUDIO_STREAM_ID |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x16) // 0x1616*/ |
| /*#define AUDIO_STREAM_ID_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x16) // 0x1666*/ |
| /*#define AUDIO_STREAM_ID_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x16) // 0x16b6*/ |
| |
| /*#define SUB_STREAM_ID |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x17) // 0x1617*/ |
| /*#define SUB_STREAM_ID_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x17) // 0x1667*/ |
| /*#define SUB_STREAM_ID_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x17) // 0x16b7*/ |
| |
| /*#define OTHER_STREAM_ID |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x18) // 0x1618*/ |
| /*#define OTHER_STREAM_ID_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x18) // 0x1668*/ |
| /*#define OTHER_STREAM_ID_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x18) // 0x16b8*/ |
| |
| /* bit 12 -- PCR_EN*/ |
| /* bit 11:0 -- PCR90K_DIV*/ |
| /*#define PCR90K_CTL |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x19) // 0x1619*/ |
| /*#define PCR90K_CTL_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x19) // 0x1669*/ |
| /*#define PCR90K_CTL_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x19) // 0x16b9*/ |
| /*----------- bit define -----------*/ |
| #define PCR_EN 12 |
| |
| /* bit 15:0 -- PCR[31:0] R/W*/ |
| /*#define PCR_DEMUX |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x1a) // 0x161a*/ |
| /*#define PCR_DEMUX_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x1a) // 0x166a*/ |
| /*#define PCR_DEMUX_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x1a) // 0x16ba*/ |
| |
| /* bit 15:0 -- VPTS[31:0] R/W*/ |
| /*#define VIDEO_PTS_DEMUX |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x1b) // 0x161b*/ |
| /*#define VIDEO_PTS_DEMUX_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x1b) // 0x166b*/ |
| /*#define VIDEO_PTS_DEMUX_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x1b) // 0x16bb*/ |
| |
| /* bit 15:0 -- VDTS[31:0] R/W*/ |
| /*#define VIDEO_DTS_DEMUX |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x1c) // 0x161c*/ |
| /*#define VIDEO_DTS_DEMUX_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x1c) // 0x166c*/ |
| /*#define VIDEO_DTS_DEMUX_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x1c) // 0x16bc*/ |
| |
| /* bit 15:0 -- APTS[31:0] R/W*/ |
| /*#define AUDIO_PTS_DEMUX |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x1d) // 0x161d*/ |
| /*#define AUDIO_PTS_DEMUX_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x1d) // 0x166d*/ |
| /*#define AUDIO_PTS_DEMUX_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x1d) // 0x16bd*/ |
| |
| /* bit 15:0 -- SPTS[31:0] R/W*/ |
| /*#define SUB_PTS_DEMUX |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x1e) // 0x161e*/ |
| /*#define SUB_PTS_DEMUX_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x1e) // 0x166e*/ |
| /*#define SUB_PTS_DEMUX_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x1e) // 0x16be*/ |
| |
| /* read -- status, write 1 clear status*/ |
| /* bit 15 -- SUB_PTS[32]*/ |
| /* bit 14 -- AUDIO_PTS[32]*/ |
| /* bit 13 -- VIDEO_DTS[32]*/ |
| /* bit 12 -- VIDEO_PTS[32]*/ |
| /* bit 3 -- sub_pts_ready*/ |
| /* bit 2 -- audio_pts_ready*/ |
| /* bit 1 -- video_dts_ready*/ |
| /* bit 0 -- video_pts_ready*/ |
| /*#define STB_PTS_DTS_STATUS |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x1f) // 0x161f*/ |
| /*#define STB_PTS_DTS_STATUS_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x1f) // 0x166f*/ |
| /*#define STB_PTS_DTS_STATUS_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x1f) // 0x16bf*/ |
| /*----------- bit define -----------*/ |
| #define SUB_PTS_BIT32 15 |
| #define AUDIO_PTS_BIT32 14 |
| #define VIDEO_DTS_BIT32 13 |
| #define VIDEO_PTS_BIT32 12 |
| #define SUB_PTS_READY 3 |
| #define AUDIO_PTS_READY 2 |
| #define VIDEO_DTS_READY 1 |
| #define VIDEO_PTS_READY 0 |
| |
| /* bit 3:0 --*/ |
| /* 0 -- adaptation_field_length[7:0], adaption_field_byte_1[7:0]*/ |
| /* 1 -- stream_id[7:0], pes_header_bytes_left[7:0]*/ |
| /* 2 -- pes_package_bytes_left[15:0]*/ |
| /* 3 -- pes_ctr_byte[7:0], pes_flag_byte[7:0]*/ |
| /*#define STB_DEBUG_INDEX |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x20) // 0x1620*/ |
| /*#define STB_DEBUG_INDEX_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x20) // 0x1670*/ |
| /*#define STB_DEBUG_INDEX_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x20) // 0x16c0*/ |
| |
| /* read only*/ |
| /*#define STB_DEBUG_DATA_OUT |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x21) // 0x1621*/ |
| /*#define STB_DEBUG_DATA_OUT_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x21) // 0x1671*/ |
| /*#define STB_DEBUG_DATA_OUT_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x21) // 0x16c1*/ |
| |
| /* bit[31] -- no_match_record_en*/ |
| /* bit[30:16] - reserved*/ |
| /* default : 0x807f*/ |
| /* bit 15:9 -- MAX OM DMA COUNT (default: 0x40)*/ |
| /* bit 8:0 -- LAST ADDR OF OM ADDR (default: 127)*/ |
| /*#define STB_OM_CTL \ |
| (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x22) // 0x1622*/ |
| /*#define STB_OM_CTL_2 \ |
| (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x22) // 0x1672*/ |
| /*#define STB_OM_CTL_3 \ |
| (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x22) // 0x16c2*/ |
| /*----------- bit define -----------*/ |
| #define MAX_OM_DMA_COUNT 9 |
| #define LAST_OM_ADDR 0 |
| |
| /* 15:0 WRITE 1 CLEAR to clear interrupt source*/ |
| /*12 -- INPUT_TIME_OUT*/ |
| /*11 -- PCR_ready*/ |
| /*10 -- audio_splicing_point*/ |
| /* 9 -- video_splicing_point*/ |
| /* 8 -- other_PES_int*/ |
| /* 7 -- sub_PES_int*/ |
| /* 6 -- discontinuity*/ |
| /* 5 -- duplicated_pack_found*/ |
| /* 4 -- New PDTS ready*/ |
| /* 3 -- om_cmd_buffer ready for access*/ |
| /* 2 -- section buffer ready*/ |
| /* 1 -- transport_error_indicator*/ |
| /* 0 -- TS ERROR PIN*/ |
| /*#define STB_INT_STATUS |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x23) // 0x1623*/ |
| /*#define STB_INT_STATUS_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x23) // 0x1673*/ |
| /*#define STB_INT_STATUS_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x23) // 0x16c3*/ |
| /*----------- bit define -----------*/ |
| #define INPUT_TIME_OUT 12 |
| #define PCR_READY 11 |
| #define AUDIO_SPLICING_POINT 10 |
| #define VIDEO_SPLICING_POINT 9 |
| #define OTHER_PES_READY 8 |
| #define SUB_PES_READY 7 |
| #define DIS_CONTINUITY_PACKET 6 |
| #define DUPLICATED_PACKET 5 |
| #define NEW_PDTS_READY 4 |
| #define OM_CMD_READ_PENDING 3 |
| #define SECTION_BUFFER_READY 2 |
| #define TS_ERROR_PACKAGE 1 |
| #define TS_ERROR_PIN 0 |
| |
| /* When Bit 31 - 1 write will indicate all type use sepertate endian |
| * (Write Only)*/ |
| /* When Bit 31 - 0 write will indicate all type else use Bit 8:6*/ |
| /* Bit 23:21 - demux om write endian control for OTHER_PES_PACKET*/ |
| /* Bit 20:18 - demux om write endian control for SCR_ONLY_PACKET*/ |
| /* Bit 17:15 - demux om write endian control for SUB_PACKET*/ |
| /* Bit 14:12 - demux om write endian control for AUDIO_PACKET*/ |
| /* Bit 11:9 - demux om write endian control for VIDEO_PACKET*/ |
| /* Bit 8:6 - demux om write endian control for else*/ |
| /* Bit 5:3 - demux om write endian control for bypass*/ |
| /* Bit 2:0 - demux om write endian control for section*/ |
| /*#define DEMUX_ENDIAN |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x24) // 0x1624*/ |
| /*#define DEMUX_ENDIAN_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x24) // 0x1674*/ |
| /*#define DEMUX_ENDIAN_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x24) // 0x16c4*/ |
| /*----------- bit define -----------*/ |
| #define SEPERATE_ENDIAN 31 |
| #define OTHER_PES_ENDIAN 21 |
| #define SCR_ENDIAN 18 |
| #define SUB_ENDIAN 15 |
| #define AUDIO_ENDIAN 12 |
| #define VIDEO_ENDIAN 9 |
| #define OTHER_ENDIAN 6 |
| #define BYPASS_ENDIAN 3 |
| #define SECTION_ENDIAN 0 |
| |
| /* Bit 10:9 -- PDTS_wr_sel: 0 select video_PDTS_wr_ptr; 1 select video_PDTS_wr_ptr_parser_B; */ |
| /* Bit 7:8 -- use hi_bsf interface*/ |
| /* Bit 6:2 - fec_clk_div*/ |
| /* Bit 1 ts_source_sel */ |
| /* Bit 0 - Hiu TS generate enable */ |
| /*#define TS_HIU_CTL |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x25) // 0x1625*/ |
| /*#define TS_HIU_CTL_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x25) // 0x1675*/ |
| /*#define TS_HIU_CTL_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x25) // 0x16c5*/ |
| /*----------- bit define -----------*/ |
| //#define LAST_BURST_THRESHOLD 8 |
| #define PDTS_WR_SEL 9 |
| #define USE_HI_BSF_INTERFACE 7 |
| |
| /* bit 15:0 -- base address for section buffer start |
| * (*0x10000 to get real base)*/ |
| /*#define SEC_BUFF_BASE |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x26) // 0x1626*/ |
| /*#define SEC_BUFF_BASE_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x26) // 0x1676*/ |
| /*#define SEC_BUFF_BASE_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x26) // 0x16c6*/ |
| |
| /* bit 11 -- mask bit for OTHER_PES_AHB_DMA_EN*/ |
| /* bit 10 -- mask bit for SUB_AHB_DMA_EN*/ |
| /* bit 9 -- mask bit for BYPASS_AHB_DMA_EN*/ |
| /* bit 8 -- mask bit for SECTION_AHB_DMA_EN*/ |
| /* bit 7 -- mask bit for recoder stream*/ |
| /* bit 6:0 -- mask bit for each type*/ |
| /*#define DEMUX_MEM_REQ_EN |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x27) // 0x1627*/ |
| /*#define DEMUX_MEM_REQ_EN_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x27) // 0x1677*/ |
| /*#define DEMUX_MEM_REQ_EN_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x27) // 0x16c7*/ |
| /*----------- bit define -----------*/ |
| #define VIDEO2_DMA_EN_BIT 12 |
| #define OTHER_PES_AHB_DMA_EN 11 |
| #define SUB_AHB_DMA_EN 10 |
| #define BYPASS_AHB_DMA_EN 9 |
| #define SECTION_AHB_DMA_EN 8 |
| #define RECORDER_STREAM 7 |
| #define OTHER_PES_PACKET 6 |
| #define SCR_ONLY_PACKET 5 /*will never be used*/ |
| #define BYPASS_PACKET 4 |
| #define SECTION_PACKET 3 |
| #define SUB_PACKET 2 |
| #define AUDIO_PACKET 1 |
| #define VIDEO_PACKET 0 |
| |
| /* bit 31:0 -- vb_wr_ptr for video PDTS*/ |
| /*#define VIDEO_PDTS_WR_PTR |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x28) // 0x1628*/ |
| /*#define VIDEO_PDTS_WR_PTR_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x28) // 0x1678*/ |
| /*#define VIDEO_PDTS_WR_PTR_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x28) // 0x16c8*/ |
| |
| /* bit 31:0 -- ab_wr_ptr for audio PDTS*/ |
| /*#define AUDIO_PDTS_WR_PTR |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x29) // 0x1629*/ |
| /*#define AUDIO_PDTS_WR_PTR_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x29) // 0x1679*/ |
| /*#define AUDIO_PDTS_WR_PTR_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x29) // 0x16c9*/ |
| |
| /* bit 20:0 -- SB_WRITE_PTR (sb_wr_ptr << 3 == byte write position)*/ |
| /*#define SUB_WR_PTR |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x2a) // 0x162a*/ |
| /*#define SUB_WR_PTR_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x2a) // 0x167a*/ |
| /*#define SUB_WR_PTR_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x2a) // 0x16ca*/ |
| |
| /* bit 19:0 -- SB_START (sb_start << 12 == byte address);*/ |
| /*#define SB_START |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x2b) // 0x162b*/ |
| /*#define SB_START_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x2b) // 0x167b*/ |
| /*#define SB_START_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x2b) // 0x16cb*/ |
| |
| /* bit 20:0 -- SB_SIZE (sb_size << 3 == byte size, 16M maximun)*/ |
| /*#define SB_LAST_ADDR |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x2c) // 0x162c*/ |
| /*#define SB_LAST_ADDR_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x2c) // 0x167c*/ |
| /*#define SB_LAST_ADDR_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x2c) // 0x16cc*/ |
| |
| /* bit 31:0 -- sb_wr_ptr for sub PES*/ |
| /*#define SB_PES_WRITE_PTR |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x2d) // 0x162d*/ |
| /*#define SB_PES_WRITE_PTR_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x2d) // 0x167d*/ |
| /*#define SB_PES_WRITE_PTR_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x2d) // 0x16cd*/ |
| |
| /* bit 31:16 -- ob_wr_ptr for other PES*/ |
| /* bit 20:0 -- OB_WRITE_PTR (ob_wr_ptr << 3 == byte write position)*/ |
| /*#define OTHER_WR_PTR |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x2e) // 0x162e*/ |
| /*#define OTHER_WR_PTR_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x2e) // 0x167e*/ |
| /*#define OTHER_WR_PTR_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x2e) // 0x16ce*/ |
| |
| /* bit 19:0 -- OB_START (ob_start << 12 == byte address);*/ |
| /*#define OB_START |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x2f) // 0x162f*/ |
| /*#define OB_START_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x2f) // 0x167f*/ |
| /*#define OB_START_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x2f) // 0x16cf*/ |
| |
| /* bit 20:0 -- OB_SIZE (ob_size << 3 == byte size, 16M maximun)*/ |
| /*#define OB_LAST_ADDR |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x30) // 0x1630*/ |
| /*#define OB_LAST_ADDR_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x30) // 0x1680*/ |
| /*#define OB_LAST_ADDR_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x30) // 0x16d0*/ |
| |
| /* bit 31:0 -- ob_wr_ptr for sub PES*/ |
| /*#define OB_PES_WRITE_PTR |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x31) // 0x1631*/ |
| /*#define OB_PES_WRITE_PTR_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x31) // 0x1681*/ |
| /*#define OB_PES_WRITE_PTR_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x31) // 0x16d1*/ |
| |
| /* 15:0 DEMUX interrupt MASK*/ |
| /* 11 -- PCR_READY*/ |
| /* 10 -- audio_splicing_point*/ |
| /* 9 -- video_splicing_point*/ |
| /* 8 -- other_PES_int*/ |
| /* 7 -- sub_PES_int*/ |
| /* 6 -- discontinuity*/ |
| /* 5 -- duplicated_pack_found*/ |
| /* 4 -- New PDTS ready*/ |
| /* 3 -- om_cmd_buffer ready for access*/ |
| /* 2 -- section buffer ready*/ |
| /* 1 -- transport_error_indicator*/ |
| /* 0 -- TS ERROR PIN*/ |
| /*#define STB_INT_MASK |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x32) // 0x1632*/ |
| /*#define STB_INT_MASK_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x32) // 0x1682*/ |
| /*#define STB_INT_MASK_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x32) // 0x16d2*/ |
| |
| /* 31:16 VIDEO PID filter data*/ |
| /*15 -- splicing VIDEO PID change enable*/ |
| /*14:10 -- VIDEO PID FILTER ADDRESS*/ |
| /* 9 -- PES splicing active (Read Only)*/ |
| /* 8 -- splicing active (Read Only)*/ |
| /* 7:0 splicing countdown (Read Only)*/ |
| /*#define VIDEO_SPLICING_CTL |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x33) // 0x1633*/ |
| /*#define VIDEO_SPLICING_CTL_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x33) // 0x1683*/ |
| /*#define VIDEO_SPLICING_CTL_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x33) // 0x16d3*/ |
| /*----------- bit define -----------*/ |
| #define VIDEO_PID_FILTER_DATA 16 |
| #define VIDEO_SPLICING_PID_CHANGE_ENABLE 15 |
| #define VIDEO_PID_FILTER_ADDRESS 10 |
| #define VIDEO_PES_SPLICING_ACTIVE 9 |
| #define VIDEO_SPLICING_ACTIVE 8 |
| |
| |
| /* 31:16 AUDIO PID filter data*/ |
| /*15 -- splicing AUDIO PID change enable*/ |
| /*14:10 -- AUDIO PID FILTER ADDRESS*/ |
| /* 9 -- PES splicing active (Read Only)*/ |
| /* 8 -- splicing active (Read Only)*/ |
| /* 7:0 splicing countdown (Read Only)*/ |
| /*#define AUDIO_SPLICING_CTL |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x34) // 0x1634*/ |
| /*#define AUDIO_SPLICING_CTL_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x34) // 0x1684*/ |
| /*#define AUDIO_SPLICING_CTL_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x34) // 0x16d4*/ |
| /*----------- bit define -----------*/ |
| #define AUDIO_PID_FILTER_DATA 16 |
| #define AUDIO_SPLICING_PID_CHANGE_ENABLE 15 |
| #define AUDIO_PID_FILTER_ADDRESS 10 |
| #define AUDIO_PES_SPLICING_ACTIVE 9 |
| #define AUDIO_SPLICING_ACTIVE 8 |
| |
| /* 23:16 M2TS_SKIP_BYTES*/ |
| /* 15:8 LAST TS PACKAGE BYTE COUNT (Read Only)*/ |
| /* 7:0 PACKAGE BYTE COUNT (Read Only)*/ |
| /*#define TS_PACKAGE_BYTE_COUNT |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x35) // 0x1635*/ |
| /*#define TS_PACKAGE_BYTE_COUNT_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x35) // 0x1685*/ |
| /*#define TS_PACKAGE_BYTE_COUNT_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x35) // 0x16d5*/ |
| /*----------- bit define -----------*/ |
| #define M2TS_SKIP_BYTES 16 |
| #define LAST_TS_PACKAGE_BYTE_COUNT 8 |
| |
| /* 15:0 2 bytes strong sync add to PES*/ |
| /*#define PES_STRONG_SYNC |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x36) // 0x1636*/ |
| /*#define PES_STRONG_SYNC_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x36) // 0x1686*/ |
| /*#define PES_STRONG_SYNC_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x36) // 0x16d6*/ |
| |
| /* bit 15 -- stb_om_ren*/ |
| /* bit 14:11 -- reserved*/ |
| /* bit 10:0 -- OM_DATA_RD_ADDR*/ |
| /*#define OM_DATA_RD_ADDR |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x37) // 0x1637*/ |
| /*#define OM_DATA_RD_ADDR_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x37) // 0x1687*/ |
| /*#define OM_DATA_RD_ADDR_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x37) // 0x16d7*/ |
| /*----------- bit define -----------*/ |
| #define STB_OM_REN 15 |
| |
| /* bit 15:0 -- OM_DATA_RD*/ |
| /*#define OM_DATA_RD |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x38) // 0x1638*/ |
| /*#define OM_DATA_RD_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x38) // 0x1688*/ |
| /*#define OM_DATA_RD_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x38) // 0x16d8*/ |
| |
| /* AUTO STOP SETTING for 32 channels*/ |
| /* 4-bits per channel*/ |
| /* when write*/ |
| /* bit 3 -- set section active*/ |
| /* bit 2:0 -- auto stop after count (0 means never stop)*/ |
| /* when read*/ |
| /* bit 3 -- current active status (1 - active, 0 - stopped )*/ |
| /* bit 2:0 -- count down to auto stop*/ |
| /* section 31:24*/ |
| /*#define SECTION_AUTO_STOP_3 |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x39) // 0x1639*/ |
| /*#define SECTION_AUTO_STOP_3_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x39) // 0x1689*/ |
| /*#define SECTION_AUTO_STOP_3_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x39) // 0x16d9*/ |
| /* section 23:16*/ |
| /*#define SECTION_AUTO_STOP_2 |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x3a) // 0x163a*/ |
| /*#define SECTION_AUTO_STOP_2_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x3a) // 0x168a*/ |
| /*#define SECTION_AUTO_STOP_2_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x3a) // 0x16da*/ |
| /* section 15:8*/ |
| /*#define SECTION_AUTO_STOP_1 |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x3b) // 0x163b*/ |
| /*#define SECTION_AUTO_STOP_1_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x3b) // 0x168b*/ |
| /*#define SECTION_AUTO_STOP_1_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x3b) // 0x16db*/ |
| /* section 7:0*/ |
| /*#define SECTION_AUTO_STOP_0 |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x3c) // 0x163c*/ |
| /*#define SECTION_AUTO_STOP_0_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x3c) // 0x168c*/ |
| /*#define SECTION_AUTO_STOP_0_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x3c) // 0x16dc*/ |
| |
| /* bit 31:0 reset channel status - each bit reset each channel*/ |
| /* read -- 32 channel status*/ |
| /*#define DEMUX_CHANNEL_RESET |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x3d) // 0x163d*/ |
| /*#define DEMUX_CHANNEL_RESET_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x3d) // 0x168d*/ |
| /*#define DEMUX_CHANNEL_RESET_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x3d) // 0x16dd*/ |
| |
| /*#define DEMUX_SCRAMBLING_STATE |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x3e) // 0x163e*/ |
| /*#define DEMUX_SCRAMBLING_STATE_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x3e) // 0x168e*/ |
| /*#define DEMUX_SCRAMBLING_STATE_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x3e) // 0x16de*/ |
| |
| /*#define DEMUX_CHANNEL_ACTIVITY |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x3f) // 0x163f*/ |
| /*#define DEMUX_CHANNEL_ACTIVITY_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x3f) // 0x168f*/ |
| /*#define DEMUX_CHANNEL_ACTIVITY_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x3f) // 0x16df*/ |
| |
| /* bit 4 -- video_stamp_use_dts*/ |
| /* bit 3 -- audio_stamp_sync_1_en*/ |
| /* bit 2 -- audio_stamp_insert_en*/ |
| /* bit 1 -- video_stamp_sync_1_en*/ |
| /* bit 0 -- video_stamp_insert_en*/ |
| /*#define DEMUX_STAMP_CTL |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x40) // 0x1640*/ |
| /*#define DEMUX_STAMP_CTL_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x40) // 0x1690*/ |
| /*#define DEMUX_STAMP_CTL_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x40) // 0x16e0*/ |
| |
| /*#define DEMUX_VIDEO_STAMP_SYNC_0 |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x41) // 0x1641*/ |
| /*#define DEMUX_VIDEO_STAMP_SYNC_0_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x41) // 0x1691*/ |
| /*#define DEMUX_VIDEO_STAMP_SYNC_0_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x41) // 0x16e1*/ |
| |
| /*#define DEMUX_VIDEO_STAMP_SYNC_1 |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x42) // 0x1642*/ |
| /*#define DEMUX_VIDEO_STAMP_SYNC_1_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x42) // 0x1692*/ |
| /*#define DEMUX_VIDEO_STAMP_SYNC_1_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x42) // 0x16e2*/ |
| |
| /*#define DEMUX_AUDIO_STAMP_SYNC_0 |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x43) // 0x1643*/ |
| /*#define DEMUX_AUDIO_STAMP_SYNC_0_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x43) // 0x1693*/ |
| /*#define DEMUX_AUDIO_STAMP_SYNC_0_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x43) // 0x16e3*/ |
| |
| /*#define DEMUX_AUDIO_STAMP_SYNC_1 |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x44) // 0x1644*/ |
| /*#define DEMUX_AUDIO_STAMP_SYNC_1_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x44) // 0x1694*/ |
| /*#define DEMUX_AUDIO_STAMP_SYNC_1_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x44) // 0x16e4*/ |
| |
| /* Write : Bit[4:0] secter filter number for reset*/ |
| /* Read : select according to output_section_buffer_valid :*/ |
| /* per bit per section buffer valid status*/ |
| /* or section_buffer_ignore*/ |
| /*#define DEMUX_SECTION_RESET |
| * (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x45) // 0x1645*/ |
| /*#define DEMUX_SECTION_RESET_2 |
| * (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x45) // 0x1695*/ |
| /*#define DEMUX_SECTION_RESET_3 |
| * (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x45) // 0x16e5*/ |
| |
| |
| /* bit[31:0] - channel_reset_timeout_disable*/ |
| /*#define DEMUX_INPUT_TIMEOUT_C \ |
| (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x46) // 0x1646*/ |
| /*#define DEMUX_INPUT_TIMEOUT_C_2 \ |
| (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x46) // 0x1696*/ |
| /*#define DEMUX_INPUT_TIMEOUT_C_3 \ |
| (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x46) // 0x16e6*/ |
| /* bit[31] - no_match_reset_timeout_disable*/ |
| /* bit[30:0] input_time_out_int_cnt (0 -- means disable) Wr-setting, Rd-count*/ |
| /*#define DEMUX_INPUT_TIMEOUT \ |
| (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x47) // 0x1647*/ |
| /*#define DEMUX_INPUT_TIMEOUT_2 \ |
| (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x47) // 0x1697*/ |
| /*#define DEMUX_INPUT_TIMEOUT_3 \ |
| (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x47) // 0x16e7*/ |
| |
| /* bit[31:0] - channel_packet_count_disable*/ |
| /*#define DEMUX_PACKET_COUNT_C \ |
| (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x48) // 0x1648*/ |
| /*#define DEMUX_PACKET_COUNT_C_2 \ |
| (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x48) // 0x1698*/ |
| /*#define DEMUX_PACKET_COUNT_C_3 \ |
| (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x48)*/ /* 0x16e8*/ |
| /* bit[31] - no_match_packet_count_disable*/ |
| /* bit[30:0] input_packet_count*/ |
| /*#define DEMUX_PACKET_COUNT \ |
| (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x49) // 0x1649*/ |
| /*#define DEMUX_PACKET_COUNT_2 \ |
| (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x49) // 0x1699*/ |
| /*#define DEMUX_PACKET_COUNT_3 \ |
| (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x49) // 0x16e9*/ |
| |
| /* bit[31:0] channel_record_enable*/ |
| /*#define DEMUX_CHAN_RECORD_EN \ |
| (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x4a) // 0x164a*/ |
| /*#define DEMUX_CHAN_RECORD_EN_2 \ |
| (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x4a) // 0x169a*/ |
| /*#define DEMUX_CHAN_RECORD_EN_3 \ |
| (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x4a) // 0x16ea*/ |
| |
| /* bit[31:0] channel_process_enable*/ |
| /*#define DEMUX_CHAN_PROCESS_EN \ |
| (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x4b) // 0x164b*/ |
| /*#define DEMUX_CHAN_PROCESS_EN_2 \ |
| (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x4b) */ /* 0x169b*/ |
| /*#define DEMUX_CHAN_PROCESS_EN_3 \ |
| (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x4b) // 0x16eb*/ |
| |
| /* bit[31:24] small_sec_size ((n+1) * 256 Bytes)*/ |
| /* bit[23:16] small_sec_rd_ptr */ |
| /* bit[15:8] small_sec_wr_ptr */ |
| /* bit[7:2] reserved*/ |
| /* bit[1] small_sec_wr_ptr_wr_enable*/ |
| /* bit[0] small_section_enable*/ |
| /*#define DEMUX_SMALL_SEC_CTL \ |
| (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x4c)*/ /* 0x164c*/ |
| /*#define DEMUX_SMALL_SEC_CTL_2 \ |
| (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x4c) // 0x169c*/ |
| /*#define DEMUX_SMALL_SEC_CTL_3 \ |
| (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x4c) // 0x16ec*/ |
| /* bit[31:0] small_sec_start_addr*/ |
| /*#define DEMUX_SMALL_SEC_ADDR \ |
| (STB_CBUS_BASE + DEMUX_1_OFFSET + 0x4d) // 0x164d*/ |
| /*#define DEMUX_SMALL_SEC_ADDR_2 \ |
| (STB_CBUS_BASE + DEMUX_2_OFFSET + 0x4d) // 0x169d*/ |
| /*#define DEMUX_SMALL_SEC_ADDR_3 \ |
| (STB_CBUS_BASE + DEMUX_3_OFFSET + 0x4d) // 0x16ed*/ |
| |
| |
| /*======================================================*/ |
| /* STB Registers End*/ |
| /*====================================================*/ |
| /* ----------------------------*/ |
| /* ASYNC FIFO (4)*/ |
| /* ----------------------------*/ |
| /*#define ASYNC_FIFO_REG0 0x2310*/ |
| /*#define ASYNC_FIFO_REG1 0x2311*/ |
| #define ASYNC_FIFO_FLUSH_STATUS 31 |
| #define ASYNC_FIFO_ERR 30 |
| #define ASYNC_FIFO_FIFO_EMPTY 29 |
| #define ASYNC_FIFO_TO_HIU 24 |
| #define ASYNC_FIFO_FLUSH 23 |
| #define ASYNC_FIFO_RESET 22 |
| #define ASYNC_FIFO_WRAP_EN 21 |
| #define ASYNC_FIFO_FLUSH_EN 20 |
| #define ASYNC_FIFO_RESIDUAL_MSB 19 |
| #define ASYNC_FIFO_RESIDUAL_LSB 15 |
| #define ASYNC_FIFO_FLUSH_CNT_MSB 14 |
| #define ASYNC_FIFO_FLUSH_CNT_LSB 0 |
| /*#define ASYNC_FIFO_REG2 0x2312*/ |
| #define ASYNC_FIFO_FIFO_FULL 26 |
| #define ASYNC_FIFO_FILL_STATUS 25 |
| #define ASYNC_FIFO_SOURCE_MSB 24 |
| #define ASYNC_FIFO_SOURCE_LSB 23 |
| #define ASYNC_FIFO_ENDIAN_MSB 22 |
| #define ASYNC_FIFO_ENDIAN_LSB 21 |
| #define ASYNC_FIFO_FILL_EN 20 |
| #define ASYNC_FIFO_FILL_CNT_MSB 19 |
| #define ASYNC_FIFO_FILL_CNT_LSB 0 |
| /*#define ASYNC_FIFO_REG3 0x2313*/ |
| #define ASYNC_FLUSH_SIZE_IRQ_MSB 15 |
| #define ASYNC_FLUSH_SIZE_IRQ_LSB 0 |
| /* ----------------------------*/ |
| /* ASYNC FIFO (4)*/ |
| /* ----------------------------*/ |
| /*#define ASYNC_FIFO2_REG0 0x2314*/ |
| /*#define ASYNC_FIFO2_REG1 0x2315*/ |
| /*#define ASYNC_FIFO2_REG2 0x2316*/ |
| /*#define ASYNC_FIFO2_REG3 0x2317*/ |
| |
| #define RESET_DEMUXSTB (1 << 1) |
| #endif /* C_STB_DEFINE_H*/ |