// Copyright lowRISC contributors.
// Licensed under the Apache License, Version 2.0, see LICENSE for details.
// SPDX-License-Identifier: Apache-2.0
{ name: "KEYMGR",
  clocking: [
    {clock: "clk_i", reset: "rst_ni", primary: true},
    {clock: "clk_edn_i", reset: "rst_edn_ni"}
  ]
  bus_interfaces: [
    { protocol: "tlul", direction: "device" }
  ],
  interrupt_list: [
    { name: "op_done",   desc: "Operation complete" },
  ],
  alert_list: [
    { name: "fatal_fault_err",
      desc: "Alert for key manager faults.  These errors cannot be caused by software",
    },
    { name: "recov_operation_err",
      desc: '''
        Alert for key manager operation errors.  These errors could have been caused by
        software'''
    }
  ],

  inter_signal_list: [
    { struct:  "edn",
      type:    "req_rsp",
      name:    "edn",
      act:     "req",
      package: "edn_pkg",
    },
    { struct:  "hw_key_req",  // aes_key_req_t
      type:    "uni",
      name:    "aes_key",     // aes_key_o (req)
      act:     "req",
      package: "keymgr_pkg",  // Origin package (only needs for the requester)
    },
    { struct:  "hw_key_req",  // kmac_key_req_t
      type:    "uni",
      name:    "kmac_key",    // kmac_key_o (req)
      act:     "req",
      package: "keymgr_pkg",  // Origin package (only needs for the requester)
    },
    { struct:  "otbn_key_req",
      type:    "uni",
      name:    "otbn_key",
      act:     "req",
      package: "keymgr_pkg",
    },
    { struct:  "app",   // kmac_pkg::app_req_t, kmac_pkg::app_rsp_t
      type:    "req_rsp",
      name:    "kmac_data",   // kmac_data_o (req), kmac_data_i (rsp)
      act:     "req",
      package: "kmac_pkg",  // Origin package (only needs for the requester)
    },
    { struct:  "otp_keymgr_key",
      type:    "uni",
      name:    "otp_key",
      act:     "rcv",
      package: "otp_ctrl_pkg",
    },
    { struct:  "otp_device_id",
      type:    "uni",
      name:    "otp_device_id",
      act:     "rcv",
      package: "otp_ctrl_pkg",
    },
    { struct:  "keymgr_flash",
      type:    "uni",
      name:    "flash",
      act:     "rcv",
      package: "flash_ctrl_pkg",
    },
    { struct:  "lc_tx",
      type:    "uni",
      name:    "lc_keymgr_en",
      act:     "rcv",
      package: "lc_ctrl_pkg",
      default: "lc_ctrl_pkg::On",
    },
    { struct:  "lc_keymgr_div",
      type:    "uni",
      name:    "lc_keymgr_div",
      act:     "rcv",
      package: "lc_ctrl_pkg",
    },
    { struct:  "keymgr_data"
      type:    "uni"
      name:    "rom_digest"
      act:     "rcv"
      package: "rom_ctrl_pkg"
    },
    { struct:  "logic"
      type:    "uni"
      name:    "kmac_en_masking"
      act:     "rcv"
    },
  ],

  param_list: [
    { name:      "KmacEnMasking",
      desc:      "Flag indicating with kmac masking is enabled",
      type:      "bit",
      default:   "1",
      local:     "false",
      expose:    "true",
    }
    // Random netlist constants
    { name:      "RndCnstLfsrSeed",
      desc:      "Compile-time random bits for initial LFSR seed",
      type:      "keymgr_pkg::lfsr_seed_t"
      randcount: "64",
      randtype:  "data",
    }
    { name:      "RndCnstLfsrPerm",
      desc:      "Compile-time random permutation for LFSR output",
      type:      "keymgr_pkg::lfsr_perm_t"
      randcount: "64",
      randtype:  "perm",
    },
    { name:      "RndCnstRandPerm",
      desc:      "Compile-time random permutation for entropy used in share overriding",
      type:      "keymgr_pkg::rand_perm_t"
      randcount: "32",
      randtype:  "perm",
    }
    { name:      "RndCnstRevisionSeed",
      desc:      "Compile-time random bits for revision seed",
      type:      "keymgr_pkg::seed_t"
      randcount: "256",
      randtype:  "data",
    },

    { name:      "RndCnstCreatorIdentitySeed",
      desc:      "Compile-time random bits for creator identity seed",
      type:      "keymgr_pkg::seed_t"
      randcount: "256",
      randtype:  "data",
    },

    { name:      "RndCnstOwnerIntIdentitySeed",
      desc:      "Compile-time random bits for owner intermediate identity seed",
      type:      "keymgr_pkg::seed_t"
      randcount: "256",
      randtype:  "data",
    },

    { name:      "RndCnstOwnerIdentitySeed",
      desc:      "Compile-time random bits for owner identity seed",
      type:      "keymgr_pkg::seed_t"
      randcount: "256",
      randtype:  "data",
    },

    { name:      "RndCnstSoftOutputSeed",
      desc:      "Compile-time random bits for software generation seed",
      type:      "keymgr_pkg::seed_t"
      randcount: "256",
      randtype:  "data",
    },

    { name:      "RndCnstHardOutputSeed",
      desc:      "Compile-time random bits for hardware generation seed",
      type:      "keymgr_pkg::seed_t"
      randcount: "256",
      randtype:  "data",
    },

    { name:      "RndCnstAesSeed",
      desc:      "Compile-time random bits for generation seed when aes destination selected",
      type:      "keymgr_pkg::seed_t"
      randcount: "256",
      randtype:  "data",
    },

    { name:      "RndCnstKmacSeed",
      desc:      "Compile-time random bits for generation seed when kmac destination selected",
      type:      "keymgr_pkg::seed_t"
      randcount: "256",
      randtype:  "data",
    },

    { name:      "RndCnstOtbnSeed",
      desc:      "Compile-time random bits for generation seed when otbn destination selected",
      type:      "keymgr_pkg::seed_t"
      randcount: "256",
      randtype:  "data",
    },

    { name:      "RndCnstNoneSeed",
      desc:      "Compile-time random bits for generation seed when no destination selected",
      type:      "keymgr_pkg::seed_t"
      randcount: "256",
      randtype:  "data",
    },
    { name: "NumSaltReg",
      desc: "Number of Registers for SW inputs (Salt)",
      type: "int",
      default: "8",
      local: "true"
    },
    { name: "NumSwBindingReg",
      desc: "Number of Registers for SW inputs (SW binding)",
      type: "int",
      default: "8",
      local: "true"
    },
    { name: "NumOutReg",
      desc: "Number of Registers for SW outputs",
      type: "int",
      default: "8",
      local: "true"
    },
    { name: "NumKeyVersion",
      desc: "Number of Registers for key version",
      type: "int",
      default: "1",
      local: "true"
    },
  ],

  regwidth: "32",
  registers: [
    { name: "CFG_REGWEN",
      desc: "Key manager configuration enable",
      swaccess: "ro",  // this particular lock is meant to be fully HW managed
      hwaccess: "hwo",
      hwext: "true",
      fields: [
        { bits: "0",
          name: "EN",
          resval: "1"
          desc: '''
            key manager configuration enable.
            When key manager operation is started (see CONTROL), registers protected by this EN are no longer
            modifiable until the operation completes.

            TBD
            This should be enhanced to support multi-bit values in the future. Should be another script change.
          '''
        },
      ]
    },

    { name: "CONTROL",
      desc: "Key manager operation controls",
      regwen: "CFG_REGWEN",
      swaccess: "rw",
      hwaccess: "hro",
      fields: [
        { bits: "0",
          hwaccess: "hrw",
          name: "START",
          desc: "Start key manager operations",
          resval: "0"
          enum: [
            { value: "1",
              name: "Valid state",
              desc: '''
                To trigger a start, this value must be programmed.  All other values are considered no operation start.
                '''
            },
          ]
          tags: [// bit self clears, handle in directed test
            "excl:CsrNonInitTests:CsrExclWrite"]
        },

        { bits: "6:4",
          name: "OPERATION",
          desc: "Key manager operation selection. All values not enumerated below behave the same as disable",
          resval: "1",
          enum: [
            { value: "0",
              name: "Advance",
              desc: '''
                Advance key manager state.

                Advances key manager to the next stage.
                If key manager is already at last functional state, the advance operation is equivalent to the
                disable operation.
                '''
            },
            { value: "1",
              name: "Generate ID",
              desc: '''
                Generates an identity seed from the current state.
                '''
            },
            { value: "2",
              name: "Generate SW Output",
              desc: '''
                Generates a key manager output that is visible to software from the current state.
                '''
            },
            { value: "3",
              name: "Generate HW Output",
              desc: '''
                Generates a key manager output that is visible only to hardware crypto blocks.
                '''
            },
            { value: "4",
              name: "Disable",
              desc: '''
                Disables key manager operation and moves it to the disabled state.

                Note the disabled state is terminal and cannot be recovered without a reset.
                '''
            },
          ],
        },

        { bits: "7",
          name: "CDI_SEL",
          desc: '''
            When the OPERATION field is programmed to generate output, this field selects
            the appropriate CDI to use.

            This field should be programmed for both hw / sw generation.
          ''',
          resval: "0"
          enum: [
            { value: "0",
              name: "Sealing CDI",
              desc: '''
                Sealing CDI is selected
                '''
            },
            { value: "1",
              name: "Attestation CDI",
              desc: '''
                Attestation CDI is selected
                '''
            },
          ],
        },

        { bits: "14:12",
          name: "DEST_SEL",
          desc: '''
            When the OPERATION field is programmed to generate output, this field selects
            the appropriate crypto cipher target.

            This field should be programmed for both hw / sw generation, as this helps diverisifies the output.
          ''',
          resval: "0"
          enum: [
            { value: "0",
              name: "None",
              desc: '''
                No target selected
                '''
            },
            { value: "1",
              name: "AES",
              desc: '''
                AES selected
                '''
            },
            { value: "2",
              name: "KMAC",
              desc: '''
                KMAC selected
                '''
            },
            { value: "3",
              name: "OTBN",
              desc: '''
                OTBN selected.  Note for OTBN hardware operations, the generated output is 384-bits, while for all
                other operations (including OTBN software), it is 256-bits.

                Generating a hardware 384-bit seed directly for OTBN sideload reduces some of the OTBN code burden for entropy expansion.
                When generating for software, this is not a concern.
                '''
            },
          ]
        },
      ],
    },

    { name: "SIDELOAD_CLEAR",
      desc: "sideload key slots clear"
      swaccess: "rw",
      hwaccess: "hro",
      regwen: "CFG_REGWEN",
      fields: [
        { bits: "2:0",
          name: "VAL",
          resval: "0"
          desc: '''
            Depending on the value programmed, a different side load key slot is cleared.
            If the value programmed is not one of the enumerated values below, ALL side
            load key slots are continuously cleared.
          ''',
          enum: [
            { value: "0",
              name: "None",
              desc: '''
                No sideload keys cleared.
                '''
            },
            { value: "1",
              name: "AES",
              desc: '''
                The AES sideload key is continuously cleared with entropy.
                '''
            },
            { value: "2",
              name: "KMAC",
              desc: '''
                The KMAC sideload key is continuously cleared with entropy.
                '''
            },
            { value: "3",
              name: "OTBN",
              desc: '''
                The OTBN sideload key is continuously cleared with entropy.
                '''
            },
          ]

        },
      ]
    },

    { name: "RESEED_INTERVAL_REGWEN",
      desc: "regwen for reseed interval",
      swaccess: "rw0c",
      hwaccess: "none",
      fields: [
        { bits: "0",
          name: "EN",
          resval: "1"
          desc: '''
            Configuration enable for reseed interval
          '''
        },
      ]
    },

    { name: "RESEED_INTERVAL_SHADOWED",
      desc: "Reseed interval for key manager entropy reseed",
      shadowed: "true",
      update_err_alert: "recov_operation_err",
      storage_err_alert: "fatal_fault_err",
      regwen: "RESEED_INTERVAL_REGWEN",
      swaccess: "rw",
      hwaccess: "hro",
      fields: [
        { bits: "15:0",
          name: "VAL",
          resval: "0x100"
          desc: '''
            Number of key manager cycles before the entropy is reseeded
          '''
        },
      ]
    },

    // The following can potentially be replaced by a RAM if it gets too large
    // Currently there are 32b * NumSaltReg  bits for salt inputs
    //                     32b * NumSwBindingReg bits for software binding inputs
    //                     32b * NumOutReg * 2 (if key shares desired) for outputs
    //                     32b * NumOutReg * NumCryptos * 2 (if key shares desired) for hidden key bus
    // This totals to over 2kb of storage
    { name: "SW_BINDING_REGWEN",
      desc: "Register write enable for SOFTWARE_BINDING",
      swaccess: "rw0c",
      hwaccess: "hrw",
      hwext: "true",
      hwqe: "true",
      fields: [
        { bits: "0",
          name: "EN",
          resval: "1"
          desc: '''
            Software binding register write enable.
            This is locked by software and unlocked by hardware upon a successful advance call.

            Software binding resets to 1, and its value cannot be altered by software until advancement to Init state.
          '''
        },
      ]
    },

    { multireg: {
        cname: "KEYMGR",
        name: "SEALING_SW_BINDING",
        regwen: "SW_BINDING_REGWEN",
        desc: '''
          Software binding input to sealing portion of the key manager.
          This register is lockable and shared between key manager stages.
          This binding value is not considered secret, however its integrity is very important.

          The software binding is locked by software and unlocked by hardware upon a successful advance operation.
        ''',
        count: "NumSwBindingReg",
        swaccess: "rw",
        hwaccess: "hro",
        fields: [
            { bits: "31:0",
              name: "VAL",
              desc: '''
                Software binding value
              ''',
              resval: "0"
            },
        ],
      },
    },

    { multireg: {
        cname: "KEYMGR",
        name: "ATTEST_SW_BINDING",
        regwen: "SW_BINDING_REGWEN",
        desc: '''
          Software binding input to the attestation portion of the key manager.
          This register is lockable and shared between key manager stages.
          This binding value is not considered secret, however its integrity is very important.

          The software binding is locked by software and unlocked by hardware upon a successful advance operation.
        ''',
        count: "NumSwBindingReg",
        swaccess: "rw",
        hwaccess: "hro",
        fields: [
            { bits: "31:0",
              name: "VAL",
              desc: '''
                Software binding value
              ''',
              resval: "0"
            },
        ],
      },
    },

    { multireg: {
        cname: "KEYMGR",
        name: "Salt",
        regwen: "CFG_REGWEN",
        desc: '''
          Salt value used as part of output generation
        ''',
        count: "NumSaltReg",
        swaccess: "rw",
        hwaccess: "hro",
        fields: [
            { bits: "31:0",
              name: "VAL",
              desc: '''
                Salt value
              ''',
              resval: "0"
            },
        ],
      },
    },

    { multireg: {
        cname: "KEYMGR",
        name: "KEY_VERSION",
        regwen: "CFG_REGWEN",
        desc: '''
          Version used as part of output generation
        ''',
        count: "NumKeyVersion",
        swaccess: "rw",
        hwaccess: "hro",
        fields: [
            { bits: "31:0",
              name: "VAL",
              desc: '''
                Salt value
              ''',
              resval: "0"
            },
        ],
      },
    },

    // since there is not a good way to define a separate enable register per multireg
    // the following version registers are manually separated
    // further, it should be possible to reduce the number of max_versions held
    // as long as clearly specify the boot sequence relative to when keys are generated.
    // should check with the security team.
    //
    // The following storage is also huge, should consider switching to RAMs after examining
    // the security implications

    { name: "MAX_CREATOR_KEY_VER_REGWEN",
      desc: "Register write enable for MAX_CREATOR_KEY_VERSION",
      swaccess: "rw0c",
      hwaccess: "none",
      fields: [
        { bits: "0",
          name: "EN",
          resval: "1"
          desc: '''
            MAX_CREATOR_KEY_VERSION configure enable.
            All values except for 2 are interpreted as configuration disable.
          '''
        },
      ]
    },

    { name: "MAX_CREATOR_KEY_VER_SHADOWED",
      desc: "Max creator key version",
      swaccess: "rw",
      hwaccess: "hro",
      shadowed: "true",
      update_err_alert: "recov_operation_err",
      storage_err_alert: "fatal_fault_err",
      regwen: "MAX_CREATOR_KEY_VER_REGWEN",
      fields: [
        { bits: "31:0",
          name: "VAL",
          resval: "0x0"
          desc: '''
            Max key version.

            Any key version up to the value specificed in this register is valid.
          '''
        },
      ]
    },

    { name: "MAX_OWNER_INT_KEY_VER_REGWEN",
      desc: "Register write enable for MAX_OWNER_INT_KEY_VERSION",
      swaccess: "rw0c",
      hwaccess: "none",
      fields: [
        { bits: "0",
          name: "EN",
          resval: "1"
          desc: '''
            MAX_OWNER_INTERMEDIATE_KEY configure enable.
            All values except for 2 are interpreted as configuration disable.
          '''
        },
      ]
    },

    { name: "MAX_OWNER_INT_KEY_VER_SHADOWED",
      desc: "Max owner intermediate key version",
      swaccess: "rw",
      hwaccess: "hro",
      shadowed: "true",
      update_err_alert: "recov_operation_err",
      storage_err_alert: "fatal_fault_err",
      regwen: "MAX_OWNER_INT_KEY_VER_REGWEN",
      fields: [
        { bits: "31:0",
          name: "VAL",
          resval: "1"
          desc: '''
            Max key version.

            Any key version up to the value specificed in this register is valid.
          '''
        },
      ]
    },

    { name: "MAX_OWNER_KEY_VER_REGWEN",
      desc: "Register write enable for MAX_OWNER_KEY_VERSION",
      swaccess: "rw0c",
      hwaccess: "none",
      fields: [
        { bits: "0",
          name: "EN",
          resval: "1"
          desc: '''
            MAX_OWNER_KEY configure enable.
            All values except for 2 are interpreted as configuration disable.
          '''
        },
      ]
    },

    { name: "MAX_OWNER_KEY_VER_SHADOWED",
      desc: "Max owner key version",
      swaccess: "rw",
      hwaccess: "hro",
      shadowed: "true",
      update_err_alert: "recov_operation_err",
      storage_err_alert: "fatal_fault_err",
      regwen: "MAX_OWNER_KEY_VER_REGWEN",
      fields: [
        { bits: "31:0",
          name: "VAL",
          resval: "0x0"
          desc: '''
            Max key version.

            Any key version up to the value specificed in this register is valid.
          '''
        },
      ]
    },

    { multireg: {
        cname: "KEYMGR",
        name: "SW_SHARE0_OUTPUT",
        desc: '''
          Key manager software output.

          When a software output operation is selected, the results of the operation are placed
          here.
        ''',
        count: "NumOutReg",
        swaccess: "rc",
        hwaccess: "hwo",
        fields: [
            { bits: "31:0",
              name: "VAL",
              desc: '''
                Software output value
              ''',
              resval: "0"
            },
        ],
        tags: [// HW-update reg
               // When a fault happens (e.g. when we test TL integrity error), this CSR will be
               // wiped with random value.
               "excl:CsrNonInitTests:CsrExclCheck"]
      },
    },

    { multireg: {
        cname: "KEYMGR",
        name: "SW_SHARE1_OUTPUT",
        desc: '''
          Key manager software output.

          When a software output operation is selected, the results of the operation are placed
          here.
        ''',
        count: "NumOutReg",
        swaccess: "rc",
        hwaccess: "hwo",
        fields: [
            { bits: "31:0",
              name: "VAL",
              desc: '''
                Software output value
              ''',
              resval: "0"
            },
        ],
        tags: [// HW-update reg
               // When a fault happens (e.g. when we test TL integrity error), this CSR will be
               // wiped with random value.
               "excl:CsrNonInitTests:CsrExclCheck"]
      },
    },

    { name: "WORKING_STATE",
      desc: '''
        Key manager working state.

        This is a readout of the current key manager working state
      ''',
      swaccess: "ro",
      hwaccess: "hwo",
      fields: [
        { bits: "2:0",
          name: "STATE",
          resval: "0x0"
          desc: "Key manager control state",
          enum: [
            { value: "0",
              name: "Reset",
              desc: '''
                Key manager control is still in reset.  Please wait for initialization complete
                before issuing operations
              '''
            },
            { value: "1",
              name: "Init",
              desc: '''
                Key manager control has finished initialization and will now accept
                software commands.
              '''
            },
            { value: "2",
              name: "Creator Root Key",
              desc: '''
                Key manager control currently contains the creator root key.
              '''
            },
            { value: "3",
              name: "Owner Intermediate Key",
              desc: '''
                Key manager control currently contains the owner intermediate key.
              '''
            },
            { value: "4",
              name: "Owner Key",
              desc: '''
                Key manager control currently contains the owner key.
              '''
            },
            { value: "5",
              name: "Disabled",
              desc: '''
                Key manager currently disabled. Please reset the key manager.
                Sideload keys are still valid.
              '''
            },
            { value: "6",
              name: "Invalid",
              desc: '''
                Key manager currently invalid. Please reset the key manager.
                Sideload keys are no longer valid.
              '''
            },
          ]
        }
      ]
    },

    { name: "OP_STATUS",
      desc: '''
        Key manager status.

        Hardware sets the status based on software initiated operations.
        This register must be explicitly cleared by software.
        Software clears by writing back whatever it reads.
      ''',
      swaccess: "rw1c",
      hwaccess: "hwo",
      fields: [
        { bits: "1:0",
          name: "STATUS",
          resval: "0x0"
          desc: "Operation status.",
          enum: [
            { value: "0",
              name: "Idle",
              desc: '''
                Key manager is idle
                '''
            },
            { value: "1",
              name: "WIP",
              desc: '''
                Work in progress.
                A key manager operation has been started and is ongoing
                '''
            },
            { value: "2",
              name: "DONE_SUCCESS",
              desc: '''
                Operation finished without errors
                '''
            },
            { value: "3",
              name: "DONE_ERROR",
              desc: '''
                Operation finished with errors, please see ERR_CODE register.
                '''
            },
          ]
        },
      ]
    },

    { name: "ERR_CODE",
      desc: '''
        Key manager error code.
        This register must be explicitly cleared by software.

        This register represents both synchronous and asynchronous recoverable
        errors.

        Synchronous errors refer to those that only happen when a keymgr operation is
        invoked, while asynchronous refers to errors that can happen at any time.
      ''',
      swaccess: "rw1c",
      hwaccess: "hwo",
      fields: [
        { bits: "0",
          name: "INVALID_OP",
          resval: "0x0"
          desc: "Invalid operation issued to key manager, synchronous error",
        },
        { bits: "1",
          name: "INVALID_KMAC_INPUT",
          resval: "0x0"
          desc: "Invalid data issued to kmac interface, synchronous error",
        },
        { bits: "2",
          name: "INVALID_SHADOW_UPDATE",
          resval: "0x0"
          desc: "An error observed during shadow register updates, asynchronous error",
        },
      ]
    },

    { name: "FAULT_STATUS",
      desc: '''
        This register represents both synchronous and asynchronous fatal faults.

        Synchronous faults refer to those that only happen when a keymgr operation is
        invoked, while asynchronous refers to faults that can happen at any time.

      ''',
      swaccess: "ro",
      hwaccess: "hrw",
      fields: [
        { bits: "0",
          name: "CMD",
          resval: "0x0"
          desc: "A non-onehot command was seen in kmac, asynchronous fault.",
        },
        { bits: "1",
          name: "KMAC_FSM",
          resval: "0x0"
          desc: "The kmac transfer interface is in an error state, asynchronous fault.",
        },
        { bits: "2",
          name: "KMAC_OP",
          resval: "0x0"
          desc: "KMAC reported an error during keymgr usage, this should never happen - synchronous fault.",
        },
        { bits: "3",
          name: "KMAC_OUT",
          resval: "0x0"
          desc: "KMAC data returned as all 0's or all 1's - synchronous fault",
        },
        { bits: "4",
          name: "REGFILE_INTG",
          resval: "0x0"
          desc: "Register file integrity error, asynchronous fault",
        },
        { bits: "5",
          name: "SHADOW",
          resval: "0x0"
          desc: "Shadow copy storage error, asynchronous fault",
        },
        { bits: "6",
          name: "CTRL_FSM_INTG",
          resval: "0x0"
          desc: "Control FSM integrity error, asynchronous fault",
        },
        { bits: "7",
          name: "CTRL_FSM_CNT",
          resval: "0x0"
          desc: "Control FSM counter integrity error, asynchronous fault",
        },
        { bits: "8",
          name: "RESEED_CNT",
          resval: "0x0"
          desc: "Reseed counter integrity error, asynchronous fault",
        },
        { bits: "9",
          name: "SIDE_CTRL_FSM",
          resval: "0x0"
          desc: "Sideload control FSM integrity error, asynchronous fault",
        },
      ]
    },


  ],
}
