aboutsummaryrefslogtreecommitdiff
path: root/chips/imxrt1170/src/lib.rs
blob: bb1c14670c4070e009a24886cfc0d19aef6d0a31 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
#![no_std]

mod rt;
pub use rt::*;

pub use imxrt_drivers_ccm_11xx::ral_11xx as ccm;
pub use imxrt_drivers_enet as enet;
pub use imxrt_drivers_flexspi as flexspi;
pub use imxrt_drivers_gpio as gpio;
pub use imxrt_drivers_iomuxc_11xx::{iomuxc, iomuxc_gpr, iomuxc_lpsr};
pub use imxrt_drivers_lpspi as lpspi;
pub use imxrt_drivers_pit as pit;

pub use imxrt_drivers_gpc_11xx::cpu_mode_ctrl as gpc_cpu_mode_ctrl;
pub use imxrt_drivers_pmu_11xx as pmu;
pub use imxrt_drivers_rtwdog as rtwdog;

pub mod instances {
    ral_registers::instances! {
        unsafe {
            pub gpio1<crate::gpio::RegisterBlock> = 0x4012_c000;
            pub gpio2<crate::gpio::RegisterBlock> = 0x4013_0000;
            pub gpio3<crate::gpio::RegisterBlock> = 0x4013_4000;
            pub gpio4<crate::gpio::RegisterBlock> = 0x4013_8000;
            pub gpio5<crate::gpio::RegisterBlock> = 0x4013_c000;
            pub gpio6<crate::gpio::RegisterBlock> = 0x4014_0000;
            pub gpio7<crate::gpio::RegisterBlock> = 0x40c5_c000;
            pub gpio8<crate::gpio::RegisterBlock> = 0x40c6_0000;
            pub gpio9<crate::gpio::RegisterBlock> = 0x40c6_4000;
            pub gpio10<crate::gpio::RegisterBlock> = 0x40c6_8000;
            pub gpio11<crate::gpio::RegisterBlock> = 0x40c6_c000;
            pub gpio12<crate::gpio::RegisterBlock> = 0x40c7_0000;
            pub gpio13<crate::gpio::RegisterBlock> = 0x40ca_0000;
            pub cm7_gpio2<crate::gpio::RegisterBlock> = 0x4200_8000;
            pub cm7_gpio3<crate::gpio::RegisterBlock> = 0x4200_c000;

            pub ccm<crate::ccm::RegisterBlock> = 0x40CC_0000;

            pub enet<crate::enet::RegisterBlock> = 0x4042_4000;
            pub enet_1g<crate::enet::RegisterBlock> = 0x4042_0000;

            pub flexspi1<crate::flexspi::RegisterBlock> = 0x400C_C000;
            pub flexspi2<crate::flexspi::RegisterBlock> = 0x400D_0000;

            pub iomuxc<crate::iomuxc::RegisterBlock> = 0x400E_8000;
            pub iomuxc_gpr<crate::iomuxc_gpr::RegisterBlock> = 0x400E_4000;
            pub iomuxc_lpsr<crate::iomuxc_lpsr::RegisterBlock> = 0x40C0_8000;

            pub pit1<crate::pit::RegisterBlock> = 0x400d_8000;
            pub pit2<crate::pit::RegisterBlock> = 0x40cb_0000;

            pub lpspi1<crate::lpspi::RegisterBlock> = 0x4011_4000;
            pub lpspi2<crate::lpspi::RegisterBlock> = 0x4011_8000;
            pub lpspi3<crate::lpspi::RegisterBlock> = 0x4011_c000;
            pub lpspi4<crate::lpspi::RegisterBlock> = 0x4012_0000;
            pub lpspi5<crate::lpspi::RegisterBlock> = 0x40c2_c000;
            pub lpspi6<crate::lpspi::RegisterBlock> = 0x40c3_0000;

            pub gpc_cpu_mode_ctrl0<crate::gpc_cpu_mode_ctrl::RegisterBlock> = 0x40C0_0000;
            pub gpc_cpu_mode_ctrl1<crate::gpc_cpu_mode_ctrl::RegisterBlock> = 0x40C0_0800;

            pub pmu<crate::pmu::RegisterBlock> = 0x40C8_4000;
            pub pll<crate::ccm::pll::RegisterBlock> = 0x40C8_4000;

            pub wdog3<crate::rtwdog::RegisterBlock> = 0x4003_8000;
            pub wdog4<crate::rtwdog::RegisterBlock> = 0x40C1_0000;
        }
    }
}