blob: 77eceb56347b7e831daeb679edde0dda2179e5df [file] [log] [blame]
// 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
package smc_ctrl_reg_pkg;
// Address widths within the block
parameter int BlockAw = 3;
////////////////////////////
// Typedefs for registers //
////////////////////////////
typedef struct packed {
logic q;
} smc_ctrl_reg2hw_smc_boot_en_regwen_reg_t;
typedef struct packed {
logic q;
} smc_ctrl_reg2hw_smc_boot_en_ctrl_reg_t;
// Register -> HW type
typedef struct packed {
smc_ctrl_reg2hw_smc_boot_en_regwen_reg_t smc_boot_en_regwen; // [1:1]
smc_ctrl_reg2hw_smc_boot_en_ctrl_reg_t smc_boot_en_ctrl; // [0:0]
} smc_ctrl_reg2hw_t;
// Register offsets
parameter logic [BlockAw-1:0] SMC_CTRL_SMC_BOOT_EN_REGWEN_OFFSET = 3'h 0;
parameter logic [BlockAw-1:0] SMC_CTRL_SMC_BOOT_EN_CTRL_OFFSET = 3'h 4;
// Register index
typedef enum int {
SMC_CTRL_SMC_BOOT_EN_REGWEN,
SMC_CTRL_SMC_BOOT_EN_CTRL
} smc_ctrl_id_e;
// Register width information to check illegal writes
parameter logic [3:0] SMC_CTRL_PERMIT [2] = '{
4'b 0001, // index[0] SMC_CTRL_SMC_BOOT_EN_REGWEN
4'b 0001 // index[1] SMC_CTRL_SMC_BOOT_EN_CTRL
};
endpackage