I found the pmp.c file in the Freedom metal library along with it’s header file (pmp.h). I also found the pmp.c example code on configuring them. My project is focusing on using Rust programming with RISC-V, so I was wondering if it would be sound to just take the code from the metal library and convert it into Rust programming and make a crate out of it. Or would it be easier to configure the pmp with assembly? Also how is user/machine mode utilized. The privilege spec manual talks about vertical and horizontal traps in association with privilege modes, can anyone elaborate on this any? Do I explicitly define when I want to be in user mode versus machine mode, or is it implicit according to what I am doing?