How a new measurement is handled is something on a different level. It really doesn't matter how often you call baro_event, the important part is that a new baro measurement is only published via ABI if bb_ms5611.data_available.
If you don't want/need to call the baro_event function, it would probably make more sense to make a new baro_board chibios wrapper for the ms5611 peripheral instead of  using the existing one calling ms5611_spi_event from baro_event and the convenience function ms5611_spi_periodic from baro_periodic.

In any case I don't think that packing everything in the periodic_check function (and duplicating a lot of code) is nice.
We should try to not add #ifdefs and workarounds for different architectures to the arch independent part of the peripherals.