#define MS(_v, _f) (((_v) & _f##_MASK) >> _f##_LSB)
该宏在
drivers/net/wireless/ath/ath10k/core.h
中定义。 最佳答案
_v
给出对v值(寄存器)求值的表达式,并为f字段命名。宏扩展到一个表达式,该表达式使用名为_f
的掩码按位对值进行运算(&),然后按FIELD_MASK
右移以右对齐该值。
换言之,它解包一个位字段。
关于c - 该宏执行什么操作?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22472407/