opentitanlib/dif/
pinmux.rs

1// Copyright lowRISC contributors (OpenTitan project).
2// Licensed under the Apache License, Version 2.0, see LICENSE for details.
3// SPDX-License-Identifier: Apache-2.0
4
5use bindgen::dif;
6use bitflags::bitflags;
7
8bitflags! {
9    #[derive(Clone, Copy, Debug, Default, PartialEq, Eq)]
10    pub struct PinmuxPadAttr: u32 {
11        const OD_EN = 0b1 << dif::PINMUX_MIO_PAD_ATTR_1_OD_EN_1_BIT;
12        const SCHMITT_EN = 0b1 << dif::PINMUX_MIO_PAD_ATTR_1_SCHMITT_EN_1_BIT;
13        const KEEPER_EN = 0b1 << dif::PINMUX_MIO_PAD_ATTR_1_KEEPER_EN_1_BIT;
14        const PULL_SELECT = 0b1 << dif::PINMUX_MIO_PAD_ATTR_1_PULL_SELECT_1_BIT;
15        const PULL_EN = 0b1 << dif::PINMUX_MIO_PAD_ATTR_1_PULL_EN_1_BIT;
16        const VIRTUAL_OD_EN = 0b1 << dif::PINMUX_MIO_PAD_ATTR_1_VIRTUAL_OD_EN_1_BIT;
17        const INVERT = 0b1 << dif::PINMUX_MIO_PAD_ATTR_1_INVERT_1_BIT;
18    }
19}