blob: f0ef35fdde9039b1d23bb28430c99197ca26038f [file] [log] [blame]
{
"version": 1,
"model_ec": ["ODYSSEY_10"],
"registers": {
"OCMB_PHY_FIR": {
"instances": {
"0": "0x08010C00"
}
},
"OCMB_PHY_FIR_OR": {
"access": "WO",
"instances": {
"0": "0x08010C01"
}
},
"OCMB_PHY_FIR_MASK": {
"instances": {
"0": "0x08010C02"
}
},
"OCMB_PHY_FIR_MASK_OR": {
"access": "WO",
"instances": {
"0": "0x08010C03"
}
},
"OCMB_PHY_FIR_CFG_CHIP_CS": {
"instances": {
"0": "0x08010C04"
}
},
"OCMB_PHY_FIR_CFG_RECOV": {
"instances": {
"0": "0x08010C05"
}
},
"OCMB_PHY_FIR_CFG_SP_ATTN": {
"instances": {
"0": "0x08010C06"
}
},
"OCMB_PHY_FIR_CFG_UNIT_CS": {
"instances": {
"0": "0x08010C07"
}
},
"OCMB_PHY_FIR_WOF": {
"instances": {
"0": "0x08010C08"
}
}
},
"isolation_nodes": {
"OCMB_PHY_FIR": {
"instances": [0],
"rules": [
{
"attn_type": ["CHIP_CS"],
"node_inst": [0],
"expr": {
"expr_type": "and",
"exprs": [
{
"expr_type": "reg",
"reg_name": "OCMB_PHY_FIR"
},
{
"expr_type": "not",
"expr": {
"expr_type": "reg",
"reg_name": "OCMB_PHY_FIR_MASK"
}
},
{
"expr_type": "reg",
"reg_name": "OCMB_PHY_FIR_CFG_CHIP_CS"
}
]
}
},
{
"attn_type": ["RECOV"],
"node_inst": [0],
"expr": {
"expr_type": "and",
"exprs": [
{
"expr_type": "reg",
"reg_name": "OCMB_PHY_FIR"
},
{
"expr_type": "not",
"expr": {
"expr_type": "reg",
"reg_name": "OCMB_PHY_FIR_MASK"
}
},
{
"expr_type": "reg",
"reg_name": "OCMB_PHY_FIR_CFG_RECOV"
}
]
}
},
{
"attn_type": ["SP_ATTN"],
"node_inst": [0],
"expr": {
"expr_type": "and",
"exprs": [
{
"expr_type": "reg",
"reg_name": "OCMB_PHY_FIR"
},
{
"expr_type": "not",
"expr": {
"expr_type": "reg",
"reg_name": "OCMB_PHY_FIR_MASK"
}
},
{
"expr_type": "reg",
"reg_name": "OCMB_PHY_FIR_CFG_SP_ATTN"
}
]
}
},
{
"attn_type": ["UNIT_CS"],
"node_inst": [0],
"expr": {
"expr_type": "and",
"exprs": [
{
"expr_type": "reg",
"reg_name": "OCMB_PHY_FIR"
},
{
"expr_type": "not",
"expr": {
"expr_type": "reg",
"reg_name": "OCMB_PHY_FIR_MASK"
}
},
{
"expr_type": "reg",
"reg_name": "OCMB_PHY_FIR_CFG_UNIT_CS"
}
]
}
}
],
"op_rules": {
"FIR_SET": {
"op_rule": "atomic_or",
"reg_name": "OCMB_PHY_FIR_OR"
},
"FIR_CLEAR": {
"op_rule": "atomic_or",
"reg_name": "OCMB_PHY_FIR"
},
"MASK_SET": {
"op_rule": "atomic_or",
"reg_name": "OCMB_PHY_FIR_MASK_OR"
},
"MASK_CLEAR": {
"op_rule": "atomic_or",
"reg_name": "OCMB_PHY_FIR_MASK"
}
},
"bits": {
"0": {
"desc": "SCOM FSM or FIR register parity error"
},
"1": {
"desc": "RX state machine parity or mode register parity error (IOO0)"
},
"2": {
"desc": "reserved"
},
"3": {
"desc": "reserved"
},
"4": {
"desc": "reserved"
},
"5": {
"desc": "TX state machine parity or mode register parity error (IOO0)"
},
"6": {
"desc": "reserved"
},
"7": {
"desc": "reserved"
},
"8": {
"desc": "reserved"
},
"9": {
"desc": "reserved"
},
"10": {
"desc": "reserved"
},
"11": {
"desc": "reserved"
},
"12": {
"desc": "reserved"
},
"13": {
"desc": "PPE internal error"
},
"14": {
"desc": "PPE external error"
},
"15": {
"desc": "PPE Halt due to Watchdog or Interrupt"
},
"16": {
"desc": "PPE Halt due to Debug"
},
"17": {
"desc": "PPE Halted"
},
"18": {
"desc": "PPE Watchdog Timeout"
},
"19": {
"desc": "PPE Array Scrub was missed"
},
"20": {
"desc": "PPE Array uncorrectable error"
},
"21": {
"desc": "PPE Array correctable error"
},
"22": {
"desc": "PPE Code Recal Abort"
},
"23": {
"desc": "PPE Code Fatal Error"
},
"24": {
"desc": "PPE Code Bad Lane Warning"
},
"25": {
"desc": "PPE Code DFT Error"
},
"26": {
"desc": "PPE Code Recal Not Run"
},
"27": {
"desc": "PPE Code Thread Locked"
},
"28": {
"desc": "PPE Code Thread Active Time Exceeded"
},
"29": {
"desc": "reserved"
}
}
}
}
}