USRP2: PPS interrupt handler?

Does the current USRP2 FPGA/firmware release allow for a PPS interrupt
handler? I’ve tried adding these lines to the txrx.c firmware app:

static void
test_pps_handler(unsigned irq)
{
putstr(“Got to PPS handler at time:”);
puthex32_nl(timer_regs->time);
pic_regs->pending = PIC_PPS_INT;
}


/* inside main() */
pic_register_handler(IRQ_PPS, test_pps_handler);
putstr("\nRegistered pps interrupt handler\n");

Sending a pulse into the PPS SMA port doesn’t trigger the handler.
Based on fragments I found in the mailing lists,
I also tried including these lines inside main():

 clocks_mimo_config(MC_WE_LOCK_TO_SMA);
 timesync_regs->tick_control |= TSC_TRIGGER_EVERYPPS;

but that changed nothing. Am I doing something wrong, or is this
unsupported?

Thanks for any help!

John B.

john brzustowski wrote:


/* inside main() */
pic_register_handler(IRQ_PPS, test_pps_handler);
putstr("\nRegistered pps interrupt handler\n");

Sending a pulse into the PPS SMA port doesn’t trigger the handler.
Based on fragments I found in the mailing lists,
I also tried including these lines inside main():

The pps interrupt is currently disabled in the FPGA, commented out in
timing/time_sync.v

We can re-enable it if you need, or you can build your own fpga with
that piece of logic included.

 clocks_mimo_config(MC_WE_LOCK_TO_SMA);
 timesync_regs->tick_control |= TSC_TRIGGER_EVERYPPS;

but that changed nothing. Am I doing something wrong, or is this
unsupported?

Those won’t affect what you’re trying to do.

Matt

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs