Lines Matching defs:atomic
428 static int i2c_imx_bus_busy(struct imx_i2c_struct *i2c_imx, int for_busy, bool atomic)
457 if (atomic)
466 static int i2c_imx_trx_complete(struct imx_i2c_struct *i2c_imx, bool atomic)
468 if (atomic) {
476 * Set the value hard as it is done for the non-atomic use-case.
575 static int i2c_imx_start(struct imx_i2c_struct *i2c_imx, bool atomic)
588 if (atomic)
597 result = i2c_imx_bus_busy(i2c_imx, 1, atomic);
602 if (atomic)
610 static void i2c_imx_stop(struct imx_i2c_struct *i2c_imx, bool atomic)
634 i2c_imx_bus_busy(i2c_imx, 0, atomic);
807 bool atomic)
816 result = i2c_imx_trx_complete(i2c_imx, atomic);
830 result = i2c_imx_trx_complete(i2c_imx, atomic);
841 bool is_lastmsg, bool atomic)
855 result = i2c_imx_trx_complete(i2c_imx, atomic);
888 result = i2c_imx_trx_complete(i2c_imx, atomic);
919 i2c_imx_bus_busy(i2c_imx, 0, atomic);
951 struct i2c_msg *msgs, int num, bool atomic)
961 result = i2c_imx_start(i2c_imx, atomic);
965 * allowed within atomic context.
967 if (!atomic && i2c_imx->adapter.bus_recovery_info) {
969 result = i2c_imx_start(i2c_imx, atomic);
987 result = i2c_imx_bus_busy(i2c_imx, 1, atomic);
1012 result = i2c_imx_read(i2c_imx, &msgs[i], is_lastmsg, atomic);
1014 if (!atomic &&
1019 result = i2c_imx_write(i2c_imx, &msgs[i], atomic);
1027 i2c_imx_stop(i2c_imx, atomic);