COND
const u32 insn = OPC_BCC | BCC_S21(offset) | COND(cc);
const u32 insn = OPC_MOV_CC | OP_B(rd) | OP_C(rs) | COND(cc);
const u32 insn = OPC_MOVU_CC | OP_B(rd) | OP_C(imm) | COND(cc);
#define CONDN COND(0x0)
#define CONDE COND(0x1)
#define CONDLE COND(0x2)
#define CONDL COND(0x3)
#define CONDLEU COND(0x4)
#define CONDCS COND(0x5)
#define CONDNEG COND(0x6)
#define CONDVC COND(0x7)
#define CONDA COND(0x8)
#define CONDNE COND(0x9)
#define CONDG COND(0xa)
#define CONDGE COND(0xb)
#define CONDGU COND(0xc)
#define CONDCC COND(0xd)
#define CONDPOS COND(0xe)
#define CONDVS COND(0xf)
#define CONDN COND(0x0)
#define CONDE COND(0x1)
#define CONDLE COND(0x2)
#define CONDL COND(0x3)
#define CONDLEU COND(0x4)
#define CONDCS COND(0x5)
#define CONDNEG COND(0x6)
#define CONDVC COND(0x7)
#define CONDA COND(0x8)
#define CONDNE COND(0x9)
#define CONDG COND(0xa)
#define CONDGE COND(0xb)
#define CONDGU COND(0xc)
#define CONDCC COND(0xd)
#define CONDPOS COND(0xe)
#define CONDVS COND(0xf)
COND(70, 71, XF(OF)) \
COND(72, 73, XF(CF)) \
COND(74, 75, XF(ZF)) \
COND(78, 79, XF(SF)) \
COND(7a, 7b, XF(PF)) \
COND(76, 77, XF(CF) || XF(ZF)) \
COND(7c, 7d, XF(SF) != XF(OF)) \
COND(7e, 7f, XF(ZF) || XF(SF) != XF(OF))
#define _wait_for(COND, MS, W) ({ \
while (!(COND)) { \
#define wait_for(COND, MS) _wait_for(COND, MS, 1)
#define _wait_for(COND, MS, W) ({ \
while (! (COND)) { \
#define wait_for(COND, MS) _wait_for(COND, MS, 1)
#define _wait_for(COND, MS, W) ({ \
while (! (COND)) { \
#define wait_for(COND, MS) _wait_for(COND, MS, 1)
ret__ = _wait_for((COND), (US), 10, 10); \
ret__ = _wait_for_atomic((COND), (US), 0); \
#define wait_for_atomic_us(COND, US) \
_wait_for_atomic((COND), (US), 1); \
#define wait_for_atomic(COND, MS) wait_for_atomic_us((COND), (MS) * 1000)
#define __wait_for(OP, COND, US, Wmin, Wmax) ({ \
if (COND) { \
#define _wait_for(COND, US, Wmin, Wmax) __wait_for(, (COND), (US), (Wmin), \
#define wait_for(COND, MS) _wait_for((COND), (MS) * 1000, 10, 1000)
#define _wait_for_atomic(COND, US, ATOMIC) \
if (COND) { \
#define wait_for_us(COND, US) \
if (COND) {
ret = _wait_for(COND, timeout_base_ms * 1000, 10, 10);
ret = wait_for_atomic(COND, 50);
if (wait_for(COND, 2000) == -ETIMEDOUT) {
COND(mixer == 1, MDP4_LAYERMIXER_IN_CFG_PIPE0_MIXER1);
COND(mixer == 1, MDP4_LAYERMIXER_IN_CFG_PIPE1_MIXER1);
COND(mixer == 1, MDP4_LAYERMIXER_IN_CFG_PIPE2_MIXER1);
COND(mixer == 1, MDP4_LAYERMIXER_IN_CFG_PIPE3_MIXER1);
COND(mixer == 1, MDP4_LAYERMIXER_IN_CFG_PIPE4_MIXER1);
COND(mixer == 1, MDP4_LAYERMIXER_IN_CFG_PIPE5_MIXER1);
COND(mixer == 1, MDP4_LAYERMIXER_IN_CFG_PIPE6_MIXER1);
COND(format->alpha_enable, MDP4_PIPE_SRC_FORMAT_ALPHA_ENABLE) |
COND(format->flags & MSM_FORMAT_FLAG_UNPACK_TIGHT,
COND(yuv, MDP5_PIPE_SCALE_CONFIG_SCALEX_FILTER_COMP_1_2(uv_filter));
COND(yuv, MDP5_PIPE_SCALE_CONFIG_SCALEY_FILTER_COMP_1_2(uv_filter));
COND(format->alpha_enable, MDP5_PIPE_SRC_FORMAT_ALPHA_ENABLE) |
COND(format->flags & MSM_FORMAT_FLAG_UNPACK_TIGHT,
COND(has_pe, MDP5_PIPE_SRC_OP_MODE_SW_PIX_EXT_OVERRIDE) |
COND(enabled, HDMI_AUD_INT_AUD_FIFO_URUN_INT) |
COND(enabled, HDMI_AUD_INT_AUD_SAM_DROP_INT));
COND(audio->channels != 2, HDMI_AUDIO_PKT_CTRL2_LAYOUT) |
#define __wait_for(OP, COND, US, Wmin, Wmax) ({ \
if (COND) { \
#define _wait_for(COND, US, Wmin, Wmax) __wait_for(, (COND), (US), (Wmin), \
#define wait_for(COND, MS) _wait_for((COND), (MS) * 1000, 10, 1000)
#define __wait_for(OP, COND, US, Wmin, Wmax) ({ \
if (COND) { \
#define _wait_for(COND, US, Wmin, Wmax) __wait_for(, (COND), (US), (Wmin), \
#define wait_for(COND, MS) _wait_for((COND), (MS) * 1000, 10, 1000)
#define net_timestamp_check(COND, SKB) \
if ((COND) && !(SKB)->tstamp) \
bit_name(COND), bit_name(CALL_STACK), bit_name(IND_JUMP),