<!-- Backplane register address table -->
<!-- Defines ROD fex_channel container  -->
<node fwinfo="endpoint;width=6">

<!--   <TOB FIFO Status and Control>  -->
	<node id="Tob_fifo_control" 		permission="rw"   address="0x0" description="TOB fifo control bits" fwinfo="endpoint;width=0">
		<node id="Busy_enable" 				mask="0x1" 	description="Enable action on busy threshold exceeded" />
		<node id="Xoff_enable"				mask="0x2" 	description="Enable action on xoff threshold exceeded" />
		<node id="force_Busy"				mask="0x10" description="debug function - force busy active" />
		<node id="force_Xoff"				mask="0x20" description="debug function - force xoff active" />
		</node>
		
	<node id="Tob_fifo_reset" 			permission="w"   address="0x1" description="TOB fifo reset bits(pulse reg)" fwinfo="endpoint;width=0">
		<node id="Tob_fifo_reset" 			mask="0x1" 	description="Reset and purge the tob fifo" />
		<node id="Tob_busy_thresh_reset"	mask="0x2" 	description="Reset the tob busy threshold exceeded count" />
		<node id="Tob_xoff_thresh_reset"	mask="0x4" 	description="Reset the tob xoff threshold exceeded count" />
		<node id="Tob_watermark_reset"		mask="0x8" 	description="Reset the tob fifo level watermark" />
		<node id="Tob_rx_time_reset"		mask="0x10" description="Reset the tob_rx_time counter and max value" />
		<node id="Repeat_L1id_count_reset"	mask="0x20" description="Reset the repeat TOB packet l1id counter" />
		<node id="TOB_packets_read_reset"	mask="0x40" description="Reset the TOB_packets_read counter" />
		</node>	
		
	<node id="Tob_fifo_status" 			permission="r"   address="0x2" description="TOB fifo status bits" fwinfo="endpoint;width=0">
		<node id="Tob_fifo_overrun" 		mask="0x1" 	description="TOB fifo is currently overrun" />
		<node id="Tob_fifo_busy"			mask="0x2" 	description="TOB fifo level is currently above the busy threshold" />
		<node id="Tob_fifo_xoff"			mask="0x4" 	description="TOB fifo level is currently above the xoff threshold" />
	</node>	
		
	<node id="Tob_fifo_fill_level"  	permission="r"  address="0x3" description="TOB fifo current fill level in 64-bit words - size = 4Kx64 bits" fwinfo="endpoint;width=0">
		<node id="Tob_fifo_level" 			mask="0x0000FFFF" description="TOB fifo current level in 64-bit words" />
		<node id="Tob_fifo_watermark" 		mask="0xFFFF0000" description="TOB fifo watermark max = 4K" />
	</node>		
	
	<node id="Tob_fifo_busy_Count"  	permission="r"  address="0x4" description="TOB FIFO Busy Threshold Exceeded Counter" fwinfo="endpoint;width=0"/>
    <node id="Tob_fifo_xoff_Count"  	permission="r"  address="0x5" description="TOB FIFO Busy Threshold Exceeded Counter" fwinfo="endpoint;width=0"/>

<!--   <Bulk FIFO Status and Control>  -->
	<node id="Bulk_fifo_control" 		permission="rw"   address="0x6" description="Bulk fifo control bits" fwinfo="endpoint;width=0">
		<node id="Busy_enable" 				mask="0x1" 	description="Enable action on busy threshold exceeded" />
		<node id="Xoff_enable"				mask="0x2" 	description="Enable action on xoff threshold exceeded" />
		<node id="force_Busy"				mask="0x10" description="debug function - force Busy active" />	
		<node id="force_Xoff"				mask="0x20" description="debug function - force xoff active" />	
		</node>
		
	<node id="Bulk_fifo_reset" 			permission="w"   address="0x7" description="Bulk fifo reset bits(pulse reg)" fwinfo="endpoint;width=0">
		<node id="Bulk_fifo_reset" 			mask="0x1" description="Reset and purge the bulk fifo" />
		<node id="Bulk_busy_thresh_reset"	mask="0x2" description="Reset the bulk busy threshold exceeded count" />
		<node id="Bulk_xoff_thresh_reset"	mask="0x4" description="Reset the bulk xoff threshold exceeded count" />
		<node id="Bulk_watermark_reset"		mask="0x8" description="Reset the Bulk fifo watermark" />
		</node>	


	
	<node id="Bulk_fifo_status" 		permission="r"   address="0x8" description="Bulk fifo status bits" fwinfo="endpoint;width=0">
		<node id="Bulk_fifo_overrun" 				mask="0x1" 		description="Bulk fifo is currently overrun" />
		<node id="Bulk_fifo_busy"					mask="0x2" 		description="Bulk fifo level is currently above the busy threshold" />
		<node id="Bulk_fifo_xoff"					mask="0x4" 		description="Bulk fifo level is currently above the busy threshold" />
	</node>	

	<node id="Bulk_fifo_fill_level"  	permission="r"  address="0x9" description="Bulk fifo current fill level in 64-bit words - size = 4Kx64 bits" fwinfo="endpoint;width=0">
		<node id="Bulk_fifo_level" 					mask="0x0000FFFF" description="Bulk fifo current level in 64-bit words" />
		<node id="Bulk_fifo_watermark" 				mask="0xFFFF0000" description="Bulk fifo watermark max = 4K" />
	</node>		
		
	<node id="Bulk_fifo_busy_Count"  	permission="r"  address="0xA" description="Bulk FIFO Busy Threshold Exceeded Counter" fwinfo="endpoint;width=0"/>
    <node id="Bulk_fifo_xoff_Count"  	permission="r"  address="0xB" description="Bulk FIFO XOFF Threshold Exceeded Counter" fwinfo="endpoint;width=0"/>

<!--   <Aurora Channel Status and Control>  -->	
	<node id="Aurora_channel_control" 	permission="w"   address="0xC" description="(Pulse Reg) Aurora channel reset bits" fwinfo="endpoint;width=0">
		<node id="Channel_reset" 					mask="0x1" description="pulse reset this aurora channel" />
		<node id="Channel_status_reset"				mask="0x2" description="clear the channel error counters, clear to enable counters " />
	</node>

		
	<node id="Aurora_autoreset_disable" permission="rw"   address="0xD" description="Channel auto-reset disable bits" fwinfo="endpoint;width=0">
		<node id="Disable_Channel_UP_autoreset" 	mask="0x1" description="disable channel down auto reset function" />
		<node id="Disable_PKT_LEN_violation_reset" 	mask="0x2" description="disable packet length violation auto reset function" />
		</node>	
						
	<node id="Aurora_channel_status" 	permission="r"   address="0xE" description="Aurora channel_control bits" fwinfo="endpoint;width=0">
		<node id="Channel_up" 						mask="0x1" description="The full channel is running" />
		<node id="Rx_reset_done"					mask="0x2" description="Reset Done is a prerequisite to channel up " />
		<node id="Cpll_locked"						mask="0x4" description="CPLL locked is a prerequisite to reset done" />
		<node id="Lane_up"							mask="0xF0" description="status of the individual lanes - 4 for efex and 1 for jfex" />
		<node id="Hard_error_count"					mask="0xF00" description="number of Aurora Hard errors encountered" />
		<node id="Soft_error_count"					mask="0xF000" description="number of Aurora Soft errors encountered" />
		<node id="Frame_error_count"	    		mask="0xF0000" description="number of Aurora Frame errors encountered" />
		<node id="Header_CRC_error_count"			mask="0xF00000" description="number of Header CRC errors encountered" />
		<node id="Reserved"							mask="0xF000000" description="reserved" />
		<node id="Max_PKT_len_error_count"			mask="0xF0000000" description="number of max packet length errors encountered" />
		</node>

	<node id="Data_integrity_status" 	permission="r"   address="0xF" description="Rx data error conditions" fwinfo="endpoint;width=0">
		<node id="protocol_error_count" 			mask="0xF" description="Aurora protocol errors" />
		<node id="odd_word_error_count"	    		mask="0xF0" description="Odd number of 32-bit words in packet " />
		</node>


<!--   <FEX Busy Timers, Status, and control>  -->
	<node id="Fex_TOB_busy_timer"  		permission="r"  address="0x10" description="Fex TOB Busy Time Counter" fwinfo="endpoint;width=0"/>
    <node id="Fex_RAW_busy_timer"  		permission="r"  address="0x11" description="Fex RAW Busy Time Counter" fwinfo="endpoint;width=0"/>
	
<!--
	<node id="Fex_busy_timer_2"  	permission="r"  address="0x12" description="Fex Busy Time Counter 2" fwinfo="endpoint;width=0"/>
    <node id="Fex_busy_timer_3"  	permission="r"  address="0x13" description="Fex Busy Time Counter 3" fwinfo="endpoint;width=0"/>
	<node id="Fex_busy_timer_4"  	permission="r"  address="0x14" description="Fex Busy Time Counter 4" fwinfo="endpoint;width=0"/>
    <node id="Fex_busy_timer_5"  	permission="r"  address="0x15" description="Fex Busy Time Counter 5" fwinfo="endpoint;width=0"/>

-->
	
	<node id="FEX_Busy_timer_reset" 	permission="rw"   address="0x16" description="Fex busy timer resets" fwinfo="endpoint;width=0">
		<node id="Fex_TOB_timer_rst" 				mask="0x1"  description="Clear busy timer 0" />
		<node id="Fex_RAW_timer_rst" 				mask="0x2"  description="Clear busy timer 1" />
<!--		
		<node id="Fex_timer_rst_2"	mask="0x4"  description="Clear busy timer 2" />
		<node id="Fex_timer_rst_3"	mask="0x8"  description="Clear busy timer 3" />
		<node id="Fex_timer_rst_4"	mask="0x10" description="Clear busy timer 4" />
		<node id="Fex_timer_rst_5"	mask="0x20" description="Clear busy timer 5" />
-->		
		<node id="UFC_parity_error_reset"			mask="0x100" description="Clear ufc parity error counter" />
	</node>		
	
	<node id="FEX_Busy_status" 			permission="r"   address="0x17" description="Fex busy status bits" fwinfo="endpoint;width=0">
		<node id="Fex_TOB_busy" 					mask="0x1"  description="Fex TOB Busy Request is currently active" />
		<node id="Fex_RAW_busy"						mask="0x2"  description="Fex RAW Busy Request is currently active" />
		<node id="Fex_busy_map_1"					mask="0x4"  description="Fex_Busy map 2 is currently active" />
		<node id="Fex_busy_map_2"					mask="0x8"  description="Fex_Busy map 3 is currently active" />
		<node id="Fex_busy_map_3"					mask="0x10" description="Fex_Busy map 4 is currently active" />
		<node id="Fex_busy_map_4"					mask="0x20" description="Fex_Busy map 5 is currently active" />
	</node>		

	<node id="UFC_busy_control" 		permission="rw"   address="0x18" description="UFC busy control" fwinfo="endpoint;width=0">
		<node id="TOB_Busy_enable" 					mask="0x1" 	description="Enable UFC TOB busy request" />
		<node id="RAW_Busy_enable" 					mask="0x2" 	description="Enable UFC RAW busy request" />
		<node id="parity_disable" 					mask="0x10" description="disable UFC parity checking" />
		</node>
	

	<node id="UFC_parity_error_count"  	permission="r"  address="0x19" description="Cumulative UFC message parity error count" fwinfo="endpoint;width=0">
	</node>		
	
	<node id="Aurora_auto_reset_count"  permission="r"  address="0x1A" description="Count of Aurora self_reset events since last manual reset" fwinfo="endpoint;width=0">
	</node>
	
	<node id="AURORA_CHAN_UP_TIME"  	permission="r"  address="0x1B" description="time from reset to channel up" fwinfo="endpoint;width=0">
	</node>
	
	
	<node id="tob_rx_timer" 			permission="r"   address="0x1C" description="Time from L1A to TOB Packet arriving in proc clock cycles" fwinfo="endpoint;width=0">
		<node id="TOB_Rx_Time"  					mask="0x0000FFFF" 	description="last measured TOB Rx time" />
		<node id="TOB_Rx_Time_Max" 					mask="0xFFFF0000"   description="largest measured TOB Rx Time" />
		</node>
	
    <node id="TOB_repeat_L1id_counter"  permission="r"  address="0x1D" description="number of L1ID repeats in TOB packets" fwinfo="endpoint;width=0">
		</node>	
	
	 <node id="TOB_packets_read"        permission="r"  address="0x1E" description="number of TOB packets read from this channel" fwinfo="endpoint;width=0">
		</node>	
		
	<!--   <TOB_1 processor FIFO Status and Control>  -->
		<!-- removed for now 
	<node id="Tob_1_fifo_control" 		permission="rw"   address="0x20" description="TOB fifo control bits" fwinfo="endpoint;width=0">
		<node id="Busy_enable" 				mask="0x1" 	description="Enable action on busy threshold exceeded" />
		<node id="Xoff_enable"				mask="0x2" 	description="Enable action on xoff threshold exceeded" />
		<node id="force_Busy"				mask="0x10" description="debug function - force busy active" />
		<node id="force_Xoff"				mask="0x20" description="debug function - force xoff active" />
		</node>
		
		
	<!--  Note!  The register below is not currently implemented - controls are shared between the two TOB FIFO's -->	
	<!-- <node id="Tob_1_fifo_reset" 			permission="w"   address="0x21" description="TOB fifo reset bits(pulse reg)" fwinfo="endpoint;width=0">
		<node id="Tob_fifo_reset" 			mask="0x1" 	description="Reset and purge the tob fifo" />
		<node id="Tob_busy_thresh_reset"	mask="0x2" 	description="Reset the tob busy threshold exceeded count" />
		<node id="Tob_xoff_thresh_reset"	mask="0x4" 	description="Reset the tob xoff threshold exceeded count" />
		<node id="Tob_watermark_reset"		mask="0x8" 	description="Reset the tob fifo level watermark" />
		<node id="Tob_rx_time_reset"		mask="0x10" description="Reset the tob_rx_time counter and max value" />
		<node id="Repeat_L1id_count_reset"	mask="0x20" description="Reset the repeat TOB packet l1id counter" />
		<node id="TOB_packets_read_reset"	mask="0x40" description="Reset the TOB_packets_read counter" />
		</node>	
		
		
	<node id="Tob_1_fifo_status" 			permission="r"   address="0x22" description="TOB fifo status bits" fwinfo="endpoint;width=0">
		<node id="Tob_fifo_overrun" 		mask="0x1" 	description="TOB fifo is currently overrun" />
		<node id="Tob_fifo_busy"			mask="0x2" 	description="TOB fifo level is currently above the busy threshold" />
		<node id="Tob_fifo_xoff"			mask="0x4" 	description="TOB fifo level is currently above the xoff threshold" />
	</node>	
	 -->
		
	<node id="Tob_1_fifo_fill_level"  	permission="r"  address="0x23" description="TOB fifo current fill level in 64-bit words - size = 4Kx64 bits" fwinfo="endpoint;width=0">
		<node id="Tob_fifo_level" 			mask="0x0000FFFF" description="TOB fifo current level in 64-bit words" />
		<node id="Tob_fifo_watermark" 		mask="0xFFFF0000" description="TOB fifo watermark max = 4K" />
	</node>		
	
	<node id="Tob_1_fifo_busy_Count"  	permission="r"  address="0x24" description="TOB FIFO Busy Threshold Exceeded Counter" fwinfo="endpoint;width=0"/>
    <node id="Tob_1_fifo_xoff_Count"  	permission="r"  address="0x25" description="TOB FIFO Busy Threshold Exceeded Counter" fwinfo="endpoint;width=0"/>
	
	
</node >
