Hi!

I'm working on a project using the PAC directly.
How can I write a generic function to set a similar register in multiple peripherals?

use stm32f3xx_hal::pac;
use pac::Peripherals;

fn gpio_init(dp: &Peripherals) {

    let lock_gpio =|lckr: ?????| {
        lckr.write(|w| unsafe { w.bits(0x1FFFF) });
        lckr.write(|w| unsafe { w.bits(0x0FFFF) });
        lckr.write(|w| unsafe { w.bits(0x1FFFF) });
        lckr.read();
        if lckr.read().lckk().is_not_active() {
            panic!();
        }
    };

    lock_gpio(&dp.GPIOA.lckr);
    lock_gpio(&dp.GPIOB.lckr);
    lock_gpio(&dp.GPIOC.lckr);

} 

What do I have to write as the type for lckr?