Lines Matching refs:status_new
581 static int write_sr_and_check(struct spi_nor *nor, u8 status_new, u8 mask) in write_sr_and_check() argument
586 ret = write_sr(nor, status_new); in write_sr_and_check()
598 return ((ret & mask) != (status_new & mask)) ? -EIO : 0; in write_sr_and_check()
693 int status_old, status_new; in stm_lock() local
746 status_new = (status_old & ~mask & ~SR_TB) | val; in stm_lock()
749 status_new |= SR_SRWD; in stm_lock()
752 status_new |= SR_TB; in stm_lock()
755 if (status_new == status_old) in stm_lock()
759 if ((status_new & mask) < (status_old & mask)) in stm_lock()
762 return write_sr_and_check(nor, status_new, mask); in stm_lock()
773 int status_old, status_new; in stm_unlock() local
828 status_new = (status_old & ~mask & ~SR_TB) | val; in stm_unlock()
832 status_new &= ~SR_SRWD; in stm_unlock()
835 status_new |= SR_TB; in stm_unlock()
838 if (status_new == status_old) in stm_unlock()
842 if ((status_new & mask) > (status_old & mask)) in stm_unlock()
845 return write_sr_and_check(nor, status_new, mask); in stm_unlock()