| // Copyright lowRISC contributors. |
| // Licensed under the Apache License, Version 2.0, see LICENSE for details. |
| // SPDX-License-Identifier: Apache-2.0 |
| { name: "main", |
| type: "xbar", |
| clock_primary: "clk_main_i", // Main clock, used in sockets |
| other_clock_list: [ "clk_fixed_i" ] // Secondary clocks used by specific nodes |
| reset_primary: "rst_main_ni", // Main reset, used in sockets |
| other_reset_list: [ "rst_fixed_ni" ] // Secondary clocks used by specific nodes |
| |
| nodes: [ |
| { name: "corei", |
| type: "host", |
| clock: "clk_main_i", |
| reset: "rst_main_ni", |
| pipeline: "false" |
| |
| }, |
| { name: "cored", |
| type: "host", |
| clock: "clk_main_i", |
| reset: "rst_main_ni", |
| pipeline: "false" |
| |
| }, |
| { name: "dm_sba", // DM |
| type: "host", |
| clock: "clk_main_i", |
| reset: "rst_main_ni", |
| pipeline_byp: "false" |
| |
| }, |
| { name: "rom", |
| type: "device", |
| clock: "clk_main_i", |
| reset: "rst_main_ni", |
| pipeline: "false", |
| }, |
| { name: "debug_mem", |
| type: "device", |
| clock: "clk_main_i", |
| reset: "rst_main_ni", |
| pipeline_byp: "false" |
| }, |
| { name: "ram_main", |
| type: "device", |
| clock: "clk_main_i", |
| reset: "rst_main_ni", |
| pipeline: "false", |
| }, |
| { name: "eflash", |
| type: "device", |
| clock: "clk_main_i", |
| reset: "rst_main_ni", |
| pipeline: "false", |
| }, |
| { name: "peri", |
| type: "device", |
| clock: "clk_fixed_i", |
| reset: "rst_fixed_ni", |
| pipeline_byp: "false" |
| }, |
| { name: "flash_ctrl", |
| type: "device", |
| clock: "clk_main_i", |
| reset: "rst_main_ni", |
| pipeline_byp: "false" |
| }, |
| { name: "hmac", |
| type: "device", |
| clock: "clk_main_i", |
| reset: "rst_main_ni", |
| pipeline_byp: "false" |
| }, |
| { name: "aes", |
| type: "device", |
| clock: "clk_main_i" |
| reset: "rst_main_ni" |
| pipeline_byp: "false" |
| }, |
| { name: "rv_plic", |
| type: "device", |
| clock: "clk_main_i", |
| reset: "rst_main_ni", |
| inst_type: "rv_plic", |
| addr_range: [{ |
| base_addr: "0x40090000", |
| size_byte: "0x1000", |
| }], |
| pipeline_byp: "false" |
| }, |
| { name: "pinmux", |
| type: "device", |
| clock: "clk_main_i", |
| reset: "rst_fixed_ni", |
| inst_type: "pinmux", |
| addr_range: [{ |
| base_addr: "0x40070000", |
| size_byte: "0x1000", |
| }], |
| pipeline_byp: "false" |
| }, |
| { name: "padctrl", |
| type: "device", |
| clock: "clk_main_i", |
| reset: "rst_fixed_ni", |
| inst_type: "padctrl", |
| addr_range: [{ |
| base_addr: "0x40160000", |
| size_byte: "0x1000", |
| }], |
| pipeline_byp: "false" |
| }, |
| { name: "alert_handler", |
| type: "device", |
| clock: "clk_main_i", |
| inst_type: "alert_handler", |
| pipeline_byp: "false" |
| }, |
| // dummy module to capture the alert handler escalation signals |
| // and test them by converting them into IRQs |
| { name: "nmi_gen", |
| type: "device", |
| clock: "clk_main_i", |
| inst_type: "nmi_gen", |
| pipeline_byp: "false" |
| } |
| { name: "otbn", |
| type: "device", |
| clock: "clk_main_i" |
| reset: "rst_main_ni" |
| pipeline_byp: "false" |
| }, |
| { name: "keymgr", |
| type: "device", |
| clock: "clk_main_i" |
| reset: "rst_main_ni" |
| pipeline_byp: "false" |
| }, |
| ], |
| connections: { |
| corei: ["rom", "debug_mem", "ram_main", "eflash"], |
| cored: ["rom", "debug_mem", "ram_main", "eflash", "peri", "flash_ctrl", |
| "aes", "hmac", "rv_plic", "pinmux", "padctrl", "alert_handler", "nmi_gen", "otbn", "keymgr"], |
| dm_sba: ["rom", "ram_main", "eflash", "peri", "flash_ctrl", |
| "aes", "hmac", "rv_plic", "pinmux", "padctrl", "alert_handler", "nmi_gen", "otbn"], |
| }, |
| } |