// Copyright lowRISC contributors. // Licensed under the Apache License, Version 2.0, see LICENSE for details. // SPDX-License-Identifier: Apache-2.0 { name: "gpio", clocking: [{clock: "clk_i", reset: "rst_ni"}], bus_interfaces: [ { protocol: "tlul", direction: "device" } ], regwidth: "32", registers: [ { name: "IO_MODE", desc: "gpio input/output mode register", swaccess: "rw", hwaccess: "hro", fields: [ { bits: "31:0", desc: "gpio input or output mode, 2 bits for each gpio", } ] } { name: "INT_MODE", desc: "gpio interrupt mode register", swaccess: "rw", hwaccess: "hro", fields: [ { bits: "31:0", desc: "gpio interrupt mode, 2 bits for each gpio", } ] } { name: "INT_PENDING", desc: "gpio interrupt pending register", swaccess: "rw", hwaccess: "hrw", fields: [ { bits: "15:0", name: "GPIO_INT_PENDING", swaccess: "rw1c", desc: "gpio interrupt pending, 1 bits for each gpio", } ] } { name: "DATA", desc: "gpio data register", swaccess: "rw", hwaccess: "hrw", fields: [ { bits: "15:0", desc: "gpio input or output data, 1 bits for each gpio", } ] } { name: "FILTER", desc: "gpio input filter enable register", swaccess: "rw", hwaccess: "hro", fields: [ { bits: "15:0", desc: "gpio input filter enable, 1 bits for each gpio", } ] } ] }