I think we are leaving ourselves open to a race condition if we set the ODR first. Setting the ODR will trigger the OBF bit in the status register which could trigger the host to read right away. If this happened faster than the bmc writes the status then we could miss whatever special status was trying to be written. The function I am referencing is in astlpc.c :
static int mctp_astlpc_kcs_set_status(struct mctp_binding_astlpc *astlpc,
uint8_t status)