| // 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: "clk_main_i", // Main clock, used in sockets |
| clock_connections: { |
| clk_main_i: "main" |
| clk_jtag_i: "main" |
| clk_periph_i: "fixed" |
| clk_crypt_i: "main" |
| } |
| reset: "rst_main_ni" |
| reset_connections: { |
| rst_main_ni: "sys" |
| rst_jtag_ni: "sys" |
| rst_periph_ni: "sys_fixed" |
| rst_crypt_ni: "sys" |
| } |
| nodes: [ |
| { name: "ibexif", |
| type: "host", |
| clock: "clk_main_i", |
| reset: "rst_main_ni", |
| |
| xbar: false |
| pipeline: "false" |
| }, |
| { name: "ibexlsu", |
| type: "host", |
| clock: "clk_periph_i", |
| reset: "rst_periph_ni", |
| |
| xbar: false |
| pipeline: "false" |
| }, |
| { name: "dm_sba", // DM |
| type: "host", |
| clock: "clk_jtag_i", |
| reset: "rst_jtag_ni", |
| |
| xbar: false |
| pipeline_byp: "false" |
| }, |
| { name: "rom", |
| type: "device", |
| clock: "clk_main_i", |
| reset: "rst_main_ni", |
| xbar: false |
| addr_range: [{ |
| base_addr: "0x00000000", |
| size_byte: "0x10000", // 64kB |
| }] |
| }, |
| { name: "debug_rom", |
| type: "device", |
| clock: "clk_jtag_i", |
| reset: "rst_jtag_ni", |
| xbar: false |
| addr_range: [{ |
| base_addr: "0x10040000", |
| size_byte: "0x1000" |
| }] |
| }, |
| { name: "sram", |
| type: "device", |
| clock: "clk_main_i", |
| reset: "rst_main_ni", |
| xbar: false |
| addr_range: [{ |
| base_addr: "0x10000000", |
| size_byte: "0x10000", |
| }] |
| }, |
| { name: "flash_ctrl", |
| type: "device", |
| // clock is omitted --> use default clock |
| xbar: false |
| addr_range: [{ |
| base_addr: "0x10080000", |
| size_byte: "0x10000", |
| }] |
| }, |
| { name: "uart0", |
| type: "device", |
| clock: "clk_periph_i", |
| reset: "rst_periph_ni", |
| xbar: false |
| addr_range: [{ |
| base_addr: "0x40000000", |
| size_byte: "0x10000", |
| }] |
| }, |
| { name: "gpio0", |
| type: "device", |
| clock: "clk_periph_i", |
| reset: "rst_periph_ni", |
| xbar: false |
| addr_range: [{ |
| base_addr: "0x40010000", |
| size_byte: "0x10000", |
| }] |
| }, |
| { name: "spi_device", |
| type: "device", |
| clock: "clk_periph_i", |
| reset: "rst_periph_ni", |
| xbar: false |
| addr_range: [{ |
| base_addr: "0x40020000", |
| size_byte: "0x10000", |
| }] |
| }, |
| { name: "spi_host", |
| type: "device", |
| clock: "clk_periph_i", |
| reset: "rst_periph_ni", |
| xbar: false |
| addr_range: [{ |
| base_addr: "0x40030000", |
| size_byte: "0x10000", |
| }] |
| }, |
| { name: "timer0", |
| type: "device", |
| clock: "clk_main_i", |
| reset: "rst_main_ni", |
| xbar: false |
| addr_range: [{ |
| base_addr: "0x50000000", |
| size_byte: "0x1000" |
| }] |
| }, |
| { name: "watchdog", |
| type: "device", |
| clock: "clk_main_i", |
| reset: "rst_main_ni", |
| xbar: false |
| addr_range: [{ |
| base_addr: "0x50010000", |
| size_byte: "0x1000" |
| }] |
| }, |
| { name: "alert_h", |
| type: "device", |
| clock: "clk_main_i", |
| reset: "rst_main_ni", |
| xbar: false |
| addr_range: [{ |
| base_addr: "0x50020000", |
| size_byte: "0x1000" |
| }] |
| }, |
| |
| // Crypto domain : use crypt clock |
| { name: "aes", |
| type: "device", |
| clock: "clk_crypt_i", |
| reset: "rst_crypt_ni", |
| xbar: false |
| addr_range: [{ |
| base_addr: "0x60000000", |
| size_byte: "0x8000" |
| }] |
| }, |
| { name: "hmac", |
| type: "device", |
| clock: "clk_crypt_i", |
| reset: "rst_crypt_ni", |
| xbar: false |
| addr_range: [{ |
| base_addr: "0x60010000", |
| size_byte: "0x10000" |
| }] |
| }, |
| { name: "keymgr", |
| type: "device", |
| clock: "clk_crypt_i", |
| reset: "rst_crypt_ni", |
| xbar: false |
| addr_range: [{ |
| base_addr: "0x60080000", |
| size_byte: "0x20000" |
| }] |
| }, |
| ], |
| connections: { |
| ibexif: ["rom", "debug_rom", "sram", "flash_ctrl"], |
| ibexlsu: ["rom", "sram", "flash_ctrl", "uart0", "gpio0", "spi_device", "spi_host", "timer0", |
| "watchdog", "alert_h", "aes", "hmac", "keymgr"], |
| dm_sba: ["sram", "flash_ctrl", "uart0", "gpio0", "spi_device", "spi_host", "timer0", |
| "watchdog", "alert_h", "aes", "hmac", "keymgr"], |
| }, |
| |
| } |