Package: lc_ctrl_reg_pkg

Description

Copyright lowRISC contributors.
Licensed under the Apache License, Version 2.0, see LICENSE for details.
SPDX-License-Identifier: Apache-2.0

Register Package auto-generated by reggen containing data structure

Constants

Name Type Value Description
NumTokenWords int 4
CsrLcStateWidth int 5
CsrLcCountWidth int 5
CsrLcIdStateWidth int 2
CsrOtpTestCtrlWidth int 32
CsrOtpTestStatusWidth int 32
NumDeviceIdWords int 8
NumManufStateWords int 8
NumAlerts int 3
BlockAw int 7 Address widths within the block
BlockAw logic [BlockAw-1:0] undefined Register offsets
BlockAw logic [BlockAw-1:0] 4
BlockAw logic [BlockAw-1:0] 8
BlockAw logic [BlockAw-1:0] c
BlockAw logic [BlockAw-1:0] 10
BlockAw logic [BlockAw-1:0] 14
BlockAw logic [BlockAw-1:0] 18
BlockAw logic [BlockAw-1:0] c
BlockAw logic [BlockAw-1:0] 20
BlockAw logic [BlockAw-1:0] 24
BlockAw logic [BlockAw-1:0] 28
BlockAw logic [BlockAw-1:0] c
BlockAw logic [BlockAw-1:0] 30
BlockAw logic [BlockAw-1:0] 34
BlockAw logic [BlockAw-1:0] 38
BlockAw logic [BlockAw-1:0] c
BlockAw logic [BlockAw-1:0] 40
BlockAw logic [BlockAw-1:0] 44
BlockAw logic [BlockAw-1:0] 48
BlockAw logic [BlockAw-1:0] c
BlockAw logic [BlockAw-1:0] 50
BlockAw logic [BlockAw-1:0] 54
BlockAw logic [BlockAw-1:0] 58
BlockAw logic [BlockAw-1:0] c
BlockAw logic [BlockAw-1:0] 60
BlockAw logic [BlockAw-1:0] 64
BlockAw logic [BlockAw-1:0] 68
BlockAw logic [BlockAw-1:0] c
BlockAw logic [BlockAw-1:0] 70
BlockAw logic [BlockAw-1:0] 74
BlockAw logic [BlockAw-1:0] 78
BlockAw logic [BlockAw-1:0] c
LC_CTRL_ALERT_TEST_RESVAL logic [2:0] undefined Reset values for hwext registers and their fields
LC_CTRL_ALERT_TEST_FATAL_PROG_ERROR_RESVAL logic [0:0] undefined
LC_CTRL_ALERT_TEST_FATAL_STATE_ERROR_RESVAL logic [0:0] undefined
LC_CTRL_ALERT_TEST_FATAL_BUS_INTEG_ERROR_RESVAL logic [0:0] undefined
LC_CTRL_STATUS_RESVAL logic [9:0] undefined
LC_CTRL_CLAIM_TRANSITION_IF_RESVAL logic [7:0] undefined
LC_CTRL_TRANSITION_REGWEN_RESVAL logic [0:0] undefined
LC_CTRL_TRANSITION_REGWEN_TRANSITION_REGWEN_RESVAL logic [0:0] undefined
LC_CTRL_TRANSITION_CMD_RESVAL logic [0:0] undefined
LC_CTRL_TRANSITION_CTRL_RESVAL logic [0:0] undefined
LC_CTRL_TRANSITION_TOKEN_0_RESVAL logic [31:0] undefined
LC_CTRL_TRANSITION_TOKEN_1_RESVAL logic [31:0] undefined
LC_CTRL_TRANSITION_TOKEN_2_RESVAL logic [31:0] undefined
LC_CTRL_TRANSITION_TOKEN_3_RESVAL logic [31:0] undefined
LC_CTRL_TRANSITION_TARGET_RESVAL logic [4:0] undefined
LC_CTRL_OTP_VENDOR_TEST_CTRL_RESVAL logic [31:0] undefined
LC_CTRL_OTP_VENDOR_TEST_STATUS_RESVAL logic [31:0] undefined
LC_CTRL_LC_STATE_RESVAL logic [4:0] undefined
LC_CTRL_LC_TRANSITION_CNT_RESVAL logic [4:0] undefined
LC_CTRL_LC_ID_STATE_RESVAL logic [1:0] undefined
LC_CTRL_DEVICE_ID_0_RESVAL logic [31:0] undefined
LC_CTRL_DEVICE_ID_1_RESVAL logic [31:0] undefined
LC_CTRL_DEVICE_ID_2_RESVAL logic [31:0] undefined
LC_CTRL_DEVICE_ID_3_RESVAL logic [31:0] undefined
LC_CTRL_DEVICE_ID_4_RESVAL logic [31:0] undefined
LC_CTRL_DEVICE_ID_5_RESVAL logic [31:0] undefined
LC_CTRL_DEVICE_ID_6_RESVAL logic [31:0] undefined
LC_CTRL_DEVICE_ID_7_RESVAL logic [31:0] undefined
LC_CTRL_MANUF_STATE_0_RESVAL logic [31:0] undefined
LC_CTRL_MANUF_STATE_1_RESVAL logic [31:0] undefined
LC_CTRL_MANUF_STATE_2_RESVAL logic [31:0] undefined
LC_CTRL_MANUF_STATE_3_RESVAL logic [31:0] undefined
LC_CTRL_MANUF_STATE_4_RESVAL logic [31:0] undefined
LC_CTRL_MANUF_STATE_5_RESVAL logic [31:0] undefined
LC_CTRL_MANUF_STATE_6_RESVAL logic [31:0] undefined
LC_CTRL_MANUF_STATE_7_RESVAL logic [31:0]
LC_CTRL_PERMIT logic [3:0] undefined Register width information to check illegal writes

Types

Name Type Description
lc_ctrl_reg2hw_alert_test_reg_t struct packed {
struct packed {
logic q;
logic qe;
} fatal_prog_error;
struct packed {
logic q;
logic qe;
} fatal_state_error;
struct packed {
logic q;
logic qe;
} fatal_bus_integ_error;
}
////////////////////////// Typedefs for registers // //////////////////////////
lc_ctrl_reg2hw_claim_transition_if_reg_t struct packed {
logic [7:0] q;
logic qe;
}
lc_ctrl_reg2hw_transition_cmd_reg_t struct packed {
logic q;
logic qe;
}
lc_ctrl_reg2hw_transition_ctrl_reg_t struct packed {
logic q;
logic qe;
}
lc_ctrl_reg2hw_transition_token_mreg_t struct packed {
logic [31:0] q;
logic qe;
}
lc_ctrl_reg2hw_transition_target_reg_t struct packed {
logic [4:0] q;
logic qe;
}
lc_ctrl_reg2hw_otp_vendor_test_ctrl_reg_t struct packed {
logic [31:0] q;
logic qe;
}
lc_ctrl_hw2reg_status_reg_t struct packed {
struct packed {
logic d;
} ready;
struct packed {
logic d;
} transition_successful;
struct packed {
logic d;
} transition_count_error;
struct packed {
logic d;
} transition_error;
struct packed {
logic d;
} token_error;
struct packed {
logic d;
} flash_rma_error;
struct packed {
logic d;
} otp_error;
struct packed {
logic d;
} state_error;
struct packed {
logic d;
} bus_integ_error;
struct packed {
logic d;
} otp_partition_error;
}
lc_ctrl_hw2reg_claim_transition_if_reg_t struct packed {
logic [7:0] d;
}
lc_ctrl_hw2reg_transition_regwen_reg_t struct packed {
logic d;
}
lc_ctrl_hw2reg_transition_ctrl_reg_t struct packed {
logic d;
}
lc_ctrl_hw2reg_transition_token_mreg_t struct packed {
logic [31:0] d;
}
lc_ctrl_hw2reg_transition_target_reg_t struct packed {
logic [4:0] d;
}
lc_ctrl_hw2reg_otp_vendor_test_ctrl_reg_t struct packed {
logic [31:0] d;
}
lc_ctrl_hw2reg_otp_vendor_test_status_reg_t struct packed {
logic [31:0] d;
}
lc_ctrl_hw2reg_lc_state_reg_t struct packed {
logic [4:0] d;
}
lc_ctrl_hw2reg_lc_transition_cnt_reg_t struct packed {
logic [4:0] d;
}
lc_ctrl_hw2reg_lc_id_state_reg_t struct packed {
logic [1:0] d;
}
lc_ctrl_hw2reg_device_id_mreg_t struct packed {
logic [31:0] d;
}
lc_ctrl_hw2reg_manuf_state_mreg_t struct packed {
logic [31:0] d;
}
lc_ctrl_reg2hw_transition_token_mreg_t struct packed {
lc_ctrl_reg2hw_alert_test_reg_t alert_test;
lc_ctrl_reg2hw_claim_transition_if_reg_t claim_transition_if;
lc_ctrl_reg2hw_transition_cmd_reg_t transition_cmd;
lc_ctrl_reg2hw_transition_ctrl_reg_t transition_ctrl;
lc_ctrl_reg2hw_transition_token_mreg_t [3:0] transition_token;
lc_ctrl_reg2hw_transition_target_reg_t transition_target;
lc_ctrl_reg2hw_otp_vendor_test_ctrl_reg_t otp_vendor_test_ctrl;
}
Register -> HW type
lc_ctrl_hw2reg_transition_token_mreg_t struct packed {
lc_ctrl_hw2reg_status_reg_t status;
lc_ctrl_hw2reg_claim_transition_if_reg_t claim_transition_if;
lc_ctrl_hw2reg_transition_regwen_reg_t transition_regwen;
lc_ctrl_hw2reg_transition_ctrl_reg_t transition_ctrl;
lc_ctrl_hw2reg_transition_token_mreg_t [3:0] transition_token;
lc_ctrl_hw2reg_transition_target_reg_t transition_target;
lc_ctrl_hw2reg_otp_vendor_test_ctrl_reg_t otp_vendor_test_ctrl;
lc_ctrl_hw2reg_otp_vendor_test_status_reg_t otp_vendor_test_status;
lc_ctrl_hw2reg_lc_state_reg_t lc_state;
lc_ctrl_hw2reg_lc_transition_cnt_reg_t lc_transition_cnt;
lc_ctrl_hw2reg_lc_id_state_reg_t lc_id_state;
lc_ctrl_hw2reg_device_id_mreg_t [7:0] device_id;
lc_ctrl_hw2reg_manuf_state_mreg_t [7:0] manuf_state;
}
HW -> register type