blob: 176022455bee41f390ae545435787a96efa0f240 [file] [log] [blame]
// Copyright lowRISC contributors.
// Licensed under the Apache License, Version 2.0, see LICENSE for details.
// SPDX-License-Identifier: Apache-2.0
//
// ------------------- W A R N I N G: A U T O - G E N E R A T E D C O D E !! -------------------//
// PLEASE DO NOT HAND-EDIT THIS FILE. IT HAS BEEN AUTO-GENERATED WITH THE FOLLOWING COMMAND:
//
// util/topgen.py -t hw/top_earlgrey/data/top_earlgrey.hjson \
// -o hw/top_earlgrey/ \
// --rnd_cnst_seed 4881560218908238235
package top_earlgrey_pkg;
/**
* Peripheral base address for uart0 in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_UART0_BASE_ADDR = 32'h40000000;
/**
* Peripheral size in bytes for uart0 in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_UART0_SIZE_BYTES = 32'h1000;
/**
* Peripheral base address for uart1 in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_UART1_BASE_ADDR = 32'h40010000;
/**
* Peripheral size in bytes for uart1 in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_UART1_SIZE_BYTES = 32'h1000;
/**
* Peripheral base address for uart2 in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_UART2_BASE_ADDR = 32'h40020000;
/**
* Peripheral size in bytes for uart2 in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_UART2_SIZE_BYTES = 32'h1000;
/**
* Peripheral base address for uart3 in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_UART3_BASE_ADDR = 32'h40030000;
/**
* Peripheral size in bytes for uart3 in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_UART3_SIZE_BYTES = 32'h1000;
/**
* Peripheral base address for gpio in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_GPIO_BASE_ADDR = 32'h40040000;
/**
* Peripheral size in bytes for gpio in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_GPIO_SIZE_BYTES = 32'h1000;
/**
* Peripheral base address for spi_device in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_SPI_DEVICE_BASE_ADDR = 32'h40050000;
/**
* Peripheral size in bytes for spi_device in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_SPI_DEVICE_SIZE_BYTES = 32'h2000;
/**
* Peripheral base address for spi_host0 in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_SPI_HOST0_BASE_ADDR = 32'h40060000;
/**
* Peripheral size in bytes for spi_host0 in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_SPI_HOST0_SIZE_BYTES = 32'h1000;
/**
* Peripheral base address for spi_host1 in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_SPI_HOST1_BASE_ADDR = 32'h40070000;
/**
* Peripheral size in bytes for spi_host1 in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_SPI_HOST1_SIZE_BYTES = 32'h1000;
/**
* Peripheral base address for i2c0 in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_I2C0_BASE_ADDR = 32'h40080000;
/**
* Peripheral size in bytes for i2c0 in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_I2C0_SIZE_BYTES = 32'h1000;
/**
* Peripheral base address for i2c1 in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_I2C1_BASE_ADDR = 32'h40090000;
/**
* Peripheral size in bytes for i2c1 in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_I2C1_SIZE_BYTES = 32'h1000;
/**
* Peripheral base address for i2c2 in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_I2C2_BASE_ADDR = 32'h400A0000;
/**
* Peripheral size in bytes for i2c2 in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_I2C2_SIZE_BYTES = 32'h1000;
/**
* Peripheral base address for pattgen in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_PATTGEN_BASE_ADDR = 32'h400E0000;
/**
* Peripheral size in bytes for pattgen in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_PATTGEN_SIZE_BYTES = 32'h1000;
/**
* Peripheral base address for rv_timer in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_RV_TIMER_BASE_ADDR = 32'h40100000;
/**
* Peripheral size in bytes for rv_timer in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_RV_TIMER_SIZE_BYTES = 32'h1000;
/**
* Peripheral base address for usbdev in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_USBDEV_BASE_ADDR = 32'h40110000;
/**
* Peripheral size in bytes for usbdev in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_USBDEV_SIZE_BYTES = 32'h1000;
/**
* Peripheral base address for otp_ctrl in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_OTP_CTRL_BASE_ADDR = 32'h40130000;
/**
* Peripheral size in bytes for otp_ctrl in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_OTP_CTRL_SIZE_BYTES = 32'h4000;
/**
* Peripheral base address for lc_ctrl in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_LC_CTRL_BASE_ADDR = 32'h40140000;
/**
* Peripheral size in bytes for lc_ctrl in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_LC_CTRL_SIZE_BYTES = 32'h1000;
/**
* Peripheral base address for alert_handler in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_ALERT_HANDLER_BASE_ADDR = 32'h40150000;
/**
* Peripheral size in bytes for alert_handler in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_ALERT_HANDLER_SIZE_BYTES = 32'h1000;
/**
* Peripheral base address for pwrmgr_aon in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_PWRMGR_AON_BASE_ADDR = 32'h40400000;
/**
* Peripheral size in bytes for pwrmgr_aon in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_PWRMGR_AON_SIZE_BYTES = 32'h1000;
/**
* Peripheral base address for rstmgr_aon in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_RSTMGR_AON_BASE_ADDR = 32'h40410000;
/**
* Peripheral size in bytes for rstmgr_aon in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_RSTMGR_AON_SIZE_BYTES = 32'h1000;
/**
* Peripheral base address for clkmgr_aon in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_CLKMGR_AON_BASE_ADDR = 32'h40420000;
/**
* Peripheral size in bytes for clkmgr_aon in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_CLKMGR_AON_SIZE_BYTES = 32'h1000;
/**
* Peripheral base address for pinmux_aon in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_PINMUX_AON_BASE_ADDR = 32'h40460000;
/**
* Peripheral size in bytes for pinmux_aon in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_PINMUX_AON_SIZE_BYTES = 32'h1000;
/**
* Peripheral base address for aon_timer_aon in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_AON_TIMER_AON_BASE_ADDR = 32'h40470000;
/**
* Peripheral size in bytes for aon_timer_aon in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_AON_TIMER_AON_SIZE_BYTES = 32'h1000;
/**
* Peripheral base address for ast in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_AST_BASE_ADDR = 32'h40480000;
/**
* Peripheral size in bytes for ast in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_AST_SIZE_BYTES = 32'h1000;
/**
* Peripheral base address for sensor_ctrl_aon in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_SENSOR_CTRL_AON_BASE_ADDR = 32'h40490000;
/**
* Peripheral size in bytes for sensor_ctrl_aon in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_SENSOR_CTRL_AON_SIZE_BYTES = 32'h1000;
/**
* Peripheral base address for sram_ctrl_ret_aon in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_SRAM_CTRL_RET_AON_BASE_ADDR = 32'h40500000;
/**
* Peripheral size in bytes for sram_ctrl_ret_aon in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_SRAM_CTRL_RET_AON_SIZE_BYTES = 32'h1000;
/**
* Peripheral base address for flash_ctrl in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_FLASH_CTRL_BASE_ADDR = 32'h41000000;
/**
* Peripheral size in bytes for flash_ctrl in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_FLASH_CTRL_SIZE_BYTES = 32'h1000;
/**
* Peripheral base address for rv_plic in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_RV_PLIC_BASE_ADDR = 32'h41010000;
/**
* Peripheral size in bytes for rv_plic in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_RV_PLIC_SIZE_BYTES = 32'h1000;
/**
* Peripheral base address for aes in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_AES_BASE_ADDR = 32'h41100000;
/**
* Peripheral size in bytes for aes in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_AES_SIZE_BYTES = 32'h1000;
/**
* Peripheral base address for hmac in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_HMAC_BASE_ADDR = 32'h41110000;
/**
* Peripheral size in bytes for hmac in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_HMAC_SIZE_BYTES = 32'h1000;
/**
* Peripheral base address for kmac in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_KMAC_BASE_ADDR = 32'h41120000;
/**
* Peripheral size in bytes for kmac in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_KMAC_SIZE_BYTES = 32'h1000;
/**
* Peripheral base address for keymgr in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_KEYMGR_BASE_ADDR = 32'h41130000;
/**
* Peripheral size in bytes for keymgr in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_KEYMGR_SIZE_BYTES = 32'h1000;
/**
* Peripheral base address for csrng in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_CSRNG_BASE_ADDR = 32'h41150000;
/**
* Peripheral size in bytes for csrng in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_CSRNG_SIZE_BYTES = 32'h1000;
/**
* Peripheral base address for entropy_src in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_ENTROPY_SRC_BASE_ADDR = 32'h41160000;
/**
* Peripheral size in bytes for entropy_src in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_ENTROPY_SRC_SIZE_BYTES = 32'h1000;
/**
* Peripheral base address for edn0 in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_EDN0_BASE_ADDR = 32'h41170000;
/**
* Peripheral size in bytes for edn0 in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_EDN0_SIZE_BYTES = 32'h1000;
/**
* Peripheral base address for edn1 in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_EDN1_BASE_ADDR = 32'h41180000;
/**
* Peripheral size in bytes for edn1 in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_EDN1_SIZE_BYTES = 32'h1000;
/**
* Peripheral base address for sram_ctrl_main in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_SRAM_CTRL_MAIN_BASE_ADDR = 32'h411C0000;
/**
* Peripheral size in bytes for sram_ctrl_main in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_SRAM_CTRL_MAIN_SIZE_BYTES = 32'h1000;
/**
* Peripheral base address for otbn in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_OTBN_BASE_ADDR = 32'h411D0000;
/**
* Peripheral size in bytes for otbn in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_OTBN_SIZE_BYTES = 32'h10000;
/**
* Memory base address for rom in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_ROM_BASE_ADDR = 32'h8000;
/**
* Memory size for rom in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_ROM_SIZE_BYTES = 32'h4000;
/**
* Memory base address for ram_main in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_RAM_MAIN_BASE_ADDR = 32'h10000000;
/**
* Memory size for ram_main in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_RAM_MAIN_SIZE_BYTES = 32'h20000;
/**
* Memory base address for ram_ret_aon in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_RAM_RET_AON_BASE_ADDR = 32'h40600000;
/**
* Memory size for ram_ret_aon in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_RAM_RET_AON_SIZE_BYTES = 32'h1000;
/**
* Memory base address for eflash in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_EFLASH_BASE_ADDR = 32'h20000000;
/**
* Memory size for eflash in top earlgrey.
*/
parameter int unsigned TOP_EARLGREY_EFLASH_SIZE_BYTES = 32'h100000;
// Enumeration for DIO pins.
typedef enum {
TopEarlgreyDioPinUsbdevDn = 0,
TopEarlgreyDioPinUsbdevDp = 1,
TopEarlgreyDioPinUsbdevD = 2,
TopEarlgreyDioPinUsbdevSuspend = 3,
TopEarlgreyDioPinUsbdevTxModeSe = 4,
TopEarlgreyDioPinUsbdevDnPullup = 5,
TopEarlgreyDioPinUsbdevDpPullup = 6,
TopEarlgreyDioPinUsbdevSe0 = 7,
TopEarlgreyDioPinUsbdevSense = 8,
TopEarlgreyDioPinSpiHost0Sd0 = 9,
TopEarlgreyDioPinSpiHost0Sd1 = 10,
TopEarlgreyDioPinSpiHost0Sd2 = 11,
TopEarlgreyDioPinSpiHost0Sd3 = 12,
TopEarlgreyDioPinSpiHost0Csb = 13,
TopEarlgreyDioPinSpiHost0Sck = 14,
TopEarlgreyDioPinSpiDeviceSd0 = 15,
TopEarlgreyDioPinSpiDeviceSd1 = 16,
TopEarlgreyDioPinSpiDeviceSd2 = 17,
TopEarlgreyDioPinSpiDeviceSd3 = 18,
TopEarlgreyDioPinSpiDeviceCsb = 19,
TopEarlgreyDioPinSpiDeviceSck = 20,
TopEarlgreyDioPinCount = 21
} top_earlgrey_dio_pin_e;
// TODO: Enumeration for PLIC Interrupt source peripheral.
// TODO: Enumeration for PLIC Interrupt Ids.
endpackage